[英]grep a string with some variables in bash
我一直在苦苦掙扎兩個小時才弄清楚我的這個劇本的問題。 當我靜態地使用它而沒有任何變量時它會獲取grep結果,但是當我將它們與這些變量放在一起時,我一直收到錯誤並且沒有結果。 我相信我無法處理的特殊角色逃脫有問題。
我有這個結構的文件FLAGS_IN:
automotive_susan_s dataset1 -funsafe-math-optimizations -fno-guess-branch-probability -fno-ivopts -fno-inline-functions -fno-omit-frame-pointer -fselective-scheduling -fno-inline-small-functions -fno-tree-pre -ftracer -fno-move-loop-invariants
在AppName中有i的標志,在上面構造的數據集$ j。 任何人都可以幫我弄清楚這部分sh腳本有什么問題嗎?
GCC_OPT="-O3"
OPT_FLAGS=$("grep $i\ dataset$j\ $FLAGS_IN|sed\ s/$i\ dataset$j//g")
echo $GCC_OPT
echo $OPT_FLAGS
echo "found the validated flags, they are \n $GCC_OPT $OPT_FLAGS"
make -f Makefile.gcc -j4 CCC_OPTS="$GCC_OPT\ $OPT_FLAG"
你引用的時候有點過分熱心。 此外,這里使用cut
比sed
更容易。
OPT_FLAGS=$(grep "$i dataset$j" FLAGS_IN | cut -d " " -f3-)
和
make -f Makefile.gcc -j4 CCC_OPTS="$GCC_OPT $OPT_FLAG"
這是你想要做的:
$ cat file
foo
automotive_susan_s dataset1 -funsafe-math-optimizations ...
bar
$ i=automotive_susan_s
$ j=1
$ sed -n "s/$i dataset$j//p" file
-funsafe-math-optimizations ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.