我有一个文件夹topdir
,其中包含子文件夹,例如%foo
或。%bar
foobar
应删除第一个字符处的任何 % 符号,以便%foo
将其重命名为foo
.不需要递归重命名,只topdir
需要重命名里面的文件夹。
如何才能实现这一目标?
答案1
转到目录,依次重命名每个目录,但前提是目标尚不存在
cd topdir &&
for src in %*
do
dst="${src#%}"
[ -d "$src" ] && [ ! -e "$dst" ] && mv -- "$src" "$dst"
done