alias命令自定义命令

认识命令

alias, 假名,别名,bash的一个内建命令,用来给常用的较长的命令定义个简短的名称。

比如我们不想打clear,我们就可以自定义位cl

基本格式如下:

1
alias [别名]=[需要定义别名的命令]

例如:

1
2
3
4
5
6
7
8
9
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'

2.设置命令

情景假设,需要把g++ 文件名 -std=c++23这个命令简化为gxx(需要确保gxx这个命令没有冲突)

则输入

1
alias gxx='g++ $1 -std=c++23'

$1代表命令传入的第一个参数,我们使用这个命令的时候则需要输入gxx 文件名

例如gxx helloworld.cpp,这样等效于g++ helloworld.cpp -std=c++23

3.全局化设置

我没有实际操作过,若遇到问题请自行解决

上述第2部分的命令,在用户登出服务器后就无效了,只是暂时的修改

可以使用修改配置文件的方法,使每次登陆服务器都能自动生效。若要修改用户自己(而非全部用户)的alias,可以修改 用户自己的配置文件~/.bashrc文件。发出以下命令

1
sudo vim ~/.bashrc

其中~是home目录,即每次登陆服务器后所在的目录,我的是/home/jjq

然后即进入vim编辑器模式:

  • 输入i,进入insert模式

  • 把自定义的命令别名alias gxx='g++ $1 -std=c++23' 追加到文件尾部

  • 然后按esc,退出insert模式,输入冒号:,接着输入wq!,保存退出即可。

4.显示所有命令和删除

输入alias 命令即可查看已经配置好的alias命令

单独输入alias即可查看所有已经配置好的alias命令

输入unalias 命令名即可删除,例如

1
2
3
4
5
6
jjq@jjq$ alias lx //显示别名
alias lx='ls'

jjq@jjq$ unalias lx //删除别名
jjq@jjq$ lx //测试是否删除
-bash: lx: command not found