我需要进行一些测试,并且需要与/ home / testing文件夹中目录/ home / recordings中相同的文件名。
例如,如果我在/ home / recordings中有一个文件recording01.mp4,我想要一个空文件recording01.txt或recording01.mp4或在/ home / testing
我知道我可以使用以下命令吗?
for i in /home/recordings/*; do touch "$i"; done
在这种情况下,不确定如何指定扩展名或目标目录?
答案 0 :(得分:3)
只需在触摸命令中添加/home/testing/
即可。
for i in /home/recordings/*; do
temp=`echo $i|cut -f3 -d'/'`
cd /home/testing/
touch "$temp";
cd ../..
done
我假设您不在home
目录中,并且从其他任何位置运行此脚本文件。
答案 1 :(得分:2)
试试这个:
for i in /home/recordings/*; do touch "/home/testing/$i"; done
您只需要指定绝对路径,事情就可以正常工作。创建了一堆0长度的文件,它们的名称与/home/recordings
中的名称相对应。
答案 2 :(得分:2)
您也可以在没有循环的情况下执行此操作
find /home/recordings/ -type f -printf /home/testing/%f'\n' | xargs -n1 touch