powershell自定义命令别名

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、查看命令别名
  • 二、常见的别名
  • 三、自定义别名
    • 1.GUI编辑
    • 2.命令行编辑
  • 总结


前言

有时候在windows上使用powershell时候常常苦于别名问题,像我这样的习惯Linux的命令的人感觉很别扭,所幸powershell自己内置了一些别名,但是还远远不够,特别是我希望定义一些和Linux上几乎一样的命令比如mkdir(powershell内置叫md)、mv(powershell内置叫move)这一类的就需要手动操作了。


一、查看命令别名

很简单,使用下面的命令即可:

help Get-ChildItemALIASESgcilsdirll

有点类似于Unix上的ls这个命令,直接看输出中的ALIASES选项就行了,一般在help的最下方,这里说明这个命令有好几个别名,这些别名有个共性:他们执行的效果是一样的。

像Get-ChildItem这种命令的别名除了ll其它都是内置的,ll是自定义的。

二、常见的别名

这里给的不一定是全的,但是我上面介绍的命令可以看到每个命令的别名,有些命令也许没别名,也有些命令的别名看起来很别扭,大家根据喜好酌情使用即可。比如,我更喜欢lsll因为我的Unix习惯,这让我无缝切换,如鱼得水。

在这里插入图片描述
上表中的别名有些powershell和unix是一样的,比如cd、rm等等;有些不一样,比如mv和move,md和mkdir,如果你经常在Windows和Unix之间切换那绝对头大,这个时候我们只要略施小计就可以统一别名,让Windows上有Unix的飘逸或者Unix上有Windows的飘逸,这两者没什么差别。

虽然不能做到100%一样,但是可以节省很多时间在命令切换上。

三、自定义别名

终于到这一步了,我这里使用的是powershell7,powershell2可能略有差别,但是我个人还是喜欢powershell7,所以所有的都是基于7的。

我们要找到配置文件,然后去添加别名,输入下面的命令会显示powershell的配置文件路径:

 $PROFILE#我的路径
C:\Users\anold\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

输出的是我的路径,每个人的不一样,但是没关系,它基本是固定的目录。修改也很简单,要么用命令,要么找到那个目录双击配置文件。

1.GUI编辑

这个太简单了,这里不详细说了。找到那个配置文件,鼠标放上去右键随便选择一个文本管理器打开即可。

2.命令行编辑

notepad.exe $PROFILE

上面的命令是使用电脑自带的记事本软件编辑,切记,记事本软件可以卸载的,你要是没有这个软件这个命令对你无效,你也可以用诸如notepad++一类的,反正只要是能编辑文本的软件都行

打开之后长这样:

# Import the Chocolatey Profile that contains the necessary code to enable
# tab-completions to function for `choco`.
# Be aware that if you are missing these lines from your profile, tab completion
# for `choco` will not function.
# See https://ch0.co/tab-completion for details.
$ChocolateyProfile = "$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
if (Test-Path($ChocolateyProfile)) {Import-Module "$ChocolateyProfile"
}Set-Alias -Name ll -Value Get-ChildItem	

注意:我的配置是原生配置,没有修改过的,如果你安装了其它模组可能不是这样的,不过不影响配置。

现在看到了吧ll这个命令是自定义的,如果我们注释掉再执行help Get-ChildItem那就没ll这个选项了,同样的我们在这里自定义的一切都会追加到指定的命令的别名列表里

你只需要按照下面写就行了,配完之后记得重新打开一个powershell窗口

Set-Alias -Name mv -Value Move-Item
Set-Alias -Name mkdir -Value New-Item

Set-Alias -Name:指定的别名
-Value:后面跟着要设置别名的cmdlet

这个时候Move-Item就多一个mv的别名,New-Item就多了个mkdir的别名。效果其实跟Unix就差不多了,至少最基础的用法是共通的。比如下面的命令:

mv test.txt test1.txt

但是不要等同视之,因为他们的附加参数终究是不一样的,权限管理方式也是截然不同的,所以如何使用还是需要自己摸索。

