批量重命名shell脚本
时间: 2023-06-28 16:14:06 浏览: 100
可以使用以下命令来批量重命名文件:
```
$ for file in *.txt; do mv "$file" "${file%.txt}_new.txt"; done
```
该命令将所有以 `.txt` 结尾的文件重命名为 `{原文件名}_new.txt`。如果你想要修改文件的扩展名,只需将 `.txt` 替换为要使用的扩展名即可。
相关问题
linux重命名文件shell脚本
在Linux中,你可以使用shell脚本来批量重命名文件。这里有一个基本的bash脚本示例,它会将当前目录下的所有.txt文件按数字递增的方式重命名:
```bash
#!/bin/bash
# 获取当前目录中的所有.txt文件
files="./*.txt"
for file in $files; do
# 从文件名中提取原始名称和扩展名
old_name=$(basename "$file" .txt)
# 如果是第一个文件,直接保留原名
if [ ! -e "$old_name.new.txt" ]; then
mv "$file" "$old_name.new.txt"
else
# 对于后续文件,添加递增值
counter=1
while [ -e "$old_name.$counter.new.txt" ]; do
((counter++))
done
mv "$file" "$old_name.$counter.new.txt"
fi
done
#
shell 脚本 重命名批量文件
可以使用以下的 shell 脚本来批量重命名文件:
```shell
#!/bin/bash
# 设置原始文件名的前缀和新文件名的前缀
original_prefix="原始文件名前缀"
new_prefix="新文件名前缀"
# 获取当前目录下所有需要重命名的文件
files=$(ls ${original_prefix}* 2>/dev/null)
# 遍历每个文件并重命名
for file in $files; do
# 提取文件名(不包含路径)
filename=$(basename "$file")
# 构建新的文件名
new_filename="${new_prefix}${filename#"$original_prefix"}"
# 执行重命名操作
mv "$file" "$new_filename"
done
```
你可以将脚本保存为一个 `.sh` 后缀的文件(例如 `rename_files.sh`),然后在终端中运行它。请确保在运行脚本之前,你已经进入到了需要重命名文件的目录下。
记得将 `原始文件名前缀` 替换为你要重命名的文件的共同前缀,将 `新文件名前缀` 替换为你想要的新文件名的前缀。执行脚本后,所有以 `原始文件名前缀` 开头的文件都会被重命名为以 `新文件名前缀` 开头的文件。
阅读全文