Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash:屏幕参数被错误解释_Bash_Gnu Screen - Fatal编程技术网

Bash:屏幕参数被错误解释

Bash:屏幕参数被错误解释,bash,gnu-screen,Bash,Gnu Screen,我正在尝试使用screen-dmS nameofscreen命令启动守护程序屏幕。这本身就可以工作,但是当我使用带有&&或|的命令时,它似乎解释错了 示例:screen-dmS screen1回波测试和&ls-al 它似乎被解释为(screen-dmS screen1 echo test)&&(ls-al),我希望它被解释为screen-dmS screen1(echo test&&ls-al) 这是怎么做到的?如果在要传递的命令周围使用(),screen不接受它?括号和&&和|由shell解释

我正在尝试使用
screen-dmS nameofscreen命令启动守护程序屏幕
。这本身就可以工作,但是当我使用带有
&&
|
的命令时,它似乎解释错了

示例:
screen-dmS screen1回波测试和&ls-al

它似乎被解释为
(screen-dmS screen1 echo test)&&(ls-al)
,我希望它被解释为
screen-dmS screen1(echo test&&ls-al)


这是怎么做到的?如果在要传递的命令周围使用(),screen不接受它?

括号和
&&
|
由shell解释,而不是由screen解释。要让这些操作符在屏幕中工作,您需要一个显式的子shell

screen -dmS screen1 sh -c 'echo test && ls -al'