PowerShell 7をインタラクティブシェルとして使う - Linuxをアップデートする

【連載】

PowerShell Core入門 - 基本コマンドの使い方

【第122回】PowerShell 7をインタラクティブシェルとして使う - Linuxをアップデートする

[2020/11/06 08:00]後藤大地 ブックマーク ブックマーク

PowerShellからLinuxをアップデートする

前回までに作ってきた$PROFILEによって、PowerShellからWSLで動作しているLinuxディストリビューションのコマンドをネイティブコマンドのように利用できるようになった。これまでの調整で、大きな問題点はほぼ解決されているはずだ。今回は、この成果を確認してみよう。なお、$PROFILEについては前回の稿末に掲載しているのでそちらを参照していただきたい。

まず、PowerShellからwslfetchやneofetchコマンド(どちらもLinuxのコマンド)を実行してみると、次のようにきちんと動作している。

PowerShellからwslfetchコマンドやneofetchコマンドを実行したところ

WSLのデフォルトのLinuxディストリビューションはUbuntuだ。今から新規セットアップすればUbuntu 20.04 LTSが使われる。上記スクリーンショットでもUbuntu 20.04 LTSが動作していることがわかると思う。この環境はMicrosoft Store経由でインストールが行われている。

Microsoft Storeからインストールしたアプリケーションは、Microsoft Storeや設定アプリからアップデートを行える。だが、WSLで使うLinuxディストリビューションは仕組みが異なっているため、各Linuxディストリビューションが提供している法でアップデートやアップグレードを実施する必要がある。

しかし、それも結局は「コマンドを実行する」ため、PowerShellから行うことができる。まず、次のように「apt update」で最新のメタデータを取得する。

「sudo apt update」でメタデータを更新

後は「suto apt upgrade」でアップグレードを実施すれば最新版へ更新される。

「sudo apt upgrade」でアップグレード開始

「sudo apt upgrade」でアップグレード終了

最初に実行したwslfetchコマンドやneofetchコマンドを実行してみると、次のようにアップデートされたことを確認できる。

wslfetchコマンド/neofetchコマンドを実行してアップグレードされたことを確認

本当にアップグレードされているかどうかは、Ubuntu 20.04 LTS側から同じコマンドを実行すると確認できる。

Ubuntu 20.04 LTSからwslfetchコマンド/neofetchコマンドを実行して確認

「apt update」と「apt upgrade」は通常、Ubuntuにログインした状態で行う作業だが、このように”作り込んだ$PROFILE”を活用するとPowerShellからネイティブなコマンドのようにして実行することができる。

使いたいコマンドが見つからなければ「apt list」で検索して「apt install」でインストールすればよい。

新しいコマンドをインストールすることもできる

Windowsの管理もするし、Linuxのコマンドもよく使うという方ならば、この状態のPowerShellはかなり扱いやすいのではないだろうか。相互の環境を行き来するなかではちょっとした違いがストレスになるが、それを最小限に抑えつつ、美味しいところを使えるようになった。$PROFILEで簡単な設定をしたというより、やや大掛かりな仕組みを導入したような感じになってきたが、将来に渡って楽ができるのだからもうけものだろう。

日々の作業が楽になるなら、自分の環境は自分の使いやすいように変更してしまえばよい。ただし、本連載でも毎回取り上げているように、その変更はなにも一度に行う必要はない。気がついたときに機能を拡張/整理したり、無駄を削除したりと細かい調整を繰り返して$PROFILEを鍛えていけばよいのだ。

しばらく$PROFILEを調整していけばわかると思うが、$PROFILEの中身を複雑にしすぎると逆に$PROFILEが問題の原因になり始めることがある。$PROFILEの内容はあくまでもシンプルに、見通し良く、必要最小限のものだけを書くようにしておきたい。そしてコメントには「何をしているのか」ではなく「なぜそれをしているのか」を書くようにしておく。何をしているのかはスクリプトを読めばわかるので、なぜそのスクリプトを書いたのかという「理由」を記述しておくことのほうが、未来の自分にとって有益だ。

また、$PROFILEを書くことはPowerShellの理解を深めていく上でも役に立つ。PowerShellはシェルのような見た目をしているものの、実際にはオブジェクト指向のプログラミング言語であるため、本格的に使おうとするといろいろな規則を理解する必要が出てくるからだ。$PROFILEを組み上げていく過程で、その機能を調べて習得していくことができる。ぜひとも$PROFILEの活用に取り組んでいただきたい。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

もっと知りたい!こちらもオススメ

【連載】RPA入門 - ツールで学ぶ活用シーン

【連載】RPA入門 - ツールで学ぶ活用シーン

AIには、ルールベース、機械学習、深層学習(ディープラーニング)の3つのレベルがあり、レベルが上がるに連れてより高度な人工知能を実現しますが、AIのスピンオフという位置付けで、Digital Labor(仮想知的労働者)によるホワイトカラー業務の自動化を実現するRPAが注目されています。

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします
注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
ミッションステートメント
教えてカナコさん! これならわかるAI入門
AWSではじめる機械学習 ~サービスを知り、実装を学ぶ~
対話システムをつくろう! Python超入門
Kubernetes入門
SAFeでつくる「DXに強い組織」~企業の課題を解決する13のアプローチ~
PowerShell Core入門
AWSで作るマイクロサービス
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

会員登録(無料)

ページの先頭に戻る