與目標由XPath來提取XML變種的一些基本功能:外殼可變執行結果 「沒有這樣的文件或目錄」
function get_xml_value_from_config_dir {
local src_root=$1
local xpath_expr="//$2/text()"
local path_to_local="$src_root/app/etc/local.xml"
if [ ! -f $path_to_local ]; then echo "Config file not found: $path_to_local"; exit; fi;
echo $("$xmllint --nocdata --xpath '$xpath_expr' $path_to_local")
}
## and then
src_usr=$(get_xml_value_from_config_dir $src_dir username)
給我
線34:在/ usr/bin中/ xmllint --nocdata --xpath'// username/text()'/tmp/bin/app/etc/local.xml:沒有這樣的文件或目錄
爲什麼? (/usr/bin/xmllint
存在以及/tmp/bin/app/etc/local.xml
)
爲什麼使用echo $(「」)'?你不想只是回聲或跑? –
我該如何返回此字符串的執行結果? –
我不認爲這是你的問題。 'xmllint'是一個程序?爲什麼你將它用作字符串中的變量? '$ xmllint' –