介绍
在脚本中,我想在单独的窗口中运行命令,以便命令的输出将显示在新窗口中(这是一个输出流,如top
),并且它们不会互相干扰。为此,我使用gnome-terminal -x bash -c 'command'
。
例如:可以使用或"\
打印。我只是不感兴趣gnome-terminal -x bash -c 'echo "\"\\"; read '
gnome-terminal -x bash -c 'echo -e "\x22\x5c"; read '
十六进制因为它不能与除 之外的其他命令一起工作echo
。
问题
我如何打印"'
?
执行除了在新窗口中运行命令gnome-terminal -x bash -c 'echo "\"\'"; read '
之外,还有其他方法吗gnome-terminal -x bash -c
?(不在后台)。
我的情况
gnome-terminal -x bash -c 'perl -le 'open(P,"sudo nethogs lo |"); $|=1;
while(<P>){ print "------","$_"; }' >> /tmp/a.txt'`
我目前正在做的是
- 将 perl 代码分配给变量
cmd_perl='open(P,"sudo nethogs ppp0 |"); $|=1; while(<P>){ print "------","$_"; }'
- 保存到文件
echo "$cmd_perl" > "/tmp/cmd_perl.pl"
- 在指向文件的 bash 中执行
gnome-terminal -x bash -c 'perl /tmp/cmd_perl.pl >> /tmp/nethogs-dump-from-perl.hex '
此方法效果很好。我想避免使用临时文件。
如何使用 echo 命令显示'?没有回答我的问题。
答案1
尝试:
bash -c "echo \'"
或者
bash -c "echo \"'\""
结合起来:
$ bash -c 'echo "\"\\"'"\'"
"\'