help Move-ItemALIASESmimovemv

mv的蓝色是网页强调的,不是powershell给的。


总结

1、到了这里基本上别名的基础用法就结束了,复杂的用法以后有机会再说
2、就算加了别名也不代表他们的用法完全一致,不要陷进去
3、我觉得是能提升效率的,感觉powershell一直在尝试从unix中吸收一些东西,至少习惯了unix的人第一次使用powershell的还是感觉很难用,这个地方微软还是做出了妥协的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3267545.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

昇思25天学习打卡营第25天|基于MindSpore的GPT2文本摘要

基于MindSpore的GPT2文本摘要 Tips:安装依赖库 pip install -i https://pypi.mirrors.ustc.edu.cn/simple mindspore2.2.14 pip install mindnlp下载数据集: from mindnlp.utils import http_get# download dataset url https://download.mindspore.…

Android AutoSize屏幕适配:适配不同屏幕大小的尺寸,让我们无需去建立多个尺寸资源文件

目录 AutoSize是什么 AutoSize如何使用 一、AndroidautoSize是什么 在开发产品的时候,我们会遇到各种各样尺寸的屏幕,如果只使用一种尺寸去定义控件、文字的大小,那么到时候改起来就头皮发麻。以前使用dime的各种类库,文件太多…

敏捷CSM证书国家认可嘛?有什么价值?

CSM证书,全称为Certified Scrum Master,是由Scrum Alliance(敏捷联盟)颁发的一项国际公认的敏捷管理领域认证。该证书不仅在全球范围内受到广泛认可,也在国内得到了业界的广泛关注和重视。 CSM证书的背景 CSM证书是基…

从原理到实践:开发视频美颜SDK与主播美颜工具详解

本篇文章,笔者将深入探讨视频美颜SDK的开发原理和实践应用,重点介绍如何打造一款功能强大的主播美颜工具。 一、视频美颜的基本原理 视频美颜的核心在于图像处理技术,主要包括面部识别、图像增强和特效处理。 1.面部识别 常见的面部识别算…

Codeforces Round 874 (Div. 3)(A~D题)

A. Musical Puzzle 思路: 用最少的长度为2的字符串按一定规则拼出s。规则是&#xff1a;前一个字符串的尾与后一个字符串的首相同。统计s中长度为2的不同字符串数量。 代码: #include<bits/stdc.h> #include <unordered_map> using namespace std; #define N 20…

昇思25天学习打卡营第20天|CV-ResNet50图像分类

打卡 目录 打卡 图像分类 ResNet网络介绍 数据集准备与加载 可视化部分数据集 残差网络构建 Building Block 结构 代码实现 Bottleneck结构 代码实现 构建ResNet50网络 代码定义 模型训练与评估 可视化模型预测 重点&#xff1a;通过网络层数加深&#xff0c;感知…

如何让微课视频更生动?试试这些实时美颜录屏软件!

在数字化教学的浪潮中&#xff0c;真人出镜的微课变得越来越受欢迎。除了清晰的讲解声&#xff0c;老师们偶尔需要亲自出镜&#xff0c;结合生动有趣的动画元素或实地拍摄&#xff0c;让知识传递更加直观和有趣。但问题来了&#xff0c;如何在录制微课时&#xff0c;让摄像头下…

Spring Boot 引入 Guava Retry 实现重试机制

为什么要用重试机制 在如今的系统开发中&#xff0c;为了保证接口调用的稳定性和数据的一致性常常会引入许多第三方的库。就拿缓存和数据库一致性这个问题来说&#xff0c;就有很多的实现方案&#xff0c;如先更新数据库再删除缓存、先更新缓存再更新数据库&#xff0c;又或者…

C++ | Leetcode C++题解之第278题第一个错误的版本

题目&#xff1a; 题解&#xff1a; class Solution { public:int firstBadVersion(int n) {int left 1, right n;while (left < right) { // 循环直至区间左右端点相同int mid left (right - left) / 2; // 防止计算时溢出if (isBadVersion(mid)) {right mid; // 答案…

