我需要重命名大约。70,000 个文件。例如:从sb_606_HBO_DPM_0089000到sb_606_dpm_0089000等。
数字范围从0089000到0163022。这只是名称的第一部分需要更改。所有文件都在一个目录中,并按顺序编号(图像序列)。数字必须保持不变。
当我在 bash 中尝试此操作时,它对我说“参数列表太长”感到恼火。
编辑:
我首先尝试使用以下命令重命名单个文件mv:
mv sb_606_HBO_DPM_0089000.dpx sb_606_dpm_0089000.dpx
Run Code Online (Sandbox Code Playgroud)
然后我尝试重命名一个范围(我上周在这里学到了如何移动大量文件,所以我认为相同的语法可能适用于重命名文件......)。我想我尝试了以下(或类似的):
mv sb_606_HBO_DPM_0{089000..163023}.dpx sb_606_dpm_0{089000..163023}.dpx
Run Code Online (Sandbox Code Playgroud) 在许多情况下,我使用命令替换而不是xargs. 例如rm $(ls)与ls | xargs rm
它们之间的真正区别是什么?
我认为差异之一是命令替换在子shell中xargs运行,而在当前shell中运行,但我不确定。
请列出差异。
如何在查找文件的同时查看文件的大小?错误:我试过这个命令,但我只得到了其他文件的大小和详细信息。
find -name "*.conf" | ls -l
Run Code Online (Sandbox Code Playgroud) txt我正在寻找一种简单的方法来在给定目录内的文件名文件中构建列表。仅首选文件名,但如有必要,我可以修剪其他字段。