我正在尝试在新的xterm shell中拖尾文件,然后在看到短语“Tailkill2”时终止它。
xterm -e "tail -F $PWD/$LOGFILE | { sed "/Tailkill2/ q" && pkill -P $$ tail ;} &"
为什么这不起作用?
顺便说一句,有没有办法将-e参数包装在除引号之外的其他内容中,这样就不会让人感到困惑?
答案 0 :(得分:0)
您仍需要引用一些部分以确保您要发送到xterm
召唤的shell的此命令是它将完全获得的。使用单引号很容易解决它。考虑将变量放在双引号周围,以防止分词和可能的路径名扩展。
xterm -e 'tail -F "$PWD/$LOGFILE" | { sed "/Tailkill2/q" && pkill -P "$$" tail; } &'