2019-11-15 Linux下在文件内部指定行(首行、末尾行等)插入内容

2019-11-15 Linux下在文件内部指定行(首行、末尾行等)插入内容,第1张

1、在文件的首行插入指定内容

:~$ sed -i "1i#! /bin/sh -" a

执行后,在a文件的第一行插入#! /bin/sh -

2、在文件的指定行(n)插入指定内容:

:~$ sed -i "niecho "haha"" a

执行后,在a文件的第n行插入echo "haha"

3、在文件的末尾行插入指定内容:

用第二种方法也可以。一般实现:

:~$ echo “haha” >>a

执行后,在a文件的末尾行插入haha

在Linux系统中,路径的格式和Windows系统有所不同。Linux系统的路径中使用的是正斜杠“/”作为目录分隔符,而不是反斜杠“\”。因此,在使用FileOutputStream写入Linux路径时,需要注意以下几点:

Linux路径中的空格需要用反斜杠“\”进行转义,例如:/home/user/my\ folder/file.txt。

如果路径中包含中文或其他非ASCII字符,需要使用UTF-8编码格式,例如:/home/user/文档/file.txt。

在Java程序中,使用FileOutputStream时需要使用File对象来表示文件路径,可以通过如下方式来创建File对象:

java

Copy code

File file = new File("/home/user/myfile.txt")

因此,如果要将数据写入Linux路径中的文件,可以通过如下方式来创建FileOutputStream对象:

java

Copy code

File file = new File("/home/user/myfile.txt")

FileOutputStream fos = new FileOutputStream(file)

需要注意的是,在使用FileOutputStream写入文件时,如果文件不存在,会自动创建该文件;如果文件已存在,会覆盖原有的文件内容。如果需要在文件末尾添加新的数据,可以使用FileOutputStream的另一个构造方法(带有第二个参数,表示是否在文件末尾添加数据),例如:

java

Copy code

File file = new File("/home/user/myfile.txt")

FileOutputStream fos = new FileOutputStream(file, true)// 在文件末尾添加数据

在Linux,有几种方法可以用来向文件的末尾追加内容。

方法一、双大于号>>

结合cat把一个文件的内容追加到另外一个文件的末尾:

cat 1.txt >>2.txt

结合echo向文件的末尾追加内容:

echo "hello" >>2.txt

注意:双大于号">>"表示内容追加,但大于号">"则是覆盖目标文件的内容。

方法二、使用命令tee -a

tee -a 会输出内容到标准输出的同时,追加到文件file中。如果文件不存在,则创建;如果已经存在,就在末尾追加内容,而不是覆盖。《Linux就该这么学》一起学习

如果少了-a,则是覆盖。

结合cat把一个文件的内容追加到另外一个文件的末尾:

cat 1.txt | tee -a 2.txt

结合echo向文件的末尾追加内容:

echo "hello" | tee -a 2.txt


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11927597.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存