我有一个名为FolderName的文件夹,包含很多png文件,不一定按顺序排列,例如
01.png, 32.png ...
我想为它们中的每一个创建一个.txt文件,其名称与png文件相同,
01.txt, 32.txt ...
和所有文本文件只包含文件夹的名称。
我不知道如何做到这一点,我花了最后30分钟阅读有关bash脚本的内容。请帮忙。
我到目前为止所做的一切都是
#!/bin/bash
folder=/home/user/folder/
for file in $("$folder")
do
name=$(basename "$file" .txt)
printf '%s\n' "$line" >"$file".txt
done
答案 0 :(得分:0)
您可以使用:
#!/bin/bash
folder="/home/user/folder"
for filePng in $folder/*
do
fileTxt=${filePng/png/txt}
dirname "$filePng" > "$fileTxt"
done
一些解释:
$folder/*
扩展为文件列表,以空格分隔。 for
将遍历该列表。 ${variable/pattern/substition}
是bash字符串替换 [编辑]我假设.txt文件位于$folder
。