我有多个目录,里面包含单个文件,所有目录中的文件名称相同。我需要通过目录名重命名文件,以便我可以在同一目录中收集它们。
/home/x/Desktop/s0.01-k5/x
/home/x/Desktop/s0.01-k7/x
/home/x/Desktop/s0.01-k10/x
我需要的是将所有x重命名为其目录名。
答案 0 :(得分:0)
进入/ home / x / Desktop。有
for i in */x;do mv -vf "$i" "${i%/x}/${i%/x}";done
此命令可以满足您的需要。如果你想确定什么是hapen,你可以通过为“mv”提供“echo”来测试这个:
for i in */x;do echo mv -vf "$i" "${i%/x}/${i%/x}";done
答案 1 :(得分:0)
试试这个
cd / home / x / Desktop /
for i in $(ls); do mv $i/* $i/$i; done