[英]How do I append a line to the beginning of a very large file in Linux?
我有一個大約45 GB的大文本文件,需要在文件的開頭和結尾添加一行。 實現這一目標的最快方法是什么? 我無法訪問任何大數據框架,如Hadoop等。
另外,如果我還要在這個大文件中做一個字符串替換,是否有類似的有效方法?
我嘗試使用echo命令,它確實需要很長時間。
您可以使用此sed
在開頭添加一行:
sed -i '1s/^/your heading line\n/' file
到最后:
echo "my new line" >> file
$ cat a
hello
bye
$ sed -i '1s/^/new line sample\n/' a
$ cat a
new line sample
hello
bye
$ echo "my new line" >> a
$ cat a
new line sample
hello
bye
my new line
使用sed
,你可以說:
sed -e '1ifoo' -e '$abar'
這會在文件頂部插入foo
,在文件末尾插入bar
。
$ seq 5 | sed -e '1ifoo' -e '$abar'
foo
1
2
3
4
5
bar
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.