添加具有指定文件扩展名的文件,其中 basename 存在于目录中

add files with specified file extension where basename exits in directory

如果我有这样的目录:

dir/
 file1.txt
 file2.txt

我想创建 file1.jpgfile2.jpg,其中两个新的 jpg 都是空白的

然后我会得到

dir/
 file1.txt
 file2.txt
 file1.jpg
 file2.jpg

我知道我可以使用

简单地更改现有文件的扩展名
for f in *.txt; do
cp "$f" "$(basename "$f" .txt).jpg"
done

但生成的 jpg 将包含原始 .txt 的内容,但我需要它们为空。有什么想法吗?

如前所述,您可以使用触摸来完成此操作:

for f in *.txt; do
    touch "${f/.txt/.jpg}"
done