use*_*924 2 shell-script quoting expr
我正在做添加操作
#!/bin/sh
a=10
b=20
c='expr $a + $b'
echo "$c"
echo "$a"
echo "$b"
Run Code Online (Sandbox Code Playgroud)
但它显示输出为
expr $a + $b
10
20
Run Code Online (Sandbox Code Playgroud)
expr 有什么问题
您的示例使用了错误的引号类型:
a=10 b=20 c='expr $a + $b' echo "$c" echo "$a" echo "$b"
Run Code Online (Sandbox Code Playgroud)
这应该是(作为开始):
a=10
b=20
c=`expr $a + $b`
echo "$c"
echo "$a"
echo "$b"
Run Code Online (Sandbox Code Playgroud)
但更具可读性:
a=10
b=20
c=$(expr $a + $b)
echo "$c"
echo "$a"
echo "$b"
Run Code Online (Sandbox Code Playgroud)
如果要将所有这些语句放在一行中,请用分号分隔它们:
a=10; b=20; c=$(expr $a + $b); echo "$c"; echo "$a"; echo "$b"
Run Code Online (Sandbox Code Playgroud)