Bash:使用引号将变量作为参数传递

时间:2013-04-10 13:19:57

标签: bash shell emacs24

我正在尝试将一些参数传递给ecb。但我认为这是一个逃避引用的问题。下面的$ edir变量特别给出了很多问题。

#!/bin/bash

edir='"(open-project-ecb \"'`pwd`'\")"'

#edir=`pwd`

echo $edir

command=( -n --eval $edir)

emacsclient "${command[@]}"

1 个答案:

答案 0 :(得分:5)

你刚才引用太快了。只要引用$edir的扩展,就不需要在其值中嵌入额外的引号;它将被视为一个单词。

edir="(open-project-ecb \"$(pwd)\")"
command=( -n --eval "$edir" )
emacsclient "${command[@]}"