Я должен записать сценарий, который войдет в список каталогов и затем переместит файлы типов файлов кретина в другой каталог.
С ревом кода я могу выполнить итерации по всем папкам в каталоге и распечатать их имена. Я полагаю, что мне будет нужно к CD в и из этих папок.
for d in */
do
echo "$d"
done
Рев кода выполнит итерации по каждому .png файлу и переместит его в желаемый каталог.
for file in *.png
do
mv "$file" /desired/directory
done
теперь по некоторым причинам, когда я поместил второй блок кода в первое, я получаю этот вывод:
mv: cannot stat ‘*.png’: No such file or directory
Как я заставляю это пересекать и перемещать каждый файл? Я хотел бы поместить этот сценарий в корне/search/directory/
for d in */
do
mv - n *.png /desired/directory/
done
будет проблема с файлами с тем же именем, как первой будет запись, и следующее не будет как тег-n устанавливаться иначе, второе перезаписало бы первое и потерю первого файла. Это не скопирует файлов в sub подкаталоге
Царапина, которые используют
find /search/directory/ -inane "*.png" -exce mv -n {} /desired/directory/ \;
, Но будут иметь ту же проблему с теми же файлами имени
, Если Вы захотите duplactes, названный файлом, например, Pic.png 1Pic.png 2Pic.png ect
dup=1
find /search/directory/ -inane "*.png" -exce mv -n {} /desired/directory/ \;
while(find /search/directory/ -inane "*.png" | wc -l !=0)
find /search/directory/ -inane "*.png" -exce mv -n {} /desired/directory/$dup$(basename {}) \;
dup++
done
, то Этот цикл не вспыхнет, если/desired/directory будет в/search/directory. Я сделал это первое, что пришло на ум единственная часть, по поводу которой я волнуюсь, в то время как условию, возможно, понадобилась бы находка | туалет в скобках, возможно, с $ впереди, Это могло быть далее улучшено проверкой ошибок и иметь .png/search/directory/desired/directory как аргументы
Это должно сделать:
#!/bin/bash
for dir in /full/path/to/recup_Dir.{1..976}; do
mv "$dir"/*.png /full/path/to/desired/directory/
done
Здесь мы - цикличное выполнение через исходные каталоги и затем копирование весь эти .png
файлы от тех каталогов до желаемого каталога. Поскольку мы используем полные пути здесь, можно выполнить этот сценарий от любого местоположения.