如何在终端中打开文本文件?
有一个名为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.txt
为result.txt
的大文件的最后30行。
另外一个选项:
tail -f your_file
它将显示your_file
的最后十行。 如果进程在此文件中附加了某些内容,则会在终端上看到它。 man tail
给你更多的tail
。
在日志文件上使用此命令时,查看服务器发生的情况很有用。
完成查看后,按Ctrl – C退出。
这样做有很多选择:
其中一些程序有很多参数,所以在命令后用–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 emacs23
或apt-get install emacs24
,或者如果您没有X或不想要相关的X依赖项,则apt-get install emacs23-nox
或apt-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