我习惯于less
查看我的journalctl
日志,因为它更方便。当您退出 less 后,它不会使控制台窗口中的日志变得混乱,并且您可以使用鼠标滚轮滚动。
journalctl --unit xyz | less +G
但很烦人的是我无法刷新日志。有没有办法做到这一点less
?使用Shift
+F
不起作用。
我习惯于less
查看我的journalctl
日志,因为它更方便。当您退出 less 后,它不会使控制台窗口中的日志变得混乱,并且您可以使用鼠标滚轮滚动。
journalctl --unit xyz | less +G
但很烦人的是我无法刷新日志。有没有办法做到这一点less
?使用Shift
+F
不起作用。
很长一段时间以来,我一直在使用这些变量来为手册页着色:
# Colourise man pages
export LESS_TERMCAP_mb=$'\E[1;31m' # begin bold
export LESS_TERMCAP_md=$'\E[1;36m' # begin blink
export LESS_TERMCAP_me=$'\E[0m' # reset bold/blink
export LESS_TERMCAP_so=$'\E[01;44;30m' # begin reverse video
export LESS_TERMCAP_se=$'\E[0m' # reset reverse video
export LESS_TERMCAP_us=$'\E[1;32m' # begin underline
export LESS_TERMCAP_ue=$'\E[0m' # reset underline
export LESS_TERMCAP_mr=$(tput rev)
export LESS_TERMCAP_mh=$(tput dim)
export LESS_TERMCAP_ZN=$(tput ssubm)
export LESS_TERMCAP_ZV=$(tput rsubm)
export LESS_TERMCAP_ZO=$(tput ssupm)
export LESS_TERMCAP_ZW=$(tput rsupm)
我正在考虑将它们放入一个函数中,这样它们就不会弄乱我的环境变量(但它们不能与 一起使用git apply --help
,而是与 一起使用man git-apply
)。
# Colourise man pages
man() {
env \
LESS_TERMCAP_mb=$'\E[1;31m' \
LESS_TERMCAP_md=$'\E[1;36m' \
LESS_TERMCAP_me=$'\E[0m' \
LESS_TERMCAP_so=$'\E[01;44;30m' \
LESS_TERMCAP_se=$'\E[0m' \
LESS_TERMCAP_us=$'\E[1;32m' \
LESS_TERMCAP_ue=$'\E[0m' \
LESS_TERMCAP_mr=$(tput rev) \
LESS_TERMCAP_mh=$(tput dim) \
LESS_TERMCAP_ZN=$(tput ssubm) \
LESS_TERMCAP_ZV=$(tput rsubm) \
LESS_TERMCAP_ZO=$(tput ssupm) \
LESS_TERMCAP_ZW=$(tput rsupm) \
man "$@"
}
最近我开始使用 Oracle Linux,但它们在那里不起作用。Oracle Linux 基于 Scientific Linux(我认为),因此这可能不适用于 RHEL 和 CentOS/Fedora 等变体。
我怎样才能使它在所有类型的 Linux 上工作?
当我使用less
并按下v它时,它会切换到当前设置的编辑器(Emacs 或 vim)。
MISCELLANEOUS COMMANDS v Edit the current file with $VISUAL or $EDITOR.
在我不希望在编辑器中打开当前文件的情况下,是否可以防止这种行为?
在mc
(午夜指挥官)中,我可以定义用于查看文件的自定义命令,即:
shell/i/.jpg
Open=gpicview %f
View=file %f | less
该命令file %f
必须通过管道传送到寻呼机。我以这里less
为例。
less 的问题是,它在屏幕中间显示一行,并添加了这些字符:
~
~
(END)
我只需要最简单、最愚蠢的寻呼机,它除了显示从管道重定向接收到的内容外,什么都不做。类似于cat
命令的东西,它不会将任何内容添加到它正在显示的文件中。
我可以用什么代替less
?
或者我可以配置less
隐藏那些特殊字符吗?
好的,我已经less
通过使用选项--tilde
和--clear-screen
. 但是,less
仍然显示(END)
在页面底部。
我可以摆脱(END)
吗?如果没有配置选项,我怎么能在源代码中更改它(我可以重新编译更少的包)
我less
在 Debian 10 上使用。less --version
显示:
less 487 (GNU regular expressions)
关于less
和符合:
表示以下内容:
f ^F ^V SPACE * Forward one window (or N lines).
b ^B ESC-v * Backward one window (or N lines).
z * Forward one window (and set window to N).
w * Backward one window (and set window to N).
启用行号 --N
例如 - 例如man less
,我可以看到它的b/f
工作/行为与window或pagew/z
向上/向下移动的内容/行的数量相同。
问题
b/f
vs 和有什么不一样w/z
?通常我使用第一对,但何时使用第二对?
额外问题
我假设这是预期的差异导致w/z
不同b/f
根据less
本教程用于导航目的
表示:
g Go to the first line in the file.
p Go to the beginning of the file.
我对两者都进行了测试,当然结果是相同的(当然是使用G
底部)并测试每一个。
但乍一看,如果g
和G
做相反的事情,它们就足以分别进入第一行(顶部)和最后一行(底部) - 那么p
如果它与 相同,为什么会有选项g
?
我发现在 Linux Mint 中,命令valgrind less
输出
still reachable: 22,499 bytes in 31 blocks
那是一个错误吗?是否应该向开发人员报告此类问题?
为模糊的标题道歉。
我经常git branch
一整天都在执行,而且最近(也许在过去一个月?)的某个时候,这种行为似乎发生了变化。我记得以前git branch
会打印分支列表并立即返回到提示符 - 但是现在它似乎正在打印 中的分支,less
并要求我Esc
在返回命令提示符之前按下。
我不确定这是否是对git branch
自身的更改,或者可能是我的默认less
标志 - 或者可能是其他一些因素。
我观察到这一点:
在这两种情况less
下,我都没有自定义默认标志,它们是:
LESS="-g -i -M -R -S -w -X -z-4"
并且git branch
在任何 git repo 中运行都会按预期打印分支,并lines 1-X/X (END)
在控制台底部显示 less 的摘要。按下h
显示less
帮助提示 - 确认它less
正在被使用。
这是最近的变化吗?是否有一个 git 选项来避免使用 less - 或者一个less
选项/标志让它在少于一个屏幕的数据时自动退出?
查看less
器允许使用该文件进行一些自定义~/.lesskey
,但它似乎在搜索上下文中没有任何效果。例如,我可以映射^P
到向上箭头,这适用于导航,但是一旦我按下/
并开始搜索,就完全忘记了我的所有自定义设置,而是在搜索字符串中添加了less
一个疣。^P
有什么方法可以在搜索过程中启用快捷方式,例如,我可以使用^P
距离我的打字位置很远的箭头键来访问以前的搜索?