Windows 10 上で cmd.exe と WSL のシェル (Bash) とを行き来していると、標準的なコマンドの差で躓くことが多々あります。私は Bash の方が良く使うので、特に cmd.exe 上で Linux 用のコマンドを誤って打ち込んでしまうことがあります。

たとえば cmd.exe 上で ls と打って「コマンドとして認識されていません」という趣旨のエラーが出て初めて dir を思い出すことが良くあります。他にも文字列を出力するつもりでecho foobar と打ってしまうと、cmd.exe 側にある同名の別コマンド echo が呼び出されてしまいます。

このような打ち間違いは、上のような例だとかわいいものですが、きっといつかもっと深刻な例を引き起こすのではないかと心配しています。

そこで、何かしら打ち間違い自体を阻止したり、打ち間違いがあっても実行前にエラーや確認メッセージが出るなどして最低限の影響で抑えられたりするような、技術的な解決法はないでしょうか? 「cmd.exe で操作するときは伸びをしてからにする」みたいな慣習的方法ではなく、機械による (半) 自動的な方法を探しています。使用頻度は cmd.exe の方が低いので、cmd.exe 側は多少操作が面倒になっても大丈夫です。cmd.exe を使うのは、たとえば Windows 側にインストールされた Go コンパイラを使いたいときなどです。

ただし cmd.exe 側のコマンドにあまり詳しくないのでそもそも「どっちでも動いてしまうようなコマンド」がどの程度あるのかも良く分かっておらず、この心配が杞憂の可能性もあるとは思っています。そうであればそのように回答頂ければ幸いです。