如何将文件名附加到文件末尾行的同一文件中,而不将文件扩展名和名称一起写入

如何将文件名附加到文件末尾行的同一文件中,而不将文件扩展名和名称一起写入

如何将文件名附加到文件末尾行的同一文件中,而不将文件扩展名和名称一起写入。我有一些只有一行内容的txt文件,我想在同一行的末尾添加文件名,并留有空格,而不写文件名的扩展名。

答案1

使用 GNU sed(假设,鉴于标签),用于-i“就地”编辑:

for file in *.txt
do
  sed -i "1s/\$/ ${file%%.*}/" "$file"
done

与编辑:

for file in *.txt
do
  printf "%s\n" "1s/\$/ ${file%%.*}/" "wq" | ed -s "$file"
done

这些行尾和文件名之间不留空格。

相关内容