GNU/Linux >> Linux の 問題 >  >> Linux

素晴らしく邪悪な同盟 - WSL 関数ラッパーを使用した PowerShell 用の本物の Linux コマンド

最近、コンソール、ターミナル、シェルの違いについて投稿しました。 Windows の世界は興味深いもので、Windows 以外の人には少し奇妙でなじみがありません。 Ubuntu や Mac を使用していて、zsh、bash、pwsh などのシェルを選択している場合でも、Windows に移行すると、タブごとにシェル (そして現在は WSL を備えたオペレーティング システム!) の間を行き来しています。

.NET Core ベースのエンジンと強力なスクリプト言語が好きで、PowerShell のような Windows シェルを使用している場合でも、ls、grep、sed などの一般的な *nix シェル コマンドを見逃す可能性があります。

Windowsで使用しているシェル(powershell、yori、cmdなど)に関係なく、「wslコマンド」を使用してデフォルトのUbuntuインスタンスをいつでも呼び出すことができるため、「wsl ls」または「wsl grep」ですが、それらをより自然に快適に統合します。

Linux コマンドを PowerShell で直接使用できるようにする新しい一連の "関数ラッパー" があるため、複数の環境間で簡単に移行できます。

これは奇妙に思えるかもしれませんが、これにより、Windows と Linux、PowerShell、および bash に出入りする驚くべきパイプ コマンドを作成できます。あなたが、私のように、オペレーティング システムと好みのシェルの選択において無宗派であれば、それは実際には非常に驚くべきことであり、非常に自然なことです.

これらの関数ラッパーは非常にきちんと設計されており、オペレーティング システム間で TAB 補完を公開しています。つまり、PowerShell で Linux コマンドを入力すると、TAB 補完が表示されます!

セットアップはとても簡単です。 Mike Battista の Github から

  • PowerShell コアをインストールする
  • Linux 用 Windows サブシステム (WSL) をインストールする
  • Install-Module WslInterop で WslInterop モジュールをインストールします
  • Import-WslCommand でコマンドをインポート 永続的なアクセスのためにプロファイルから、またはコマンドが必要なときにオンデマンドで (例:Import-WslCommand "awk", "emacs", "grep", "head", "less", "ls", "man", "sed", "seq", "ssh", "tail", "vim" )

Install-Module を 1 つだけ実行し、notepad $profile を実行して、最後の 1 行だけを追加します。必要な WSL/Linux コマンドを公開するように変更してください。完了したら、PowerShell Core を開いてコマンドを組み合わせることができます。

ブログから、「これらの関数ラッパーを配置することで、wsl を前に付けることなく、より自然な方法でお気に入りの Linux コマンドを呼び出すことができるようになりました。 または、Windows パスが WSL パスにどのように変換されるか心配してください:"

  • man bash
  • less -i $profile.CurrentUserAllHosts
  • ls -Al C:\Windows\ | less
  • grep -Ein error *.log
  • tail -f *.log

それは本当に天才的なことであり、それを私たちと共有してくれたマイクに感謝します!今すぐ試してみてください。 https://github.com/mikebattista/PowerShell-WSL-Interop

スポンサー: C#のような?私たちもそうです!そのため、高速でスマートなクロスプラットフォームの .NET IDE を開発しました。これにより、さらに強力なコーディングが可能になります。巧妙なコード分析、豊富なコード補完、インスタント検索とナビゲーション、高度なデバッガー... JetBrains Rider を使用すると、必要なものすべてがすぐに手に入ります。 Linux、Mac、または Windows で、思考の速度で C# をコーディングします。 JetBrains Rider を今すぐお試しください!


Linux
  1. Linuxで印刷するための3つのヒント

  2. 効果的なプロセス管理のための8つのLinuxコマンド

  3. Linux用のWindowsサブシステムの説明、WSLおよびWSL2

  1. 例を挙げて説明する初心者向けの20の基本的なLinuxコマンド

  2. ネットワーク診断用の10のLinuxコマンド

  3. Linuxコマンドを知っている必要があり、WindowsでPodmanを実行し、システム管理者向けのその他のヒント

  1. LinuxファンのためのFreeDOSコマンド

  2. 一般的なLinuxコマンドのチートシート

  3. Sublime Text から Windows Subsystem for Linux (WSL) を使用する