BashからPowershellやcmdを実行するなら

    >

今までは、psl ruby -e "puts 'OK'"みたいにやってたんですが、

まぁこれって、察せると思いますが、エラー結構でます。

ruby -e "puts 'OK'"の部分がBashのスクリプトとして機能してしまっていることが原因です。
pslの後に続くコードが長くなればなるほど、エラー率上がります。

少なくとも、このやり方だとpowershellで実行したコードと同じ出力が得られる確証はありません。
エスケープとか、忘れたらエラーになるし、最悪変なコードが実行されて大変なことになりかねません。

ということで、これからはこうすることにしました。

psl - <<'EOF'
ruby -e "puts 'OK'"
EOF

お困りですか?この記事で紹介していることをマンツーマンで指導、解説、代行します。まずはお気軽にお問い合わせください。


関連するかもしれない記事

Bashとahkで数秒ごとにキーをタイプする作業を数回繰り返すスクリプト
WSL BashとPowershellで簡単なタイマーアプリを作る
Bash JSONを整形して出力
bashでaliasなしでコマンドを実行
Bashでunicodeをuft-8へ変換
Bashでインターネットのスピードを計測(ダウンロード/アップロード)
Bash How to make a file null / ファイルを空にする


Close Menu