sed 在换行符上附加文件名

sed 在换行符上附加文件名

我正在尝试将文件名添加到许多 *txt 文件中,这些文件是制表符分隔的(它们最终将使用 cat 连接在一起)我在 Ubuntu 14.04 上使用 bash。

到目前为止我的代码是;

for f in *.txt
do
sed -i 's/$/'"       $f"'/' "$f"
done

这工作正常,只是文件名附加在下面的行上,而不是附加到每一行上。我正在使用 Ctrl-V Tab 在控制台中插入选项卡。

答案1

你可以试试这个:

for f in *.txt
do
  sed -i -e '1,$s/$/'"       $f"'/' "$f"
done

如果您尝试执行我认为您执行的操作:在目录中所有 .txt 文件的每行末尾添加一个 {tab} 字符和文件名

相关内容