1

助けてくれてありがとう!

この変数を変換したい:

win_path= /cygdrive/g /virtual_tours/.archives/vt_template_8_0_15/test_directory_2/panos

の中へ:

win_path_dir= G: /virtual_tours/.archives/vt_template_8_0_15/test_directory_2/panos

これは私がこれまで持っているものですが、うまくいきません。$win_path をエコーすると、何も返されません (黒、空のスペース)

$win_path=$(echo $i | sed -e 's/\/cygdrive\/g/G\:/g')

乾杯!

4

4 に答える 4

1

あなたのアプローチは良いです、ほんの少しのタイプミスがあります:

win_path=$(echo $i | sed -e 's/\/cygdrive\/g/G\:/g')

$win_path変数 win_path の値を定義するときに ($ なし)を記述しないでください。$win_pathシェルを記述すると、変数の値が展開されます。

于 2012-10-15T07:50:24.530 に答える
0

$変数を定義または設定するときは、変数の前に次のように付けないでください。

win_path=$(echo $i | sed -e 's/\/cygdrive\/g/G\:/g')

$文字列が変数$nameの値に置き換えられます。bashのマンページを参照してください。

于 2012-10-15T07:47:41.810 に答える
0

bash置換の使用:

prefix=/cygdrive/g
win_path=${winpath/#$prefix/G:}

定義prefixは厳密には必要ないことに注意してください。ディレクトリ区切り文字をエスケープする必要がなくなるだけです。以下は問題なく動作しますが、少し読みにくくなります。

win_path=${winpath/#\/cygdrive\/g/G:}
于 2012-10-15T13:00:06.583 に答える
0

ワインが利用できる場合、winepathはその仕事のためのツールです。

于 2012-10-15T10:05:08.277 に答える