所以我希望能够打印你好世界使用!!
命令。我尝试使用文本创建一个文本文件你好世界在上面。然后我说
cat textFileName
它打印你好世界。然后我说
!!
它打印
cat 文本文件名
你好世界
我尝试使用tail
但没有成功。我想以这样的方式编写命令!被使用且仅你好世界被打印。
谢谢
答案1
添加到杰夫的评论中,它会重复之前的命令,并且至少在我使用过的所有 bash 中,它还会打印出该命令,供您查看刚刚做了什么,这可能会解释cat textFileName
您所看到的内容。该输出被写入终端,而不是打印到 stdout 或 stderr。例如:
$ cat textFile
helloworld
$ !!
cat textFile
helloworld
$ !! &>/dev/null
cat textFile &>/dev/null
因此,正在打印的行只是显示给您以寻求帮助,它不是显示在管道中(如果您使用过)的输出的一部分!!
答案2
今天下午我受到更新的要求的“启发”:
使用 !!命令,以便在标准输出上打印 helloworld (仅此而已),并且在输入命令时在标准错误上不打印任何内容。您可以在命令之前添加其他命令(例如,创建文件、运行其他命令等)和/或将选项或参数传递给命令。是的,仅此而已。
...这似乎足以让我建议这个答案/解决方法:
exec ksh
PS1="helloworld"
!! 2>/dev/null
答案3
我能够弄清楚事情的来龙去脉。
我可能位于一个没有文件的文件夹中,然后创建一个别名
alias helloworld=ls
然后我打电话
helloworld
然后我打电话!!
所有将被打印的内容将是
你好世界
谢谢大家!