这看起来很简单,但有时我需要终端不回显任何内容,无论是针对特定命令还是所有命令。
在 Windows 中我可以简单地做echo off
我倾向于使用cat
命令来制作文件,但它会返回我输入的任何内容,而且我感觉自己像个酒鬼,因为我看到了双重图像。
例子 :
cat | sudo tee -a vocab.txt
I am the first line
I am the first line
I am the second line
I am the second line
答案1
您可以使用以下命令关闭终端回显:
stty -echo
(警告:输入此命令后,您将看不到接下来输入的命令)
并使用以下命令再次打开它:
stty echo
答案2
答案是运行:
set +x
打开回声是
set -x
我刚刚遇到了这个问题,当时一个脚本失败了,终端不断回显我之后输入的所有命令。这是我尝试寻找修复方法时出现的第一个答案。
更多信息:
set -x 启用 shell 的一种模式,其中所有执行的命令都打印到终端。(参见:https://stackoverflow.com/questions/36273665/what-does-set-x-do)
答案3
使用 bash 作为 shell 时,关闭终端中命令回显的选项是:
set +v
# - the --> set -v <-- sets the command echoing back on
答案4
我只知道一行。要做到这一点,请将命令的输出转发到/dev/null
。
例如:
cat testfile.txt > /dev/null
/dev/null
用于在 Unix 和 Linux 系统中丢弃数据。您可以阅读更多关于它的内容这里。