CUIでのファイル作成で使う「touch」コマンドは、WindowsPowerShell(以下PS)では使うことができません。
詳細は後述しますが、PSでファイルを作成する場合、専用の「New-Item」というコマンドを用います。
尚、今回はその「New-Item」コマンドも取り上げますが、個人的には「bash」を入れて両方使い分けることをおすすめします。
特に参考にしてほしい方
- Windows環境PS(またはコマンドプロンプト)をお使いの方
- CUIを使うことをなんとなく避けている方
PowerShellでtouch相当のコマンド(ファイル作成)は「New-Item」
PSではlinux系の「touch」とは全く異なり、文字通り「New-Item」でファイル生成を行います。
現在のディレクトリに「test.txt」を作成する場合は、下記のコマンドで生成ができます。
New-Item test.txt
公式の方をご確認いただけると分かりますが、パラメータをかなり省略しています。
正式に記述すると、以下のようになります。
New-Item -Path . -Name "test.txt" -ItemType "file"
それぞれ、「Path」パラメータでカレント「.」を、「Name」でファイル名を、「ItemType」でファイルやディレクトリなどの種類を表します。
つまり、「New-Item」コマンドは「touch」と「mkdir」、加えてPS用のプロファイルも生成可能な万能コマンドです。
良し悪しは別にして、一つのコマンドにまとめられた形ですね。
そもそも論-PSを使う意味があるのか
可能/不可能でいえば可能のようですが、恐らくlinuxにPSをインストールして使うことは少ないと思います。
Windows以外の開発はしないと確定している方を除き、linuxで使えるコマンドを覚えた方が効率的です。
特に開発をこれから始める、または始めたばかりの方は、慣れるためにもlinuxと同等のCUIを提供するターミナルで操作することをおすすめします。
WindowsのCUIは「Git Bash」がおすすめ
「Git Bash」は、Windows用の「Git」である「Git for Windows」に付随してインストールされるターミナルです。
linuxでは一般的な「bash」の機能を使うことができます。
gitを入れなくてもWindows10から「bash」を使うことができるようですが、git自体必要で設定も楽なので「Git Bash」経由をおすすめします。
PSを使うより検索もヒットしやすくなり、エラーも減らすことができるでしょう。
PSを使う機会-「venv」の起動はしやすい
Pythonの仮想開発環境を構築するツールで「venv」があります。
作成した環境をターミナルから起動できるのですが、これはPSやコマンドプロンプトの方が使いやすいです。
PSで起動できるので解決法を探しはしませんでしたが、bashからの起動ではエラーが発生していました。
どうせならPSもbashも両方使ってしまおう
メインをbashにするのはおすすめですが、結局状況によって使い分けることが良いと思います。
使用しているOSがWindowsである限り、MicrosoftとしてはPSかコマンドプロンプトを指定してきます。
Windowsの設定を変更する場合や、環境変数などを設定する場合は、公式に従いPSなどを使いましょう。
VisualStudioCodeならターミナルの切り替えは簡単
もしエディタがVSCodeなら、簡単にターミナルを切り替えることができます。
画像の右下にある「+」マークから使用できるターミナルから選ぶことが可能です。
同じターミナルを複数起動することも可能です。
想定する状況としては、リアルタイムログを受信中に他からコマンドを送る、などでしょうか。
普段は「bash」を使い、状況によって「PowerShell」も使い分けよう!
目的が早く確実に達成できるのであれば、ターミナルは何を使っても良いと思います。
もちろん、ドキュメントを残して他のメンバーが参画できることは前提です。
その前提に立てば、以下のポイントで選択すればOKだと思います。
- OSやミドルウェアの影響をなるべく受けないこと
- (パラメータを含め)他のコンピュータでも実行がしやすいこと
OSに依存しにくいものはbashで、OSの設定や公式で指定されているときはそのターミナルを使って、快適な開発ライフを送りましょう。