kra*_*r65 14 bash terminal command-line scroll
我有一个有很多输出的程序.一旦完成,我经常想回滚到运行的开始,以便我可以看到那里的一些东西.由于输出很长,我看到自己无休止地使用PageUp滚动并尝试将右侧的滚动条拖动到可能已经开始的位置.过了一段时间,这开始变得非常无聊,所以我想知道:
有没有办法让终端滚动回到最后一个命令的部分?
小智 13
我刚在OSX的终端中发现了这个:
编辑>导航>跳转到上一个标记:cmd + UP.
在装有 iTerm2 的 MacOS 上:
\n您必须安装 Shell 集成(iTerm -> 安装 Shell 集成),然后打开一个新选项卡。
\n按\xe2\x8c\x98+ Shift+Up跳转到最后一个标记。也可以在“编辑”->“标记和注释”->“下一个标记”下找到。
\n在 LINUX 中实现它
在提示符中添加一个标识符(例如在 .bashrc 的底部添加):
Run Code Online (Sandbox Code Playgroud)promptCount=0 PROMPT_COMMAND=promptCount=$((promptCount+1)) PS1="/\$promptCount\\ $PS1"现在使用终端的搜索功能,也许是 ++ Ctrl,作为您想要的提示行。ShiftF
使其更方便:
安装
xdotool(命令行 X11 自动化工具)创建一个函数,该函数将按下您在
N通过搜索功能找到提示行时所按下的确切按键(添加到 .bashrc 的底部):Run Code Online (Sandbox Code Playgroud)gp () { xdotool key ctrl+shift+F; xdotool type /$1\\ ; xdotool key KP_Enter;sleep 0,2; xdotool key Alt+F4; }(至少这些是我在 Manjaro Xfce 中执行此操作时按下的确切按键)
现在:
gif 中未显示一个小框架,其中出现小搜索窗口,N写入标识符,Enter按下按键,然后关闭窗口。您可以尝试通过更改提供给 sleep 命令的参数值来加快速度。就我而言,它在 0,11 左右之前都可以正常工作。
如果您使用的是 GNOME 终端等终端,则可以向后搜索。例如,Ctrl++ Shift,f然后输入文字命令或正则表达式来匹配它(并确保相应地设置“匹配为正则表达式”)。
解决方法是将输出发送到寻呼机,例如less,您可以在其中导航和检查输出,然后返回到命令行,就好像没有打印任何内容一样。