我已经苦苦挣扎了两个小时来弄清楚我的这个脚本的问题。当我在没有任何变量的情况下静态使用它时,它会获取 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 和 dataset$j 中具有上述结构的 i 标志。谁能帮我弄清楚我的 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"