如何在终端中打开文本文件?

有一个名为RESULTS.txt的文件,我想在终端中打开这个文件。 (我的意思是我想看到文件内容显示在终端而不是某些文本编辑器中)

我怎么做 ?

对于短文件:

 cat  

直接在终端显示文本文件。

对于较长的文件:

 less  

让你在文件中滚动和搜索( / text to search Enter ); 按q退出。

例如

 cat /home/john/RESULTS.txt less /home/john/RESULTS.txt 

另一种选择是vim

 vim RESULTS.txt 

用vim打开文件后,可以输入i来插入文本。 如果要保存文件,请使用:w (写入)或:q (退出)或:wq (用于写入和退出)或:q! (退出并且不保存)。 有时你需要按ESC键才能输入命令。

Vim需要一些学习,但是被广泛使用并且它非常通用。

查看社区帮助wiki: https : //help.ubuntu.com/community/VimHowto

Vim是一个高级文本编辑器,它为事实上的Unix编辑器’Vi’提供了更完整的function集。 Vim通常被称为“程序员编辑器”,对编程非常有用,许多人认为它是一个完整的IDE。 不过,它不仅适用于程序员。 Vim非常适合各种文本编辑,从编写电子邮件到编辑配置文件。

所有这些都是最好的方式,而且还有一种方法可以做到这一点,这就是head命令。

 head -n -1 filename.txt 

 head -n -0 filename.txt 

两者都会给你相同的输入。

头命令说明:

通常head命令用于打印任何文本文件的起始行。我们可以使用查看文本文件

 head filename.txt 

这将打印上述文本文件的前10行。

如果要特定于要查看的行数,则可以使用head as

 head -n 20 filename.txt 

然后在上面的文本文件中将查看前20行。

如果你想用头部方式查看整个文件数据,那么我们可以得到它

 head -n -0 filename.txt 

希望上面的解释会让你对头部的使用有所了解。

如果文件很长,您可能想要使用

 less RESULTS.txt 

这样您就可以使用方向键来浏览它。

另一种选择是:

 tail -n 30 result.txt 

打印result.txtresult.txt的大文件的最后30行。

另外一个选项:

 tail -f your_file 

它将显示your_file的最后十行。 如果进程在此文件中附加了某些内容,则会在终端上看到它。 man tail给你更多的tail

在日志文件上使用此命令时,查看服务器发生的情况很有用。

完成查看后,按CtrlC退出。

这样做有很多选择:

其中一些程序有很多参数,所以在命令后用–help检查出来。

  • cat filename一次打印整个文件
  • more / less filename类似行为,以查看部分文件
  • tail filename从文件的尾部开始读取
  • 用于过滤结果的grep text filename

希望其中一些对您有用..

使用终端文本编辑器: nano /path/to/file/RESULTS.txt

这里提供了很多好的选项,但是如果你需要编辑的另一个选项是emacs:

 emacs -nw RESULTS.txt 

可能不需要-nw ,具体取决于。 您可能还必须apt-get install emacs23apt-get install emacs24 ,或者如果您没有X或不想要相关的X依赖项,则apt-get install emacs23-noxapt-get install emacs24-nox

除了cat和其他地方提到的less ,还有more 。 更多更少,因为您一次看到一个页面并且无法通过命令本身滚动,但如果您有一个滚动终端窗口,您可以使用终端窗口滚动:

 more RESULTS.txt 

如果你正在使用bash,那么你可以通过以下方式获得与cat类似的东西:

 while IFS= read a;do echo "$a";done 

如果您只想读取文件内容,请进入文件目录并键入

 less RESULTS.txt 

如果要读取和编辑文本文件,请使用相同的目录类型

 nano RESULTS.txt 

nano命令中的-w开关可以在文件名之前插入,以防止包裹长行。

如果你需要编辑文件的内容,我通常使用nano。

 nano filename 

要不就

vi YourFile

使用hjkl按钮向左/向下/向上/向右移动,Esc然后:q退出

你可以PageUp / PageDown

你也可以在这里以严格的方式编辑它

在这里你会找到更多的链接

shell programm sed还有一个打印出文件内容的选项。

 sed -np RESULTS.txt 

所以sed遍历每一行并将其打印到终端。 但是sed也有编辑function。 例如,如果您想用点替换每个逗号,您可以编写:

 sed 's/,/./g' RESULTS.txt 

由于我们似乎列出了在终端中显示任何文本文件的所有可用替代方案,因此将pv作为技术上一种有效(但不常见)的方法引入将非常有趣,尽管我通常会使用cat来代替大多数事情。

它位于存储库中,因此如果您还没有安装,可以使用sudo apt-get install pv进行安装。

正如手册页所述 , pv经常被用来

通过管道监视数据的进度… pv将每个提供的FILE依次复制到标准输出( – 表示标准输入),或者如果没有指定FILE,则只复制标准输入。 这与cat(1)的行为相同。

使用pv您可以将文件打印到屏幕上,然后选择它出现的速率( -L )。 下面的示例使用高速率(300),但如果您选择低速率(如-L 50 ,则看起来好像计算机正在为您键入文件。

 pv /etc/apt/sources.list -qL 300 

不用说你可以进一步提高速率( -L 8000 ),命令变得非常类似cat ,输出瞬间出现。

有关更多信息,请参阅man pv或Ubuntu联机帮助页 。

另一个更奇特的答案是使用grep

 grep . RESULTS.txt 

grep命令搜索文件中的每个字符并将其打印出来。 所以基本上打印出完整的文件。

为什么不。

你也可以使用

 most RESULTS.txt 

它几乎与less相同,但如果文件包含长行,它也支持水平滚动 – 这非常方便。

默认情况下没有安装most ,所以要使用它,你必须先

 sudo apt install most