powershellと同等のbashエイリアス?


11

デフォルトでは、Windows PowerShellはで起動しC:\Users\Santoshます。XAMPPインストールはD:\htdocsフォルダーがにあるためD:\xampp\htdocsです。htdocsフォルダーの何かを編集する必要がある場合は、fullと入力する必要がありますcd D:\xampp\htdocs\ (オートコンプリートはそれほど親切ではありません)。そのファイルを編集します。

このPowerShellがBashの場合、.bash_aliasesファイルで次のようにします。

alias htdocs='cd D:\xampp\htdocs'

PowerShellでファイルやエイリアスコマンドなどのBashエイリアスを維持することは可能ですか?

回答:


12

あなたは、set-aliasコマンドをpowershellスクリプトまたは関数と組み合わせて使用​​したいと考えています。だからエディターを開いて書いてください:

set-location d:\xampp\htdocs

このファイルを、たとえばc:\ Users \ kumar \ htdocs32.ps1に保存するか、次のような関数を作成できます。

function htdocs32 { set-location d:\xampp\htdocs }

スクリプトを実行するには、スクリプトをローカルで許可する実行ポリシーを設定する必要があります。管理者としてpowershellコマンドラインを開き、次のように入力します。

set-executionpolicy remotesigned

これで、powershellスクリプトのエイリアスを設定できるようになりました。

set-alias htdocs c:\Users\kumar\htdocs32.ps1

htdocsと入力すると、htdocsフォルダに移動します

Powershellは、いわゆるコマンドレットの命名に動詞と名詞の組み合わせを使用しています動詞はあなたが何をしたいか、そして何をしたいかを表す名詞を指します。

使用するset-aliasコマンドのヘルプを表示するには:

get-help set-alias -full  |more 

そして、それ以上のものはありません。他の方法はこれを読むことですhttp://technet.microsoft.com/en-us/library/ee176958.aspx

また、Power Shellから始めるには、次のURLを確認することをお勧めします。http//www.powershellpro.com/powershell-tutorial-introduction/

エイリアスを永続的に保存するには、エイリアスをユーザープロファイルに保存する必要があります。まず、次のコマンドを使用して、プロファイルがすでに配置されているかどうかをテストします。

PS C:\> $profile

あなたが取得した場合にはfalseを次のように入力して、新しいプロファイルを作成することができます。

 New-Item -path $profile -type file -force

これでファイルを編集できます

c:\Users\kumar\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

そして、関数definitonとエイリアスを入れます。上記のように。

ただし、Linuxでこれにエイリアスを設定する必要はありません。sicne〜/ .bahsrcで設定できるbashの環境変数$ CDPATHがあります。


これらのエイリアスが保存されているファイルはありますか?バックアップしておけば大いに役立ちます。
Santosh Kumar

入手Cannot resolve alias 'htdocs' because it refers to term 'cd D:\xampp\htdocs', which is not recognized as a cmdlet, function, operable program, or script file. Verify the term and try again.行う上でset-alias htdocs "cd D:\xampp\htdocs"
Santosh Kumar氏を

わかりました、ckdletを記述してください。テキストエディターを開き、次のように書き込みます:set-locaation c:\ xampp \ htdocsこのファイルをhtdocs32.ps1として保存します。htdocs32.ps1がc:\ Users \ kumar \ htdocs32.ps1に保存されていると仮定すると、set-alias htdocs c:\ Users \ kumars \ htdocs32.ps1を使用できます。実行ポリシーを適切に設定していることを確認してください。
l1zard

@SantoshKumarソリューションでは、ドライブを変更してからディレクトリを変更するために '/ d'フラグが必要です|| "cd / d D:\ xampp \ htdocs"
Eddie B

2

実際にこれを試すことができます。自動的にロードされるモジュールが作成されます。

C:\ Users \ kumar \ Documents \ WindowsPowerShell \の下

存在しない場合は、新しいフォルダModulesを作成します。

PS C:\>mkdir Modules

[モジュール]の下に、ex: "Quicky"というフォルダコールを作成します。

PS C:\>mkdir Quicky

「quicky.psm1」というファイルを作成します。.psm1はモジュールの拡張子です。

ファイルを編集して、その行を追加します。

function htdocs32 { set-location d:\xampp\htdocs }

モジュールを保存します。

次に、関数「htdocs32」を呼び出します

PS C:\>htdocs32

0

制限されていないPowerShellスクリプト実行ポリシーがある場合は、スクリプトでそれを実行できます。BASHとは異なり、Windowsスクリプト完了後にシェルに影響を与える可能があるため、同等のエイリアスまたはbash関数は必要ありません。

htdocs.ps1 (これをPATHのどこかに置くと、私はcdhtdocs.ps1を自分で使いますが、それはあなたの命名規則です)

chdir "d:\xampp\htdocs"

注:これ、必要に応じてドライブを変更する場合にも機能します。つまり、c:\ temp \で作業を開始した場合に機能します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.