Введение
Команда cp (что означает « копия ») — одна из команд, обычно используемых в Linux и других UNIX-подобных операционных системах для копирования файлов и каталогов. В этом руководстве мы покажем, как заставить команду cp перезаписывать операцию копирования без подтверждения в Linux.
Как использовать команду cp
Обычно, когда вы запускаете команду cp, она перезаписывает целевые файлы или каталог, как показано ниже:
cp bin/git_pull_frontend.sh test/git_pull_frontend.sh
Чтобы запустить cp в интерактивном режиме и получать запрос перед перезаписью существующего файла или каталога, используйте флаг -i
, как показано ниже:
cp -i bin/git_pull_frontend.sh project1/git_pull_frontend.sh
По умолчанию современные дистрибутивы Linux, особенно из семейства Red Hat Enterprise Linux (RHEL), поставляются с псевдонимом для команды cp, который заставляет пользователя выполнять команду cp в интерактивном режиме. Это может быть не так с производными Debian и Ubuntu.
Чтобы проверить все ваши псевдонимы по умолчанию, запустите команду alias, как показано ниже:
alias
Вы должны увидеть выходное сообщение, подобное следующему:
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
alias cp='cp -i'
Флаг -i
означает, что когда вы запускаете команду, она по умолчанию будет работать в интерактивном режиме. Даже когда вы используете команду yes
, оболочка все равно попросит вас подтвердить перезапись:
yes | cp -r bin test
Лучший способ принудительной перезаписи — использовать обратную косую черту \
перед командой cp, как показано в примере ниже. Здесь мы копируем содержимое каталога bin
в test
каталог:
\cp -r bin test
Кроме того, вы можете удалить псевдоним cp для текущего сеанса, а затем запустить команду cp в тихом режиме:
unalias cp
cp -r bin test
Для получения дополнительной информации см. справочную страницу команды cp:
man cp
Вывод
В этом руководстве мы увидели, как принудительно перезаписать команду cp без подтверждения в Linux.