2
A
回答
3
rename 's/^(.{8}).*/$1/' *
会截断文件为8个字符或更少。如果截断导致两个或多个文件映射到相同的名称,rename
默认情况下会发出警告并拒绝覆盖名称冲突中涉及的所有文件之外的所有文件。
如果使用
rename --force 's/^(.{8}).*/$1/' *
然后rename
将覆盖该文件。
0
IFS=$'\n'
files=`ls -1 $1`
for x in $files
do
filename="$x"
if [ $filename = `basename $0` ] # do not include this script file
then
echo "skipping script file"
continue
fi
suffix=${filename: -4}
name=${filename:0:8}
echo "renaming $x to $name$suffix"
mv $1/"$x" $1/$name$suffix
done
用法:脚本目录名
注意事项:
将覆盖重复,文件名少于8个字符将结束与部分双后缀即ab.dat将结束是ab.dat.dat
相关问题
- 1. 重命名的Linux
- 2. 重命名在Linux
- 3. Linux批量重命名文件
- 4. 执行质量文件重命名的Lightroom数据库
- 5. 邻重命名文件的质量,以XXXX
- 6. Linux重命名命令模式
- 7. 使用util-linux重命名命令
- 8. 批量重命名
- 9. 群众文件重命名(Linux)的
- 10. 的Linux击重命名文件
- 11. 如何重命名Linux上的进程?
- 12. 在Linux上修改时间戳文件的批量重命名
- 13. 重命名的NSString常量
- 14. Linux的批量重命名的目录和带#字符的名称
- 15. 根据模式在Linux中重命名大量文件
- 16. 重命名多个文件 - linux/ubuntu
- 17. Linux重命名错误恢复
- 18. 盲目重命名文件 - linux
- 19. 在LDAP(linux)中重命名“cn”
- 20. Linux重命名正则表达式
- 21. 批量重命名文件以包含linux中的文件夹/目录名称
- 22. 排名集群的质量
- 23. 排名的JPEG质量
- 24. C#ValueTuple性质命名
- 25. 大量重命名列postgresql
- 26. 重命名多个变量
- 27. 重命名变量继承
- 28. TypeScript重命名变量
- 29. 批量重命名文件
- 30. 批量重命名文件
对不起,但我的重命名实用程序没有选项--force $ rename --version 从util-linux重命名2.27 – int13h
根据此[util-linux rename man page](http://man7.org/linux/man -pages/man1/rename.1.html),“重命名没有保护措施。”所以它与util-linux一起出现,我为'--force'描述的行为是util-linux的'rename'的默认行为。 – unutbu