我有以下的设置,我想要查找并移动文件。
我有文件
我想要从 home_dir 查找 .wav 文件,并将它们移动到特定的 dest_dir。
因此,123.wav 应该移动到 /usr/src/abc,而 456.wav 应该移动到 /usr/src/xyz。 我正在使用下面的命令进行操作。
我有文件
/home/backup/abc/123.wav
和 /home/backup/xyz/456.wav
。相同的目录在 /usr/src/abc
和 /usr/src/xyz
中存在,但它们没有任何文件。我想要从 home_dir 查找 .wav 文件,并将它们移动到特定的 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/abc和/usr/src/xyz)。
我想实现我的目标是可能的吗? 请给出建议。
cp
命令之后,您可以使用find . -iname "*.wav" -delete
从源目录中删除所有文件。 - anubhavafind
命令中同时执行这两个操作:find . -iname "*.wav" -exec cp --parents {} "$dest_dir" \; -delete
。 - anubhava