如何删除目录名称中的第一个字母?例如:文件夹名为“AFolder_01”,如何将其重命名为“Folder_01”
我的问题的原因是我有文件夹列表,我想通过删除第一个字母来立即重命名所有这些文件夹。我在网上找到了这段代码来删除最后一个字符:
while IFS= read -r dir; do [[ -d $dir ]] && mv -i "$dir" "${dir%?}"; done <all.txt
- 如何修改此代码以删除第一个字母?即在我的示例中将“AFolder_01”重命名为“Folder_01”
- 如何修改此代码以将租船人添加回文件夹名称的开头:即在我的示例中将“Folder_01”重命名为“AFolder_01”
答案1
将目录名称放入变量(例如dir
)后,您可以:
mv "$dir" "${dir:1}"
这将从变量中去除第一个字符。我将把对新目录是否尚不存在的健全性检查留给您。
要在开头添加一些内容(例如字母A
):
mv "$dir" "A$dir"