我已经进行了大量的谷歌搜索,并且找到了一些相当复杂的解决方案。我觉得好像一定有更简单的事情。
假设我有
./1.txt
./2.txt
./more/3.txt
./more/4.txt
./more/even-more/5.txt
我想将任何 .txt 重命名为 .info
所以
find . -type f -name "*.txt"
……然后呢?
编辑:纯bash将是首选
答案1
find . -type f -name \*.txt -print0 | while read -r -d '' i; do mv -v "$i" "${i%.txt}.info"; done