Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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_Scripting - Fatal编程技术网

bash报价问题

bash报价问题,bash,scripting,Bash,Scripting,请帮忙 编辑 以下是pastebin中的代码: d=`echo \"$1\"` echo $d #command run ./command 2 #expected output "2" 我不明白。。。这对我很有用: $ cat -> command d=`echo \"$1\"` echo $d $ chmod +x command $ ./command 2 "2" $ ruffian% cat test.sh #!/bin/bash d=`echo \"$1\"` ech

请帮忙

编辑

以下是pastebin中的代码:

d=`echo \"$1\"`
echo $d

#command run
./command 2

#expected output
"2"

我不明白。。。这对我很有用:

$ cat -> command
d=`echo \"$1\"`
echo $d
$ chmod +x command
$ ./command 2
"2"
$ 
ruffian% cat test.sh
#!/bin/bash

d=`echo \"$1\"`
echo $d

ruffian% /bin/bash test.sh 2
"2"
为我工作:

$ cat -> command
d=`echo \"$1\"`
echo $d
$ chmod +x command
$ ./command 2
"2"
$ 
ruffian% cat test.sh
#!/bin/bash

d=`echo \"$1\"`
echo $d

ruffian% /bin/bash test.sh 2
"2"

您的命令对我有效,但不是
`

d=$(echo \"$1\")
但是,在作业中不必使用
echo

d=\"$1\"
但是,在输出时,您可能希望引用变量以保留空白:

echo "$d"

请在这里而不是在pastebin上发布代码。如果我在这里发布,我会丢失一些字符,这就是我使用pastebin的原因?我发现函数$1中的问题无效!感谢您的帮助,正如mkucharz的回答所示,您的代码在这里粘贴得很好。投票关闭,因为您的后续评论表明您发布的代码实际上不是您正在使用的代码。(另一方面,shell函数与命令一样接受参数。如果要将脚本的参数传递给它,请将其作为脚本中的
my_function“$@”
调用。)如果您明确了解实际行为与预期行为的差异(或者在适当的情况下,包括特定的错误消息),这会有所帮助。大多数未能做到这一点的人,至少在他们的问题中包括了“不起作用”这句话。你甚至都没做到。要在此处设置代码格式,请使用“设置代码格式”按钮(标签为
101010
)或将每行缩进四个空格。你的linux发行版是什么,我用的是suse,对我不起作用