如何使用 mv 命令从同一目录中的多个文件中删除不需要的字符

如何使用 mv 命令从同一目录中的多个文件中删除不需要的字符

我在目录中有一些文件:

agent_datad.bin
_codecs_cn.cpython-34m.so
_Crypto.Cipher._ARC4.so
Crypto.Hash._RIPEMD160.so
...
other files

如何_从以此字符开头的每个文件开头删除 ?我只想要首先 _删除,因为有些文件在其他位置可能有下划线。一行命令就很棒了。

需要提一下,我使用 CentOS 7,虽然使用mv不是强制性的,但这就是我的想法。

答案1

尝试一下这个单行命令(echo 显示该命令将执行的操作):

for name in *; do echo mv ${name} ${name##_} ; done

${name##_}返回变量开头不带 _ 的 $name 变量

当您满意时,echo从命令中删除。

祝你好运!

相关内容