Shell 方法在输出中输出stdin和stdout
我需要一种简单的方法来捕获发出的命令(来自脚本)和结果输出到日志文件 下面是一个简单的例子: 命令: 输出:Shell 方法在输出中输出stdin和stdout,shell,stdout,stdin,Shell,Stdout,Stdin,我需要一种简单的方法来捕获发出的命令(来自脚本)和结果输出到日志文件 下面是一个简单的例子: 命令: 输出: #PermitRootLogin no 所需结果: grep '^#PermitRootLogin' /etc/ssh/sshd_config PermitRootLogin no 通过重定向stdin,我似乎在踩stdout;这本不应该那么难,但不知什么原因,我一直在逃避 使用tee只会创建一个带有无关噪声的日志文件;最后我想用这个文件做一个报告(没有噪音) 提前感谢, TT有
#PermitRootLogin no
所需结果:
grep '^#PermitRootLogin' /etc/ssh/sshd_config
PermitRootLogin no
通过重定向stdin,我似乎在踩stdout;这本不应该那么难,但不知什么原因,我一直在逃避
使用tee只会创建一个带有无关噪声的日志文件;最后我想用这个文件做一个报告(没有噪音)
提前感谢,
TT有一个
script
实用程序,它将记录您键入的所有内容以及任何程序输出到stdout的内容,并将其记录在名为typescript
的文件中。但是,它非常彻底,还记录了所有换行符和换行符以及shell的所有提示,因此您很可能希望对类型脚本进行后期处理
也许这样更容易
echo "grep '^#PermitRootLogin' /etc/ssh/sshd_config" > file
grep '^#PermitRootLogin' /etc/ssh/sshd_config >> file
然后将命令及其输出保存在文件中
将所需行为包装在函数中,即
function stomp {
echo $@
eval $@
}
那就这样说吧
stomp grep '^#PermitRootLogin' /etc/ssh/sshd_config
我想到了,但有很多重复。它又快又脏,但我希望有更优雅的东西。
stomp grep '^#PermitRootLogin' /etc/ssh/sshd_config