Я пытаюсь использовать cp
команду и принудительно перезаписать.
Я пытался cp -rf /foo/* /bar
, но мне все равно предлагается подтвердить каждую перезапись.
источник
Я пытаюсь использовать cp
команду и принудительно перезаписать.
Я пытался cp -rf /foo/* /bar
, но мне все равно предлагается подтвердить каждую перезапись.
Вы можете сделать yes | cp -rf xxx yyy
, но мой gutfeeling говорит , что если вы делаете это как корень - ваш .bashrc
или .profile
имеет псевдоним cp
для cp -i
, большинство современных систем ( в первую очередь , RH-производные) , которые делают для корневых профилей.
Вы можете проверить существующие псевдонимы, запустив их alias
в командной строке, или which cp
проверить псевдонимы только для cp
.
Если у вас есть определенный псевдоним, запуск unalias cp
отменит его для текущего сеанса, в противном случае вы можете просто удалить его из своего профиля оболочки.
Вы можете временно обойти псевдоним и использовать не псевдоним версии команды, добавив к ней префикс \
, например:\cp whatever
¯\_(ツ)_/¯
об этом.(primarily RH-derivatives)
замечание :)unalias cp
и скопировав все, что вам нужно скопировать, вы можете сделать псевдоним обратно по умолчанию, выполнивalias cp='cp -i'
. После этого запустите,alias cp
чтобы убедиться, что он вернулся к псевдониму по умолчанию.Вероятно, это вызвано тем,
cp
что у вас уже есть псевдонимcp -i
. Звонокcp
напрямую должен работать:Еще один способ обойти это - использовать
yes
команду:источник
yes
команду. Веселое. И когда-нибудь я могу использовать это.Как некоторые другие ответы заявили, вы , вероятно , использовать псевдоним где - нибудь , которая отображает
cp
наcp -i
или что - то подобное. Вы можете запустить команду без псевдонимов, поставив перед ней обратную косую черту. В вашем случае попробуйтеОбратная косая черта временно отключит любые псевдонимы, которые вы вызвали
cp
.источник
cp
,\cp
будет вызывать командуcp
. Это похоже на бегcommand cp
.Возможно, у вас где-то есть псевдоним, который отображается
cp
наcp -i
; потому что с настройками по умолчанию,cp
не будет просить перезаписать. Проверьте ваш.bashrc
, ваш.profile
и т. Д.См. Cp manpage : Только когда
-i
задан параметр, будетcp
фактически запрашиваться перед перезаписью.Вы можете проверить это с помощью
alias
команды:Чтобы определить псевдоним, используйте:
источник
Как указали другие ответы, это может произойти, если
cp
псевдонимcp -i
.Вы можете добавить команду
\
передcp
командой, чтобы использовать ее без псевдонима.источник
По умолчанию
cp
имеет псевдонимcp -i
. Вы можете проверить это, набрать,alias
и вы можете увидеть некоторые как:Чтобы решить эту проблему, просто используйте
/bin/cp /from /to
команду вместоcp /from /to
источник
Вы также можете использовать эту команду:
cp -ru /zzz/zzz/* /xxx/xxx
это обновит существующий файл новым.
источник
cp
как правило, так псевдонимесли вы уверены, что хотите сделать перезапись, используйте это:
источник
я нашел это
Источник: /superuser/358843/how-to-replace-all-the-contents-from-one-folder-with-another-one/358851
источник
Так что я часто сталкиваюсь с этим, потому что я сохраняю псевдоним cp
cp -iv
, и я нашел хитрый трюк. Оказывается, что и то-i
и-n
другое отменяет предыдущие директивы перезаписи,-f
но не отменяет. Тем не менее, если вы используете-nf
это добавляет возможность очистить-i
. Так:Довольно аккуратно, да? / necropost
источник
тоже работает.
источник
Другой способ вызвать команду без псевдонима - использовать
command
встроенную в bash.command cp -rf /zzz/zzz/*
источник
-n "не перезаписать", но его вопрос полностью противоположен тому, на что вы ответили.
Чтобы избежать этого подтверждения, вы можете просто запустить команду cp с абсолютным путем, это позволит избежать псевдонима.
/ bin / cp исходный файл
источник
Если вы хотите сохранить псевдоним на глобальном уровне, как есть, и просто хотите изменить свой сценарий.
Просто используйте:
псевдоним cp = cp
а затем напишите свои последующие команды.
источник
Я просто использовал unalias для удаления псевдонима "cp -i", затем сделал копию, затем установил псевдоним. :
Не самый красивый код, но простой в установке и эффективный. Я также проверяю, что псевдоним уже установлен с простым
источник
Это не так
cp -i
. Если вы не хотите, чтобы вас попросили подтвердить, это такcp -n
; например:Или в случае каталогов / папок есть:
источник
cp -i
, что означает, что они пытаются преодолеть значение по умолчанию и вызвать перезапись. Это звучит , как вы , возможно, перепутал , что за то , что предлагаемый синтаксис, но-n
будет предотвратить перезапись.