私は長らくWindowsをメインで使用していたので Linuxのことはよく知りません。ですのでWindowsに搭載されていないLinuxのコマンドについても詳しく知りませんでした。
エンジニアたるものLinuxを使えて当たり前みたいなことをたまに聞いたりしますが、アプリ開発者はLinuxを触ることってあまり無いんじゃないかなと思います。実際に私もそうでしたし。
さて、これまでアプリ開発をやってきた私ですが今回のプロジェクトではインフラチームの一員として参加することになりました。GUIは動作が重く作業に支障が出ることがあったので、CUI(コマンド)での作業で時短をしてみたかったのでこれはとてもラッキーです。
そこで、コマンドの練習をするべくLinuxを触ろうと思ったのですが「もしかして」と思って Powershell で Linuxのコマンドを確認したところ、なんとWindowsにもLinuxコマンド搭載されていました。なんということでしょう、Windowsでもコマンドを使用しての時短が出来るかもしれません。
ということで、色々試してみました。
curl
ちょうど httpリクエストを投げたいなと考えていたので、まずはcurlコマンドを確認。
> man curl 名前 Invoke-WebRequest 構文 Invoke-WebRequest [-Uri] <uri> [<CommonParameters>] エイリアス iwr wget curl 注釈 Get-Help を実行しましたが、このコンピューターにこのコマンドレットのヘルプ ファイルは見つかりませんでした。ヘルプの一部だけが表示されています。 -- このコマンドレットを含むモジュールのヘルプ ファイルをダウンロードしてインストールするには、Update-Help を使用してください。 -- このコマンドレットのヘルプ トピックをオンラインで確認するには、「Get-Help Invoke-WebRequest -Online」と入力するか、https://go.microsoft.com/fwlink/?LinkID=217035 を参照してください。
搭載されていました。
ls
他のLinuxコマンドも調べてみます。
> man ls 名前 Get-ChildItem 構文 Get-ChildItem [[-Path] <string[]>] [[-Filter] <string>] [<CommonParameters>] Get-ChildItem [[-Filter] <string>] [<CommonParameters>] エイリアス gci ls dir 注釈 Get-Help を実行しましたが、このコンピューターにこのコマンドレットのヘルプ ファイルは見つかりませんでした。ヘルプの一部だけが表示されています。 -- このコマンドレットを含むモジュールのヘルプ ファイルをダウンロードしてインストールするには、Update-Help を使用してください。 -- このコマンドレットのヘルプ トピックをオンラインで確認するには、「Get-Help Get-ChildItem -Online」と入力するか、 https://go.microsoft.com/fwlink/?LinkID=113308 を参照してください。
ls もあるんですね。Windowsではdirのみだと思っていましたが、これは便利です。次いってみます。
crontab
> man crontab Get-Help : Get-Help を実行しましたが、このセッションではヘルプ ファイルの crontab が見つかりませんでした。更新されたヘ ルプ トピックをダウンロードするには、「Update-Help」と入力してください。ヘルプをオンラインで参照するには、TechNet ライ ブラリ (https://go.microsoft.com/fwlink/?LinkID=107116) でヘルプ トピックを検索してください。 発生場所 行:55 文字:5 + Get-Help @PSBoundParameters | more + ~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : ResourceUnavailable: (:) [Get-Help], HelpNotFoundException + FullyQualifiedErrorId : HelpNotFound,Microsoft.PowerShell.Commands.GetHelpCommand
crontab はないようですね。
コマンドで操作すればGUIで操作するよりも格段に作業が早くなります。
これで定時で帰れる。