:~$ 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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)