10.6のXcode 3.2でHEADER_SEARCH_PATHS環境変数を解析しようとしています。私は、引数リストをループして-Iを付加して、GCCにそのすべてを渡すことができるように、私は、シェルの引用規則のすべて以下、この文字列を分割する必要がコンソールに入力した場合と同じように、文字列を引数リストに解析しますか?
"~/My Path with Spaces" /usr/local /myrootpath
:それはのようなパスの文字列ですこのように:
gcc -I"~/Path with Spaces" -I/usr/local -I/myrootpath
私はawk、sed、set、$ @、すべてを勉強しました。 1でのインクルードパスを設定し、gccのツールがあるかどうか、私も興味
arg :"~/Path:
arg 1:with:
arg 2:Spaces":
arg 3:/usr/local:
arg 4:/myrootpath:
:私はこれが働いているだろうと思った:
set -- $HEADER_SEARCH_PATHS
for arg in [email protected]
do
echo "arg $i:$arg:" >> mytestfile.txt
let "i+=1"
done
をしかし、結果はので、それが唯一のスペースに分割しますステップ。私は何か基本的なものを欠いているに違いないありがとう!あなたは私はあなたが欲しいものを得るだろうと思いますし、システムとの最後のプリントを交換する場合
あなたは 'evalのセットを意味した - のいずれかを持っているだろう、この特定のケースでは...' –
彼のパスは ' - 'で始まらないので働いた。しかし、 '--'を使うと助けになるだけなので追加しました。キャッチをありがとう – SiegeX
こんにちは!あなたのソリューションは、これらのページに私を導いた:http://stackoverflow.com/questions/1297529/iterating-over-options-and-quoted-unquoted-arguments-passed-to-bash-scriptとhttp://stevemorin.blogspot。 com/2006/04/bash-loop-through-parameters.htmlと書かれていましたが、最終的にevalや関数を使ってソリューションを作ったので、$ 1でshiftを使っています。私は新しいので、あなたに信用を与える方法を知らないのですか? –