У меня есть настройка, и я хочу найти и переместить файлы.Найти и переместить файлы в соответствующие каталоги с помощью сценария оболочки
У меня есть файлы /home/backup/abc/123.wav
и /home/backup/xyz/456.wav
. Эти же каталоги существуют на /usr/src/abc
и /usr/src/xyz
которые не имеют файлов.
Я хочу найти файлы .wav из home_dir и переместить их в определенный dest_dir.
Таким образом, 123.wav должен перемещаться в/usr/src/abc, а 456.wav должен перемещаться в/usr/src/xyz. Я использую для этого команду ниже.
home_dir=/home/backup/
dest_dir=/usr/src/
cd $home_dir && find . -iname "*.wav" -exec mv {} $dest_dir \;
Но все файлы .wav (123.wav и 456.wav) переехал в/USR/SRC, а не его в соответствующих каталоги (/ USR/SRC/а и/USR/SRC/А).
Можно ли достичь того, чего я хочу? Пожалуйста, предложите.
Я хочу, чтобы переместить files.When я использую находку. -iname "* .wav" -exec cp --parents {} "$ dest_dir" \; .wav файлы копируются как 123 и 456, а не как 123.wav и 456.wav. – rutu
После моей предложенной команды 'cp' вы можете использовать' find. -iname "* .wav" -delete' удалить все файлы из исходного каталога. – anubhava
.wav-файлы генерируются случайным образом, поэтому, если я использую команду delete после команды копирования, есть ли шансы удалить любой файл, который не будет скопирован? – rutu