我正在尝试使用 Android 的 shell 编写一个脚本来重命名给定扩展名的所有文件以添加 .bak 扩展名,另一个以删除它。
这适用于将 .bak 扩展名添加到目录中的所有 pdf 文件
ext=.bak
for f in *.pdf
do
mv $f $f$ext
done
但是使用 bash 字符串切片${varname:index:length}
在 android shell 中不起作用,所以我不知道如何删除扩展。有没有人有任何想法?
编辑:澄清一下,我正在尝试找到一种方法来删除 android shell 中字符串的最后四个字符。我还没有考虑过其他可以解决我的特定问题的解决方案也受到欢迎。
更新:根据给定的答案,以下代码将从未修改的 Android shell 中当前目录中具有该扩展名的任何文件中删除文件扩展名(其中 .bak 可以替换为您选择的扩展名)
for f in *.bak
do
mv $f ${f%.*}
done