ミドルウェアやフレームワーク、パッケージを導入する際にドキュメントを読みながら導入を進めていくのですが、 Windows の場合はコマンドが動かないことがあります。なぜかというとコマンドは UNIX 系(Linux とか Mac とか)で動かすことを前提に書かれているからです。
ですがいくつかの挙動の違いを理解すれば、コマンドを動くように修正することも可能です。動かないコマンドの例とその対処法を紹介します。
ミドルウェアやフレームワーク、パッケージを導入する際にドキュメントを読みながら導入を進めていくのですが、 Windows の場合はコマンドが動かないことがあります。なぜかというとコマンドは UNIX 系(Linux とか Mac とか)で動かすことを前提に書かれているからです。
ですがいくつかの挙動の違いを理解すれば、コマンドを動くように修正することも可能です。動かないコマンドの例とその対処法を紹介します。
ssh ログイン時に背景色を変えたいと思う時があります。背景色を変えておけばローカルで実行しようとしたコマンドをうっかり本番環境で実施する事故を防げる可能性があるためです。本番はきつめの色にしておけば、危険性が視覚的にわかります。ただ、本番環境なので bashrc を勝手に書き換えるのも・・・ということでローカルだけの変更にとどめておきたいです。
Powershell から COM Object 経由で Excel のシート保護をする(Protect メソッドを呼ぶ)時に、AllowFiltering や AllowUsingPivotTables を指定しようとするとシートが保護されない問題が発生しました。Optional 引数のデフォルト値の指定方法に癖があるようです。それの対処法を紹介します。
Web アプリの動作確認中、エビデンスとしてログファイルを残さなければならない場面とそこそこ出くわすかと思います。Windows でも ssh コマンドを使えるようになったので、それで Linux サーバーに接続しファイルに残すのはいいですが、一緒に画面にも流したいですよね。Linux の tee コマンドにあたる Tee-Object
というコマンドがあるのでそれを使用します。
ある無秩序なフォルダの中から、特定の文言を含むテキストファイルをコピーする必要があったりします。フォルダ内に数ファイルしかない場合は問題ありませんが、100とか超えてくると人間が行う作業ではないですよね。そんな作業が好きな人もいるかもしれませんが、嫌いな人は次の PowerShell を試してみてください。
指定したパスの中にあるファイルの中身を検索したいときに、linux ならば grep を使えばいいのですが、Windows にはそんなコマンドはないのです。Windows でもできないか調べたところ PowerShell を使えばいいようなので試してみました。