PHP*_*Pst 5 terminal bash command-line cmd.exe
我需要将命令行保持在屏幕顶部,并查看其下方的任何命令的输出。如何使用任何平台上的任何可用工具来实现这一目标?
目前,在我使用过的所有终端模拟器上,如果您运行ls foo -l
,结果将是:
$ ls foo -l
hi.txt
bye.txt
$ command prompt is here
Run Code Online (Sandbox Code Playgroud)
在喜欢看到这个:
$ command prompt is here
$ ls foo -l
hi.txt
bye.txt
Run Code Online (Sandbox Code Playgroud)
Linux、巴什。
\n\nBash 使用 stderr (文件描述符2
)来打印其命令提示符和命令行。用于tmux
显示两个 shell,一个在另一个上面(或者只是将两个 GUI 窗口、终端模拟器一个在另一个上面)。在下一层调用tty
. 从现在开始不要直接使用下壳。在上一层中,将文件描述符重定向1
到下一层的 tty(例如exec 1>/dev/pts/2
)。
Ctrl+L清除上部,clear
清除下部。每个部分都是多行的。由于tmux
\ 的功能,您可以调整它们的大小(即上下移动边框)。
使用它可以使命令也出现在显示屏的下部:
\n\ntrap \'printf "%s\\n" "-----$ $BASH_COMMAND"\' DEBUG\n
Run Code Online (Sandbox Code Playgroud)\n\n我测试了该解决方案,在某些时候我的终端窗口如下所示:
\n\nkamil@foo:~$ ls -l /proc/$$/fd\nkamil@foo:~$ uname -r\nkamil@foo:~$ cat /etc/issue\nkamil@foo:~$ \xe2\x96\x88\n\n\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\n-----$ ls --color=auto -l /proc/$$/fd\ntotal 0\nlrwx------ 1 kamil kamil 64 Sep 9 20:42 0 -> /dev/pts/3\nl-wx------ 1 kamil kamil 64 Sep 9 20:42 1 -> /dev/pts/2\nlrwx------ 1 kamil kamil 64 Sep 9 20:42 2 -> /dev/pts/3\nlrwx------ 1 kamil kamil 64 Sep 9 21:13 255 -> /dev/pts/3\n-----$ uname -r\n4.15.0-33-generic\n-----$ cat /etc/issue\nUbuntu 18.04.1 LTS \\n \\l\n
Run Code Online (Sandbox Code Playgroud)\n\n(注意:--color=auto
出现是因为 myls
是别名)。
交互式工具(如文本编辑器)可能会出现异常行为,因此最好在调用它们时恢复更改。例子:
\n\n1>&2 nano\n
Run Code Online (Sandbox Code Playgroud)\n\n某些 shell(例如)对命令行zsh
使用单独的文件描述符。10
这允许您将 stderr 重定向到下层(或另一个,第三个)tty,将命令行保留在上层。
归档时间: |
|
查看次数: |
558 次 |
最近记录: |