Linux输出内容到指定文件

1. 记录终端输出至文本文件

1.1 解决方案1:利用>>>命令

  1. 区别:

> 是把输出转向到指定的文件。注意:如文件已存在的话会重新写入,文件原内容不会保留。
>> 是把输出附加到文件的后面,文件原内容会保留下来。

  1. 例子:
ls>ls.txt    #或者ls-->ls.txt,把ls命令的运行结果保存到文件ls.txt中
ls>>ls.txt   #把ls命令的运行结果附加到文件ls.txt中

1.2 解决方案2:使用tee命令

  1. 命令作用:
    在输出信息的同时把信息记录到文件中。
  2. 例子:
ls | tee ls.txt   # 将会在终端上显示ls命令的执行结果,并把执行结果输出到ls.txt 文件中
ls | tee -a ls.txt # 把ls命令的执行结果添加到ls.txt文件的后面。
 # 参数说明: -a, --append,“append to the given FILEs, do not overwrite“,附加至给出的文件

1.3 解决方案3:使用script 命令

  1. 命令作用:
    将终端上所有内容记录到文件中
  2. 例子:
script -a /home/sky1/sc.txt	# 将接下来的内容全部记录到/home/sky1/sc.txt中
# 操作1
# 输出1
# 操作2
# 输出2
# 操作3
# 输出3
# ... ...
exit # 退出记录

在这里插入图片描述

2. 练习

练习内容:截取大文件中指定连续行的内容至小文件
问题:已知存在某大文件big.txt,其中有一行有内容“start point”,有一行有内容“end point”,请以“start point”所在行为起始行,“end point”所在行为终止行,请截取两行间(含起止行)的内容至小文件little.txt。
解决思路:

  1. 利用cat -n|grep命令定位起止行号
  2. 利用sed命令进行截取(注意加引号和p)并利用>>>命令进行写入文件

实验步骤截图:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38662733/article/details/131942619