这是对此问题的相关但单独的询问的延续:Linux:在循环中重命名文件,同时仅针对特定字符的第一个实例
这段代码非常适合我替换文件名中的第一个句点,例如:2022-10-07T071101.8495077Z_QueryHistory.txt
for f in *; do mv -v -- "$f" "${f/./_}"; done # replace the first .
但是,我需要在目录上定期运行此命令,并且我不想最终替换文件扩展名.txt
.
我怎样才能运行这个命令: ,这样它只有在文件名中for f in *; do mv -v -- "$f" "${f/./_}"; done
找到两个时才运行。.