1. まとめ
クロスプラットフォーム構文を使用してコマンド出力を変数として使用する方法がわかりません。
2. 例
たとえば、私は私のリモートGitリポジトリのURLを取得します。:
SashaChernykh@DESKTOP-EEOT0TN /cygdrive/d/SashaBranchReleaseIt
$ git ls-remote --get-url
https://github.com/Kristinita/SashaBranchReleaseIt.git
私コマンドの実行Linux/Cygwinでは:
SashaChernykh@DESKTOP-EEOT0TN /cygdrive/d/SashaBranchReleaseIt
$ echo "URL is `git ls-remote --get-url`"
URL is https://github.com/Kristinita/SashaBranchReleaseIt.git
Windowsで同じコマンドを実行していますcmd.exe
。
D:\SashaBranchReleaseIt>echo "URL is `git ls-remote --get-url`"
URL is `git ls-remote --get-url`
または
D:\SashaBranchReleaseIt>echo "URL is $(git ls-remote --get-url)"
URL is $(git ls-remote --get-url)
動作しません。
WindowsとUNIXの両方と互換性のある構文が見つかりませんでした。
3.条件
3.1。予期しない
デフォルトのWindowsでコマンドを実行するソリューションを探していますcmd.exe
。 Windowsユーザーは、Windowsまたは他の端末用のCygwinまたはBashを構築する義務はありません。
3.2。予想
WindowsユーザーPath
環境変数に追加可能Cygwinへの道、GnuWin32 CoreUtilsWindowsに移植されたUNIXツールへのコマンドまたはパス。
4. 役に立たない
- トラブルシューティング方法の答えが見つかりません。この問題。
5.提供されていません
- はい、わかりました。 Windowsでも同様の動作が発生する可能性があります(はい)、Windows専用です。 Windows関連のコマンドではなく、クロスプラットフォームのコマンドを探しています。