我如何重命名具有不同扩展名的文件夹中的前 5 个文件,同时保持旧文件相同?

How could I rename the first 5 files in a folder with a different extension while keeping the old ones the same?

我在一个文件夹中有大约 20 个文件。我想将前 5 个的扩展名从 .txt 重命名为 .html。不过,我想保留前 5 个扩展名为 .txt 的文件。这是我到目前为止所拥有的。这是一个bash脚本

cp 'ls | head -5 "files would go here I think"
files=(*.txt)
for ((i=0; i<5; i++)); do
    cp -v "${files[i]}" "${files[i]%.txt}.html"
done

您应该能够通过管道传输这些命令以获得所需的内容。

ls *.txt | head -5 | sed -e 's/.txt$//' | xargs -n1 -I% cp %.txt %.html