Во всех отношениях, CentOS является Redhat. CentOS, однако более гибко в том, что они могут сделать.
CentOS разрабатывается малочисленной, но растущей командой базовых разработчиков. В свою очередь базовые разработчики поддерживаются сообществом активного пользователя включая системных администраторов, администраторов сети, корпоративных пользователей, менеджеров, базовых участников Linux и энтузиастов Linux со всего мира.
CentOS имеет многочисленные преимущества перед некоторыми из других проектов клона включая: активное и растущее пользовательское сообщество, быстро восстановленные, протестированные, и пакеты опечаток QA'ed, обширная зеркальная сеть, разработчики, которые являются contactable и быстро реагирующими, несколько проспектов бесплатной поддержки включая Чат IRC, Списки рассылки, Форумы, динамический FAQ.
Короче говоря CentOS является общественной версией Redhat. Вы используете Ubuntu, таким образом, можно понять эту аналогию немного лучше: CentOS к Redhat, как Linux Mint к Ubuntu.
Как насчет:
find . -type d -exec cp file {} \;
От man find
:
-type c
File is of type c:
d directory
-exec command ;
Execute command; All following arguments to find are taken
to be arguments to the command until an argument consisting
of `;' is encountered. The string `{}' is replaced by the
current file
Так, команда выше будет находить все каталоги и работать cp file DIR_NAME/
на каждом из них.
Если Вы просто хотите создать пустой файл, можно использовать touch
и шарик оболочки. В zsh:
touch **/*(/e:REPLY+=/file:)
В ударе:
shopt -s globstar
for d in **/*/; do touch -- "$d/file"; done
Портативно, можно использовать find
:
find . -type d -exec sh -c 'for d; do touch "$d/file"; done' _ {} +
Некоторые find
реализации, но не все, позволяют Вам записать find . -type d -exec touch {}/file \;
Если Вы хотите скопировать некоторое ссылочное содержание, то необходимо будет звонить find
в цикле. В zsh:
for d in **/*(/); do cp -p reference_file "$d/file"; done
В ударе:
shopt -s globstar
for d in **/*/; do cp -p reference_file "$d/file"; done
Портативно:
find . -type d -exec sh -c 'for d; do cp -p reference_file "$d/file"; done' _ {} +
Чтобы просто создать файл, можно использовать коснитесь
с помощью найдите
:
$ find . -type d -exec touch {}/file \;
Если вы хотите коснуться
файлов с именем $ name в текущем каталоге и во всех подкаталогах, это будет работать:
find . -type d -exec touch {}/"${name}" \;
Обратите внимание, что комментарий ЧакаКоттрилла к ответу Тердона НЕ работает, так как он коснется только
файла с именем $ name в текущем каталоге и самого каталога.
Он не будет создавать файлы в подкаталогах по запросу OP, в отличие от этой версии.
find . -type d -exec touch {}/file\;
– Ned64 08.09.2015, 15:24