1. 请教:linux终端显示内容不全,长的字符串被截断
管道
管道简单理解就是,使用管道意味着第一个命令的输出会作为第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。
这样在ls命令的时候如果现实的内容很多,可以利用管道技术将其分页显示:
1. ls | less
2. ls | more
我这里是遇到objm -d反汇编命令时,终端显示不全。参照上面的ls命令,可以在命令后边加上“ | more ”
如果对less和more掌握不熟练的话,使用man命令查一下他们的详细用法和区别。
2. linux netstat -an 显示不完整
可以使用命令进行过滤,如果直接看ip的话,显示tcp或者udp netstat -tu 或者你可以是用awk 进行命令的过滤。
3. linux下输入命令显示数据不完整
像楼上说的,用个管道就行了。env|less或者env|more,当然less的功能更好
或者重定向到文件里也可以。env >> l.txt
,这样会产生一个l.txt文件,到时用less l.txt或者vi l.txt就可以观察了。不用的时候,可以rm -f l.txt,删除这个文件。
文件名无所谓,随意定,我用l.txt只是举个例子。
4. linux中文件内容太多,屏幕不能一下全部显示出来,怎样查看被掩盖的上部分的内容
楼上有人说了用 命令 | more 的方法显示,这种方法其实不好。更好的方法反而是使用
命令 | less 的模式(例如mitmproxy -h | less,这段命令意思就是显示mitmproxy的帮助文档,并且用less模式去读取这个文档),在less模式下你一次只能读一部分文本,但是你可以输入命令来翻页,你可以按空格键向下翻页;而按b键则向上翻页。另外,在输入状态先输入一个斜杠,再输入文本,就可以把全文中带有该文本的地方高亮(例如输入/port就是把全文中带有port这个文本的地方标记高亮);最后使用ctrl+z退出less模式。如果你使用more的命令当然也可以这样翻页,但是首先它也是只显示一部分内容(而不是全部),可是这个模式不能输入命令(所以不能搜索文档),最讨厌的是当你翻到底的时候命令就自动退出more模式了,所以还是less更多人用。
至于有没有一次显示所有内容的方法?我到处都找遍了也没发现(甚至找了国外的StackOverflow,以上方法就是我从那里找来的)。可是我清晰地记得有时候浏览帮助文档一开始是可以显示完全的,只不过后来不知道为什么又不行了。在CSDN有人说可以修改PUTTY、XSHELL等远程登录软件的lines of scrollback选项,我试过好像没什么作用就不发上来了。如果有人知道一次完全显示的方法,请留言,谢谢。
5. linux,terminal中显示的信息太多,将滚动条拖到最上也没法看到所有内容,如何看上面更多的信息。
很多方法, 假设你要读一个很长的文件 输入$ cat file 之后 文件显示太多行, 没法看最上面的内容. 你可以用
$ cat file | more
这样文件的内容会一段一段显示
或者用 $ less file 也差不多
如果是运行命令的输出内容太多而无法看到上面的内容, 比较好的方法是把输出内容写到一个文件里, 然后在浏览这个文件. 比如
$ ./command > out
注意这里的command可以是任何你运行的命令.
$ cat out | more
当然最最最好的是设置下你的terminal, 让它多显示些行数..
6. 在linux里有些命令显示的内容太多了,要网上翻页,怎么办用shift+pageup,也只能翻几页。仍然显示不全
有些命令显示的内容太多,一页屏幕显示不完,就需要翻页命令。一回般是用管道符将这样的答命令的输出让more或less处理,就像这样:
dmesg |more (查看系统硬件信息)
或dmesg |less
more命令的翻页按键:
空格:表示向下翻一页
回车:表示向下滚动一行
/字符串:表示查询字符串
q:离开more界面
而less命令和more的不同之处在于,它可以向上翻页,字符串查询也可以向上查询。less命令的按键(more命令的按键在less中一样):
PageUp:向上翻页
PageDown:和空格键一样是向下翻页
?字符串:表示向下查询字符串
n:重复查询字符串