як перейменувати всі файли в папці з конкретним ім'ям розширення (рекурсивний підхід)


1

ми хочемо перейменувати всі файли в / home / DB_home (рекурсивна)

тому кожен файл у DB_home буде перейменований з розширенням .txt

приклад

перед зміною

/home/DB_home/hg/ir/qemu-ga
/home/DB_home/td/glusterfs
/home/DB_home/yr/ew/sd/cv/ntpstats
/home/DB_home/yr/ew/sd/cv/proc.csv
/home/DB_home/td/GF.conf
/home/DB_home/td/tool.bin

приклад (після перейменування)

/home/DB_home/hg/ir/qemu-ga.txt
/home/DB_home/td/glusterfs.txt
/home/DB_home/yr/ew/sd/cv/ntpstats.txt
/home/DB_home/yr/ew/sd/cv/proc.csv.txt
/home/DB_home/td/GF.conf.txt
/home/DB_home/td/tool.bin.txt
.
.
.

як це зробити з find і mv?

Відповіді:



1
find . type f -exec mv {} {}.txt \;

... тому що нічого не говорить про те, що ви можете використовувати {}лише один раз в команді, принаймні, доки ви не використовуєте the, ;а не the +.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.