gpt4 book ai didi

linux - 用下划线替换空格并小写 - 文件名

转载 作者:太空狗 更新时间:2023-10-29 11:08:46 24 4
gpt4 key购买 nike

我正在重命名文件和目录。基本上,我想要做的就是去掉空格并用下划线替换它们,最后变成小写。我一次可以执行一个命令: $ rename "s//_/g"* ,然后是小写命令。但我正试图在一条线上完成这一切。下面我能完成的就是去掉空格并替换为 _ 但它不会变成小写。怎么会?

find /temp/ -depth -name "* *" -execdir rename 's/ /_/g; s,,?; ‘

原文件名:

test FILE   .txt

结果:(如果末尾有空格,取出)

test_file.txt

最佳答案

rename 's/ +\././; y/A-Z /a-z_/'

或者,结合find:

find /temp/ -depth -name "* *" -exec rename 's/ +\././; y/A-Z /a-z_/' {} +

要仅针对文件而不是目录,请添加 -type f:

find /temp/ -depth -name "* *" -type f -exec rename 's/ +\././; y/A-Z /a-z_/' {} +

缩短名称

Would it be possible to rename the file with the last three characters of the original file for example from big Dog.txt to dog.txt?

是的。使用此 rename 命令:

rename 's/ +\././; y/A-Z /a-z_/; s/[^.]*([^.]{3})/$1/'

关于linux - 用下划线替换空格并小写 - 文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26207759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com