bash 别名相当于 powershell 吗?

bash 别名相当于 powershell 吗?

默认情况下,我的 Windows PowerShell 启动于C:\Users\Santosh,我的 XAMPP 安装在 ,D:\因此 htdocs 文件夹位于D:\xampp\htdocs。如果我需要在 htdocs 文件夹中编辑某些内容,则必须输入 fullcd D:\xampp\htdocs\ (自动完成功能不太好用)然后编辑该文件。

如果这个 PowerShell 是 Bash,我会在 .bash_aliases 文件中执行以下操作:

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

是否可以在 PowerShell 中维护 Bash 别名(如文件和任何命令的别名)?

答案1

你想要设置别名命令与 powershell 脚本或函数结合使用。因此,打开编辑器并输入:

set-location d:\xampp\htdocs

并将此文件保存到例如c:\用户\kumar\htdocs32.ps1或者您可以创建这样的函数。

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

要执行脚本,您必须在本地设置允许脚本的执行策略。以管理员身份打开 powershell 命令行并输入:

set-executionpolicy remotesigned

现在您可以为 powershell 脚本设置别名:

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

然后输入 htdocs now 将会进入你的 htdocs 文件夹

Powershell 正在使用动词名词用于命名所谓的 cmdlet 的组合。动词表示你想做什么,名词表示你想做某事。

要获取要使用的 set-alias 命令的帮助:

get-help set-alias -full  |more 

并没有更少。另一种方法是阅读这个http://technet.microsoft.com/en-us/library/ee176958.aspx

另外,要开始使用 power shell,我建议您查看这个网址:http://www.powershellpro.com/powershell-tutorial-introduction/

要永久保存别名,您必须将其保存在用户配置文件中。首先使用以下命令测试配置文件是否已存在:

PS C:\> $profile

如果你得到错误的您可以通过输入以下内容来创建新的配置文件:

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

现在你可以编辑文件

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

并输入函数定义和别名。如上所述。

但是在 Linux 中为此设置别名是没有必要的。因为 bash 有一个环境变量 $CDPATH,可以在 ~/.bahsrc 中设置。

答案2

实际上您可以尝试一下,它将创建一个自动加载的模块。

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

如果不存在,则创建一个新的文件夹 Modules。

PS C:\>mkdir Modules

在模块下创建一个名为“Quicky”的文件夹

PS C:\>mkdir Quicky

创建一个名为“quicky.psm1”的文件,.psm1 是模块的扩展名。

编辑文件并添加该行。

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

保存模块。

然后只需调用函数“htdocs32”

PS C:\>htdocs32

答案3

有时function在 PowerShell 中, 比 别名 效果更好。与 bash 不同alias,WindowsSet-Alias需要单个单词赋值,而不是由多个元素组成的命令字符串。

PS > function cal { bash -c cal }

PS > cal

     April 2023
Su Mo Tu We Th Fr Sa
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30

答案4

我为此苦苦挣扎了一段时间,并编写了这个 PowerShell 模块:

https://www.powershellgallery.com/packages/HackF5.ProfileAlias

https://github.com/hackf5/powershell-profile-alias

要开始使用,请通过以下方式安装:

Install-Module HackF5.ProfileAlias
Register-ProfileAliasInProfile

然后像这样使用它:

Set-ProfileAlias dkfeed 'Enter-Docker feed_app_container' -Bash

我自己已经使用了一段时间并且发现它非常有用。

(它只能在 PS 7.0 上运行,因为我是为自己编写的)。

相关内容