2017-05-21 5 views
0

こんにちは私は中かっこを持っています。MinGWでバッチファイルを解析する

Ming64Wコマンドウィンドウでバッチファイル経由でSeleniumのWebドライバをダウンロードしようとしています。

Ming64このコマンドが機能:

curl -vs https://github.com/mozilla/geckodriver/releases/latest/ |grep -i "v0.16.1"|cut -d\" -f2 

しかし、私はバッチファイルでそれを実行したときに、私は、コマンドラインパーサが実行される順番を理解する問題を抱えています。

このコード:cutための区切り文字は単一の文字でなければならず、\"が有効なバッチファイルの区切り文字ではありませんので、

#GetFF.bat 
curl -vs https://github.com/mozilla/geckodriver/releases/latest/ |grep -i "v0.16.1"|cut -d^^^" -f2 

は動作しません。

答えて

0

だから、これはすべて悪い考えです。問題は、DOSバッチファイルを扱うパーサーが、そのようにトークンを取り除く一方で、bashがそうでないことです。したがって、パーサーはお互いに対してデッドロック状態になります。簡単に修正できます。 xmllintとbsdtarの助けを借りて、UNIXコマンドをやり直してください。コード: curl -vs https://chromedriver.storage.googleapis.com |xmllint --format -|grep -i "$win32"|grep -i "<Key>$forceversion"|cut -d '>' -f2|sort -nrk1|head -1|cut -d '<' -f1|awk '{system("curl -o '$win32' https://chromedriver.storage.googleapis.com/"$1)}'|bsdtar -xf - -C chromedriver-x86.exe

関連する問題