嗨,这是一个简单的问题,但目前我的解决方案已经解决了。
我可以找到我要更改名称的文件夹名称,我知道更改文件夹名称的命令是mv
所以从当前目录开始,如果我去
ls ~/relevant.directory.containing.directory.name.i.want.to.change
我得到目录的名称叫做lorem-ipsum-v1-3
但目录名称将来可能会更改,但它是目录中唯一的目录: 〜/ relevant.directory.containing.directory.name.i.want.to.change
如何以编程方式将其更改为特定名称,例如correct-files
我可以通过执行类似
的操作来正常完成 mv lorem-ipsum-v1-3 correct-files
但我想开始自动化,这样我就不需要继续复制和粘贴目录名....
任何帮助将不胜感激......
答案 0 :(得分:3)
类似的东西:
find . -depth -maxdepth 1 -type d | head -n 1 | xargs -I '{}' mv '{}' correct-files
只要只移动一个目录,就可以正常工作。
答案 1 :(得分:2)
如果您完全确定relevant.directory.containing.directory.name.i.want.to.change
只包含您要重命名的目录,那么您只需使用通配符:
mv ~/relevant.directory.containing.directory.name.i.want.to.change/*/ ~/relevant.directory.containing.directory.name.i.want.to.change/correct-files
使用bash大括号扩展还可以进一步简化为:
mv ~/relevant.directory.containing.directory.name.i.want.to.change/{*/,correct-files}
答案 2 :(得分:1)
cd ~/relevant.directory.containing.directory.name.i.want.to.change
find . -type d -print | while read a ;
do
mv $a correct-files ;
done
注意事项: