文件:
TABLE1
1234
9555
87676
2344
预期输出:
Description of the following table:
TABLE1
1234
9555
87676
2344
答案1
实际上echo
和cat
足以做你想做的事:
echo "Description of the following table:" | cat - file
该-
参数告诉cat
从 读取stdin
。
答案2
和sed
:
$ sed -e '1i\
Description of the following table:
' <file
Description of the following table:
TABLE1
1234
9555
87676
2344
答案3
printf "%s\n" 1 i "Description of the following table:" . w | ed filename
输出命令(每行一个) printf
,ed
然后通过管道传输到ed filename
.
ed
按照指示编辑文件:
1 # go to line 1
i # enter insert mode
Description of the following table: # text to insert
. # end insert mode
w # write file to disk
顺便说一句,ed
执行真正的就地编辑,而不是像sed
大多数其他文本编辑工具那样写入临时文件并移动。编辑后的文件在文件系统中保留相同的 inode。
答案4
awk 选项是:
gawk '
BEGIN{print "Description of the following table:"}
{print $0}' file > temp && mv temp file
这里比 sed 多一点工作,因为 sed 有一个就地编辑选项 -i,您可以通过它直接写入文件。