Ubuntu18.04にPowerShellをインストールして使う手順
Photo by Luca Bravo on Unsplash
はじめに
最近はMicrosoft社も色々な面でLinuxを意識した動きを見せています。その一例として、元々はWindowsのみでしか動作しなかったPowerShellを2018年にはオープンソース化し、Linuxにもインストールして使えるようになりました。この記事では、Ubuntu18.04にPowerShellをインストールする手順をまとめます。
前提と環境
以下の環境となります。
- OS : Ubuntu 18.04
UbuntuにPowerShellをインストールする
以下のMicrosoftの公式マニュアルページにインストール手順が書かれているのでそれに沿って行います。ここではUbuntuにインストールしますが、上記の公式マニュアルページにはRedHat系におけるインストール手順も詳しく書かれています。
さまざまな Linux ディストリビューションへの PowerShell Core のインストールに関する情報
いくつかのインストール方法が提示されていますが、ここではパッケージリポジトリによるインストールを行います。はじめに、以下のコマンドによりMicrosoftのリポジトリのGPGキーをダウンロードして登録します。
# MicrosoftのリポジトリのGPGキーをダウンロードする
$ wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
# GPGキーを登録する
$ sudo dpkg -i packages-microsoft-prod.deb
続いてupdate
コマンドを実行し、「universe」リポジトリを有効化します。
$ sudo apt update
$ sudo add-apt-repository universe
なお、すでに「universe」リポジトリが有効化されている場合は、以下のように表示されます。
$ sudo add-apt-repository universe
'universe'のコンポーネントはすべてのソースで有効になっています。
Ubuntuには4種類のリポジトリがあり、「universe」はその1つです。詳しくは以下の記事がとても参考になりました。
Ubuntu Japanese Teamメンバーによるインストール高座じゃなかった、インストール講座が開講!まずは、いろいろありすぎて選ぶのに迷う、Ubuntuの各バージョンの特徴を直球で解説しちゃうぞ。
あとは以下のようにaptコマンド経由でPowerShellをインストールすることができます。おおよそ159MBほどダウンロードされインストールされます。
$ sudo apt-get install -y powershell
以上でイPowerShellのンストールが完了です。
PowerShellの動作確認を行う
試しにPowerShellコマンドのpwsh
を実行してみると、以下のように入力待ち状態となります。
$ pwsh
PowerShell 6.2.2
Copyright (c) Microsoft Corporation. All rights reserved.
https://aka.ms/pscore6-docs
Type 'help' to get help.
PS /home/myuser>
上記でdir
と入力して実行すると、ディレクトリ下のファイルとディレクトリが表示されます。
あとはPowerShellでスクリプトを実行したりコマンドを実行したりすることができます。exit
と入力しEnterキーを押下すると入力待ち状態が修了します。
PowerShellスクリプトを実行する
また、適当に以下のようなhello.ps1
という名前でPowerShellスクリプトを作成します。
Write-Host "Hello World!"
PowerShellの入力待ち状態で、以下のように作成したhello.ps1
を実行できます。
PS /home/myuser> ./hello_pwsh.ps1
Hello World!
bashからPowerShellスクリプトを実行する
実行権限を与えて1行追記すればその他のシェルスクリプトと同様にシェルから実行することもできます。 具体的には、まずスクリプトの先頭にPowerShellスクリプトであることを明記します。
#! /usr/bin/pwsh
Write-Host "Hello World!"
実行権限を与えます。
$ chmod +x hello-bash.ps1
以下のように作成したhello.ps1
を実行できます。
$ ./hello-bash.ps1
Hello World!
まとめ
PowerShellをLinux上でも簡単に使用できるようになりました。Linuxにはすでにより強力なコマンドツールが十分にあるため、おそらくLinuxユーザがより快適なコマンドツールやスクリプト言語を求めてPowerShellに移行するということはないと個人的に思っています。しかし、PowerShellや.NETをどうしても使用しない開発者も一部にはおり、それらの開発者にとってはとても有り難いことだと思います。
関連記事
- 公開日:2020/02/16 更新日:2020/02/16
圧縮、暗号化、リモート対応の差分バックアップを作成できる「Borg Backup」の使い方
圧縮、暗号化に対応し差分バックアップを作成できるソフトウェアである「Borg Backup」をUbuntuにインストールして使ってみたのでその手順をまとめます。「Borg Backup」はLinux、macOSに対応しています。
- 公開日:2020/02/14 更新日:2020/02/14
自分専用の後で読むサービスを構築できる「Wallabag」をUbuntu + Nginxで構築する手順
後で読むサービスのPocketにかなり近く、機能豊富なオープンソースのWallabagをUbuntuにインストールしたのでその手順をまとめます。
- 公開日:2020/02/12 更新日:2020/02/12
ファイル単位で暗号化して保存できるCryptomatorをインストールして使う手順
Cryptomatorは、ファイル単位での暗号化が可能なソフトウェアです。この記事では、UbuntuにCryptomatorをインストールする手順と使い方をまとめます。
- 公開日:2020/01/22 更新日:2020/01/22
WireGuardでVPNサーバーを構築してスマホやPCから接続する手順
WireGuardはOpenVPNよりもシンプルで高速、より安全なVPNとして開発が進められており、OpenVPNに代わるVPNとして期待されています。この記事ではWireGuardを使ってVPNサーバーを構築し、そのVPNサーバーにUbuntuやiPhoneから実際に接続してみるまでの手順をまとめます。
- 公開日:2020/01/17 更新日:2020/01/17
ディレクトリ表示や移動をインタラクティブに実行できるコマンドツール「Broot」
Linuxで端末を使っている時にディレクトリ構造をざっくり確認したり各ディレクトリにどのようなファイルが入っているかを確認したりしたい場合があると思います。Brootはディレクトリ構造を表示しつつさらにそこから各ディレクトリに移動したりファイルを検索したりできるコマンドラインツールです。