★itunesを使いこなそうpart3★
■ このスレッドは過去ログ倉庫に格納されています
0582転載君
01/11/05 01:13ID:SWWub7clhttp://www.biwa.ne.jp/~makoto-y/index.html
で、問題の箇所は次のシェルスクリプト
(iTunes.pkg/Contents/Resources/preflight)の箇所だそうな。
「rm -rf $2Applications/iTunes.app 2> /dev/null」
でもって修正後
「rm -rf "$2Applications/iTunes.app" 2> /dev/null」
※「$2」のところに「/Volumes/インストール先のボリューム名/」が入ると思ってね。
読むと、ははんなるほど。と思うわけですが
不慣れな人がシェルスクリプト書くとよくやる間違い。
例えばボリューム名が「Mac HD」だと、こんな感じになります。
「rm -rf /Volumes/Mac HD/Applications/iTunes.app」
これだと、「/Volumes/Mac」と「HD/Applications/iTunes.app」を削除することになる。
もちろん、「/Volumes/Mac」や「HD/Applications/iTunes.app」がなければよし。
(って、これを実行したときどのディレクトリにいるのかというのも問題なのか)
最悪なのがボリューム名の先頭に空白を置いている人で、
その場合、「/Volumes」を消しにいくので、起動システム以外のボリューム全削除。
空白以外の文字でも、もしかしたら問題あるかもしれない。
思い付くのは「*」、「&」、「;」、「?」かな。(他にあったら教えて)
次のような可能性。。。
「*」は正規表現とかで使いますね。
ボリューム名が「Mac*HD」だと
「rm -rf /Volumes/Mac*HD/Applications/iTunes.app」で、
これは「Mac」で始まり「HD」で終るボリュームの「Applications/iTunes.app」を消す。
「?」は「*」より威力がない。
ボリューム名が「Mac?HD」だと
「rm -rf /Volumes/Mac?HD/Applications/iTunes.app」で、
これは「Mac(任意の一文字)HD」のボリュームの「Applications/iTunes.app」を消す。
ボリューム名が「Mac&HD」や「Mac;HD」だと
「rm -rf /Volumes/Mac&HD/Applications/iTunes.app」
あるいは「rm -rf /Volumes/Mac;HD/Applications/iTunes.app」となって、
これは「/Volumes/Mac」を削除します。
と、まぁそういうわけですね。
〜〜〜〜以上転載〜〜〜〜
UNIXって難しいな〜、とりあえず落ち着くまでsage進行ですな・・・
■ このスレッドは過去ログ倉庫に格納されています