我運行這個bash命令在Weblogic域目錄中顯示somefile.cf的內容。查找在預期發送命令中不起作用
find $(/usr/ucb/ps auwwx | grep weblogic | tr ' ' '\n' | grep security.policy | grep domain | awk -F'=' '{print $2}' | sed -e 's/weblogic.policy//' -e 's/security\///' -e 's/dep\///' | awk -F'/' '{print "/"$2"/"$3"/"$4"/somefile.cf"}' | sort | uniq) 2> /dev/null -exec ls {} \; -exec cat {} \;
我試圖在expect腳本結合這一點,也逃脫了一些特殊字符和雙引號太多,但它
send "echo ; echo 'Weblogic somefile.cf:' ; find \$(/usr/ucb/ps auwwx | grep weblogic | tr ' ' '\n' | grep security.policy | grep domain | awk -F'=' '{print \$2}' | sed -e 's/weblogic.policy//' -e 's/security\\///' -e 's/dep\\///' | awk -F'/' '{print \"/\"\$2\"/\"\$3\"/\"\$4\"/somefile.cf\"}' | sort | uniq) 2> /dev/null -exec ls {} \\; -exec cat {} \\;
「關閉引號後多餘的字符」引發的錯誤,我想這需要一些更多逃避特殊字符或者我可能會正確地逃避現有的特殊字符。 任何幫助,將不勝感激。
難道你沒有問過這裏:http://stackoverflow.com/questions/2462073/sed-does-not-work-in-expect – 2010-03-24 15:21:57
它是我在上面的問題中實現的一部分。一個是不同的。 – Sharjeel 2010-03-24 16:09:56