& Ldquo; мв & Rdquo; против & ldquo; cp & rdquo; в сценарии bash [закрыто]

Несмотря на то, что на этот ответ был дан ответ, похоже, решение также может быть несколько излишним с точки зрения рассрочки для Bash на данный момент времени. Не знаю, могу ли я использовать Powerline в предыдущих репозиториях, но он доступен в текущих репозиториях. Это говорит о том, что теперь Bash сейчас гораздо менее абстрагирован.

Установите Powerline с помощью этой команды;

sudo apt install powerline

Для каждой конфигурации пользователя отредактируйте свою [!]

gedit ~/.bashrc

И добавьте это в документ;

if [ -f `which powerline-daemon` ]; then
  powerline-daemon -q
  POWERLINE_BASH_CONTINUATION=1
  POWERLINE_BASH_SELECT=1
  . /usr/share/powerline/bindings/bash/powerline.sh
fi

Для конфигурации системы отредактируйте [ f6] как root с выбранным текстовым редактором.

sudo su, а затем gedit /bash.bashrc

и добавьте это в документ;

if [ -f `which powerline-daemon` ]; then
  powerline-daemon -q
  POWERLINE_BASH_CONTINUATION=1
  POWERLINE_BASH_SELECT=1
  . /usr/share/powerline/bindings/bash/powerline.sh
fi
1
задан 14 October 2014 в 05:07

1 ответ

Это зависит. В определенных (как правило, редких) ситуациях вы должны спрятать файл во временное имя в целевой файловой системе, а затем mv до его окончательного имени, поскольку операция mv является атомарной в журналируемой файловой системе. Если есть вероятность, что приложение попытается прочитать этот файл во время его замены, сделайте это.

Вы указали, что вы передаете файл из другой файловой системы (флеш-накопитель). В этом случае mv выполняет неявный cp & amp; & amp; гт. Если вы вернетесь на 20+ лет, mv даже не поддержал это, но нет причин зависеть от истории.

1
ответ дан 24 May 2018 в 02:55
  • 1
    Таким образом, в основном mv сохраняет шаг? – Keith 13 October 2014 в 18:59
  • 2
    Я думаю, вы имеете в виду «атомный», а не «автономный». – l0b0 13 October 2014 в 20:54

Другие вопросы по тегам:

Похожие вопросы: