我正在使用 bash 命令行 for 循环将一组文件连接在一起,并且我想附加一个递增的数字。
像这样的东西:
j=1;for i in *.bak; do echo {$j++: >> files.grp;cat $i >> files.grp; echo }, >> files.grp; done
所以输出会是这样的:
{1:"file1 contents"},{2:"file2 contents"},
答案1
你需要做的是:
j=$(($j+1))
或使用
$((j++))
答案2
# file1.bak
hallo
# some other file.bak
H?llo*
# a!file.bak
new!
line"
用脚本处理:
j=1
for i in *.bak; do
echo "{$((j++)):$(cat "$i")}" >> files.grp
done
在files.grp中写入以下内容:
{1:hallo}
{2:H?llo*}
{3:new!
line"}