Вы установили ПУТЬ внутри ~ / .bashrc
, но ~ / .bashrc
используется только полностью. если стартовая оболочка интерактивна.
Обычно есть оператор, эквивалентный:
[ -z "$PS1" ] && return # If not running interactively, don't do anything
Который сделает вашу настройку PATH:
export PATH="${HOME}/usr/bin:${PATH}"
просто неэффективной, если поместить ее после теста для PS1
при использовании внутри запрета. интерактивный сценарий.
Не используйте cp
, вместо этого используйте ] mv
, потому что:
cp
копирует все файлы и увеличивает время и ввод / вывод, но mv
меняет только inode:
Итак :
mv -f dir1/ dir2
cp -R folder1/. folder2/
Вы можете использовать folder1 / *
вместо этого, если вы не возражаете, что *
не будет соответствовать «скрытым» файлам, которые начинаются с .
как .bash_profile
.
Если в папке 2 есть файлы с тем же именем, что и файлы в папке 1, они будут перезаписаны без запроса или предупреждения.
cp -fR folder1/ folder2/
флаг -f заставляет файл назначения быть удаленным, если его невозможно открыть
см. справочную страницу для cp
Кроме того, другим вариантом может быть использование rsync, см. этот ответ, например :