首页 > 系统相关 >如何在 Linux 和 Mac 终端命令中添加别名

如何在 Linux 和 Mac 终端命令中添加别名

时间:2024-04-19 18:13:03浏览次数:31  
标签:shell 配置文件 alias 别名 命令 Mac 终端 Linux

在本文中,我们将探讨一种简单的技巧,可以节省您在终端中输入重复命令的时间。

作为开发者,我们花费大量时间在终端上执行命令。无论是浏览目录、运行脚本、更改 Node.js 版本还是版本控制命令,手动输入每个命令都是一项耗时的任务。

对于那些难以记住命令或其关联标志的人来说,这可能变得更加乏味。

别担心!这个问题有一个简单而强大的解决方案。它被称为终端别名。

(本文视频讲解:java567.com)

alias 命令

alias 命令允许您为现有命令创建快捷方式,使它们更容易记住和更快执行。当您定义别名时,实际上是为现有命令创建了一个新标签。

alias 命令的语法

语法很简单:您可以像在大多数编程语言中为变量赋值一样将命令分配给标签。

alias 别名='长命令'

设置别名的语法

让我们解析这个命令以更好地理解它:

  • alias:启用定义别名的终端命令。
  • 别名:这是您要分配给命令的名称或标签。基本上,您将在终端中键入此名称,而不是完整的命令。
  • '长命令':这是您要添加别名的命令。请确保用单引号 (') 包装命令,因为几乎所有命令都包含空格或特殊字符。

预定义别名

终端中已经设置了一些预定义别名。很有可能您甚至不知道它们的存在。

这些别名在系统(/etc/bash.bashrc)或用户特定(~/.bashrc)的 shell 配置文件中定义。

您可以通过执行不带任何选项或标志的 alias 命令来找到所有预定义别名的列表。

alias

以字母顺序列出所有预定义和用户定义的别名。

如何创建跨会话持久的别名

默认情况下,别名仅在当前会话中持久。这意味着,如果您关闭终端,则别名将被删除,之后您将无法使用它。

为了解决这个问题,您必须在 shell 的配置文件中定义别名。Shell 是一个解释器,驻留在终端内部,并在您和操作系统之间建立接口。因此,访问正确的 shell 以及修改正确的配置文件非常重要。

以下是三个最常用的 shell 应用程序的配置文件:

  1. Bash~/.bashrc
  2. Zsh~/.zshrc
  3. Fish~/.config/fish/config.fish

让我们尝试在 Bash 中添加一个新别名。

echo "alias nrd='npm run dev'" >> ~/.bashrc

让我们解析这个命令:

  • echo:一个终端命令,允许您在终端命令中写入内容。
  • "alias ...":这是我们在前面讨论的内容。它是一个别名命令,为 npm run dev 命令添加了 nrd 别名。
  • >>:告诉终端将左侧的内容(别名命令)追加到右侧的文件中。在我们的情况下,我们将其存储在 bash 配置文件中。
  • ~/.bashrc:这是从 echo 命令添加内容的文件。

不要忘记将 ~/.bashrc 替换为您的 shell 配置文件。

如何创建动态别名

通常情况下,您需要使用重复的命令,但根据您的需求稍作修改。最好的例子是 Git 命令。在这种情况下,您可以为命令添加一个替代项,该替代项在终端执行时将被动态选项/参数替换。

alias gpll='git pull --rebase origin ${branch}'

在执行命令时,您需要将 ${branch} 替换为您想要从中拉取更改的分支。这是从 main 分支拉取更改的方式:

gpll main

您还可以为别名添加多个替代项。只需确保以正确的实际值顺序编写别名即可:

alias gpll='git pull --rebase ${remote} ${branch}

在执行命令时,您需要将 ${remote}${branch} 替换为适当的值,如下所示:

gpll origin main

如何为多个命令创建别名

有时您需要按顺序使用多个命令。您也可以为此创建别名。使用 && 将每个命令分隔开,这会在左侧命令执行后执行右侧命令。

gpsh='git pull --rebase && git push'

如何删除别名

如果您想要从当前会话中删除别名,可以使用 unalias 命令。此命令只接受一个参数 —— 别名名称。

unalias my-alias-name

但是,如果您想要删除保存在配置文件中的别名,则需要从文件本身中删除它。您可以使用 Nano 等简单的文本编辑器来执行此操作。

nano ~/.bashrc

向下滚动到底部找到所有别名并删除您不再需要的别名。

完成后,您可以保存后退出编辑器。这是我可以介绍关于无法退出基于终端的文本编辑器的一个段子的地方。但是使用 Nano,很简单:

  1. 如果您在 Linux 上,请按 ctrl+x,如果您在 Mac 上,请按 ^+x
  2. Y 确认更改
  3. 根据您的操作系统按 Enter 或 Return 保存文件。

看?一点都不难

标签:shell,配置文件,alias,别名,命令,Mac,终端,Linux
From: https://www.cnblogs.com/web-666/p/18146563

相关文章

  • 性能测试——性能测试-linux监控工具nmon的安装与使用
    安装;  显示截图:    简单使用命令:                                             参考文档:https://blog.csdn.net/m0_61066945/article/details/12679959......
  • mac intellij idea卡顿排查解决
    最近我的idea异常卡顿,一顿谷歌查找后,解决。如下1.调整idea的JVM内存 Help->EditcustomVMOptions-Xms2048m-Xmx2048m-XX:ReservedCodeCacheSize=512m-XX:+IgnoreUnrecognizedVMOptions-XX:+UseG1GC-XX:SoftRefLRUPolicyMSPerMB=50-XX:+UseStringDeduplication-XX:AutoBoxC......
  • 在Linux中如何删除指定时间之前修改的文件?
    1、与文件有关的时间在说明如何删除符合这种要求的文件之前,先来看看与文件有关的有哪些时间简名   全名    中文名  含义atime  access  time   访问时间 文件中的数据最后被访问的时间mtime  modify  time   修改时间 文件中的数据......
  • linux文件被谁删除了
     如果你也有如标题所属的困扰。可以尝试一下linuxaudit功能。1 是否能用1.1这个功能需要内核启用,要编译时打开了如下图所示的选项 1.2启动内核的时候,也不能是关着的。(红框这行不能有) 1.3 服务是不是开着的(下图就是内核选项没开时候的提示)systemctlstatusaud......
  • linux运维常用命令总结
    1.tarzcf打包目录时,排除其中的一些目录或者文件tar--exclude=dir1--exclude=dir2--exclude=file1-czvfarchive.tar.gzsource_directory 2.yum只下载不安装包yum-yinstallnfs-utilsrpcbind--downloadonly--downloaddir/home/nfs 3.查看本机出网IP地址......
  • Mac安装Redis
    Mac安装Redis#安装Homebrew命令,Homebrew安装的软件会默认在/usr/local/Cellar/路径下#/bin/zsh-c"$(curl-fsSLhttps://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"#Homebrew命令安装redisbrewinstallredis启动Redis#方式一:使用brew帮助我们启动软件......
  • [转帖]linux命令top内存显示M兆或者G
     转载自:https://zhuanlan.zhihu.com/p/42665560===============许多Linux命令现在都有使其输出更易于理解的选项。让我们了解一些可以让我们心爱的操作系统更友好的东西。不是每个人都以二进制方式思考,他们不想在大脑中给大数字插入逗号来了解文件的大小。因此,Linux命令......
  • mac的cpu某段时间占用很高
    pmset-gsched,会发现如下所示:列出所有的计划事件wakepoweronat9:50AMeverydayScheduledpowerevents:[0]wakeat04/21/2401:38:54by'com.apple.alarm.user-visible-WeeklyUsageReport'[1]wakeat04/21/2405:37:09by'com.apple.alarm.user-visib......
  • Linux 新增LVM分区及LVM分区扩容
    Linux新增LVM分区及LVM分区扩容_linuxlvm增加-CSDN博客https://blog.csdn.net/FallenLeaves_/article/details/1299722561.查看当前磁盘分区fdisk-l2.查看分区和挂载情况lsblk3.创建一个新的分区并指定位置lvm文件类型fdisk /dev/sdb4.创建PV,VG,LVpvcreate/dev/s......
  • linux使用官方安装包安装的lazarus如需修改lazarus文件需要用root权限
    最近有网友反馈linux使用官方安装包安装的lazarus,按尝试解决linux下Lazarus2.2.0版代码编辑器和SynEdit不支持中文输入的Bug(2024.02.27解决《修正LinuxLazarusIDE代码编辑器中文输入》后用fpcupdeluxe重新编译lazarus时出错的Bug)-秋·风-博客园(cnblogs.com),修改后重构laz......