简体   繁体   English

Linux Shell在一个命令中使用单引号和双引号

[英]Linux shell single quotes and double quotes in one command

I need your help to make this command work: 我需要您的帮助才能使此命令起作用:

ssh -t user@localhost "cd /tmp ; PROMPT_COMMAND='echo -ne "\033]0;log\007"' ; bash"

Here is the error that I get: 这是我得到的错误:

bash: -c: line 0: unexpected EOF while looking for matching `''
bash: -c: line 1: syntax error: unexpected end of file
Connection to localhost closed.
log007' ; bash: command not found

Thanks 谢谢

我建议用反斜杠( \\" )转义双引号:

ssh -t user@localhost "cd /tmp ; PROMPT_COMMAND='echo -ne \"\033]0;log\007\"' ; bash"

它经过两个壳,这意味着两个字符串扩展,因此逃脱内部部分:

ssh -t user@localhost "cd /tmp ; PROMPT_COMMAND='echo -ne \"\033]0;log\007\"' ; bash"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM