可以说我有一个包含以下文件的目录:
1.txt 2.txt 3.txt
我想复制这些文件,并基本上粘贴到同一目录中,制作新文件,例如:
1.txt 1(1).txt 2.txt 2(1).txt 3.txt 3(1).txt
这比我想的要难!在Windows上这似乎微不足道,只需突出显示一堆文件,然后复制/粘贴即可,它会创建相同的文件,但会在名称中添加“复制”。
在普通的Unix风格中,您需要遍历文件:
for file in 1.txt 2.txt 3.txt; do cp -pi "$file" "${file%.*}(1).txt"; done
${file%.*}
从文件名中删除扩展名,然后(1).txt
添加数字并恢复扩展名。cp
提示目标是否已存在的选项(-i
)和保留权限(-p
)。
大多数Linux系统将mmv
提供可用的软件包。可以让您简单地做
mcp '*.txt' '#1(1).txt'
这会将每个结尾的文件复制.txt
到一个新文件中,该文件与第一个通配符(#1
)相匹配并附加(1).txt
。括号在这里不需要转义,因为它们在引号内。
或者,如果您使用图形文件管理器,则可以执行与Windows中完全相同的操作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句