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

标签 linux bash file cp

如果我有这样一个目录:

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

关于linux - 添加具有指定文件扩展名的文件,其中 basename 存在于目录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51440957/

相关文章:

C/海湾合作委员会 : global variables shared between threads need to be volatile?

linux - 分发静态链接的 ELF 32 位二进制文​​件 - 它会在所有平台上运行吗?

java - 如何将 javax.comm API 导入 Netbeans IDE?

linux - 如何打印包含 ANSI 转义文本的文件

android - Bash:查找并替换脚本中的文本

linux - 存储脚本输出时删除 ANSI 代码

bash - 检测 bash 中是否存在 Bash 补全

java - 搜索文本文件

Java - 在持久性媒体中存储整数的快速方法

C++:从文件中读取并显示单个项目