我以前用来cat
查看文件。然后我了解到这less
通常更好,如果文件长于几十行,这是必须的。
我的问题:有没有理由使用cat
而不是less
?有没有cat
更好的解决方案?
nro*_*ans 101
尽管这两个命令都允许您查看文件的内容,但它们的原始用途却大不相同。
less 扩展了more的功能。创建后者是为了一次一屏查看文件的内容。less 添加了诸如向后移动和更好的内存管理等功能(无需在能够看到第一行之前读取整个文件)。
cat 连接文件并在标准输出上打印结果。如果您只提供一个文件,您将看到该文件的内容。当您提供多个文件时,它变得“强大”。一个很好的例子是split和 cat的组合。第一个命令将大文件分成小部分。然后第二个将把小部分连接成一个文件。
回到您的问题,在需要完全读取(或连接)文件而无需交互的自治脚本中,更喜欢 cat 。在文件查看方面,我认为这更多是一个品味问题。
Ami*_*hum 25
我通常cat
在需要根据文件中的内容键入命令时使用。cat
更方便,因为您可以在访问 shell 提示符时查看文件(如果它很小)。它还允许管道内衬。
Nil*_*ils 25
我个人更喜欢view
静态内容或tail -f
动态内容。
但是,这并不能回答您的问题。有句话说“如果你拥有的更少,为什么要使用更多”;-)
但在某些情况下,我更喜欢 cat 而不是 less:我通常使用 X11-windows。这些窗口有一个滚动缓冲区,可以设置为几百行。
做一个cat
for - 假设 200 行,然后使用带有滚动条的鼠标对我来说比less
在这些情况下使用更舒服。
jas*_*yan 18
有没有猫是更好的解决方案的情况?
当您处理多个文件并希望连接它们时。
从手册页:
cat f - g
Output f's contents, then standard input, then g's contents.
Run Code Online (Sandbox Code Playgroud)
Kon*_*lph 17
还有谁认为是暴力的唯一目的的人cat
是骗子猫enate文件。对于其他所有用途,都有more
(或less
)。
但这并没有考虑到一个非常重要的事实:cat
要输入的字符少了一个。我经常使用这些命令,少一个字符是很容易的。
另一个原因是当您要创建文件时。我经常将网络中的文本复制并粘贴到这样的文件中(显示命令提示符):
$ cat > filename
<Cmd-V>
<Ctrl-D>
$
Run Code Online (Sandbox Code Playgroud)
也就是说,我打开一个文件filename
进行写访问,粘贴内容并按Ctrl-关闭流D。既less
不能也more
不能这样做,而且比打开编辑器要快。
归档时间: |
|
查看次数: |
60957 次 |
最近记录: |