错误解决 error CS0117: ‘Buffer‘ does not contain a definition for ‘BlockCopy‘

Unity 2022.3.9f1 导入 Runtime OBJ Importer 后出现&#xff1a; error CS0117: ‘Buffer’ does not contain a definition for ‘BlockCopy’ 解决办法&#xff1a; 源代码&#xff1a; int DDS_HEADER_SIZE 128; byte[] dxtBytes new byte[ddsBytes.Length - DDS_HEAD…

MediatR 使用记录-发布订阅运行机制测试

注意&#xff1a;mediatR发布-订阅&#xff0c;订阅方是多个的时候是串行的&#xff0c;一个执行完才执行下一个 // 发送部分代码Console.WriteLine($"{DateTime.Now}-发送开始-");mediator.Publish<TestEvent>(new TestEvent("nancy"));Console.Wr…

HarmonyOS NEXT零基础入门到实战-第四部分

自定义组件: 概念: 由框架直接提供的称为 系统组件&#xff0c; 由开发者定义的称为 自定义组件。 源代码&#xff1a; Component struct MyCom { build() { Column() { Text(我是一个自定义组件) } } } Component struct MyHeader { build() { Row(…

Charles的使用配置(二)

Charles基础设置 抓包端口&#xff1a;Proxy->Proxy settings,全部选 设置系统的代理服务器 Charles电脑证书配置 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/304c604776bc45d59463c621c5a097e6.png Charles端设置SSL的端口 Proxy->ssl Proxying…

MSP430芯片解锁 以立创开发板 ti开发板为例

参考自无名小哥的ppt第二部分自下而上读 b站视频讲解&#xff1a;

安卓嘀嗒清单v7.2.2.2高级版

软件介绍 TickTick是一款轻便高效的任务管理、日程管理&#xff08;GTD&#xff09;和时间管理应用&#xff0c;配备强大的记事和提醒功能。你可以在手机、平板、网页等多达11个平台上使用滴答清单记录大小事务、制定工作计划、整理购物清单、设置生日提醒&#xff0c;甚至安排…

【React】项目的目录结构全面指南

文章目录 一、React 项目的基本目录结构1. node_modules2. public3. src4. App.js5. index.js6. .gitignore7. package.json8. README.md 二、React 项目的高级目录结构1. api2. hooks3. pages4. redux5. utils 三、最佳实践 在开发一个 React 项目时&#xff0c;良好的目录结构…

SpringCloud注册中心

SpringCloud注册中心 文章目录 SpringCloud注册中心1、注册中心原理2、Nacos注册中心2.1、部署nacos 3、服务注册4、服务发现 1、注册中心原理 在大型微服务项目中&#xff0c;服务提供者的数量会非常多&#xff0c;为了管理这些服务就引入了注册中心的概念。注册中心、服务提…

【数据结构】链表之LinkedList(无头双链表实现 + 详解 + 原码)

Hi~&#xff01;这里是奋斗的明志&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f331;&#x1f331;个人主页&#xff1a;奋斗的明志 &#x1f331;&#x1f331;所属专栏&#xff1a;数据结构 &#x1f4da;本系列文章为个人学…

让你的程序有记忆功能。

目录 环境 代码 环境 大语言模型&#xff1a; gpt-40-mini Mem0: Empower your AI applications with long-term memory and personalization OpenAPI-Key: Mem0-Key&#xff1a; 代码 import osfrom dotenv import load_dotenv from openai import OpenAI from m…

ili9341数据手册中的常用命令

一.设置液晶显示窗口 根据液晶屏的要求&#xff0c;在发送显示数据前&#xff0c;需要先设置显示窗口确定后面发送的像素数据的显示区域。下面的0x2A和0x2B分别对应的是y轴与x轴的命令。 /********** ILI934 命令 ********************************/ #define CMD_SetCoor…