#author("2023-02-06T12:09:34+09:00","default:ryuichi","ryuichi")
#author("2023-02-06T12:20:25+09:00","default:ryuichi","ryuichi")
* bash.exeの引数のシェル変数をエスケープする [#m36d2e2f]

*** エスケープしないと [#d4940b35]

 PS> bash.exe -c 'ssh linux.sample.com echo $HOME'
 /home/win-user

- WindowsのPowerShell上で上のコマンドを実行すると、
- WSLの$HOMEが表示される

*** エスケープすると [#o32f01ab]

 PS> bash.exe -c 'ssh inetd echo ''\$HOME'''
/home/44/ryy9800
 PS> bash.exe -c 'ssh linux.sample.com echo ''\$HOME'''
 /home/linux-user
- WindowsのPowerShell上で上のコマンドを実行すると、
- linux.sample.comの$HOMEが表示される
- ポイントは2つあり、
- 一つ目は、bash.exeの引数として渡す'''ssh lin... '''の中で、PowerShellでシングルクォートの中でシングルクォートを使うには''' '' '''とシングルクォート2つにしてエスケープすること、
- 二つ目は、''' \$HOME '''とすることでWSL上のシェルで$HOMEが展開されることを防ぐこと

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS