Я хочу скопіювати файл у всі папки в папці. Як я можу це зробити за допомогою командного рядка?
Я хочу скопіювати файл у всі папки в папці. Як я можу це зробити за допомогою командного рядка?
Відповіді:
Як помістити файл у поточний робочий каталог у всі підпапки (а може бути і їх підпапки, залежно від того, що ви хочете зробити)
Це помістить файл у всі підпапки, але не у їхні папки:
for d in */; do cp water.txt "$d"; done
Це дозволить розмістити файл water.txt
(змінити всі екземпляри water.txt на ім'я файлу, яке ви хочете скопіювати) у всі підпапки та їх підпапки.
for i in ./* # iterate over all files in current dir
do
if [ -d "$i" ] # if it's a directory
then
cp water.txt "$i" # copy water.txt into it
fi
done
Інформація з цієї теми Linux
Ви можете скористатись одним-вкладишем:
find <target-dir> -type d -exec cp <the file> {} \;
обмежте глибину до 1 -> лише безпосередні каталоги
find <target-dir> -type d -maxdepth 1 -exec cp <the file> {} \;