ls -la
假设我在一个包含数百甚至数千个文件的目录中发出,然后切换到另一个方向并发出ls -la
。然后我需要向上滚动以查看最新目录中有哪些文件。
ls -la
然而,我遇到的问题是混淆了第一个和第二个的内容。我一直在做的只是按Enter大约五十次,所以有相当大的差距,我可以分辨出什么输出属于什么。
一定有更好的方法来做到这一点,我已经搜索过,但真的不知道要搜索什么术语,而且只是没有想法。我希望clear
能有所帮助,但在这种情况下它对我没有帮助。还有其他想法吗?
答案1
请仅将以下内容视为激发您幻想的提示。
您可以设置您的bash函数或者别名具有以下一个或多个想法。
文本黑白
正如 mikeserv 所指出的,您可以 printf %020d
在 ls 的输出之前引入一个大的跳过。
alias Ls0='printf %050d|tr 0 \\n; ls -la'
此外,您可以使用一些分离层或消息来自定义它......
alias Ls1='printf %020d|tr 0 \\n;echo "# Output of $(pwd)"; \
printf %02d|tr 0 \\n; ls -la'
文字彩色
您可以以更具创意的方式使用颜色,第一行将显示为绿色
alias Ls2='tput setaf 2; ls -la'
即使在这里,您也可以享受定制解决方案;您可以在前 3 种颜色之间循环tput
,第一行背景反转,彩色......
alias Ls3='ccol=$(echo "($ccol +1) %3+1" | bc); tput setaf $ccol; ls -la'
alias Ls4='tput rev; ls -la'
alias Ls5='echo -e "setf 7\nsetb 1" | tput -S ; ls -la'
旧时尚横幅
万一您安装了横幅包,您可以考虑如下:
alias Ls6='printf "\n\n"; banner $(basename $(pwd)) ; printf "\n\n"; ls -la'
alias Ls7='printf "\n\n"; tput setaf 2; banner $(basename $(pwd)); \
printf "\n\n"; ls -la'
并开始使用混合解决方案......
笔记:
- 如果你把它放在一个函数中,你可以更好地管理最终的参数,当它
ls -la
位于最后一个位置时,你可以尝试添加其他参数“执行时间处理时间”。 man tput
和man terminfo
为了进一步好奇- 也可以使用转义序列来为输出着色
(echo -e '\E[31m' ; ls -la)