shell参数中单引号如何表示呢? 存在一个程序notsobad,它接受一个参数中含有单引号,怎么写呢?
# 双引号引起来
echo "'"
./notsobad -a xxx -b "'"
# Or,注意参数中的单引号写法,实际上是 '\''
./notsobad -a xxx -b ''\'''
echo ''\'''
在shell参数中包含`(反引号)字符,如何做呢?
# Wrong!
# 反引号会先被shell截获解释,替换为反引号内部命令的执行结果
# 实际上产给notsobad的是id这个命令的输出,而不是命令本身
./notsobad -b "`id`"
# Right!
echo '`id`'
./notsobad -b '`id`'