linux alias命令别名功能使用

查看当前别名

alias # 直接输入即可,无参数

临时设置别名

仅“当前终端窗口”且“当前用户”有效,切换窗口即失效

alias tmp_command="echo 这是临时命令别名"

临时删除别名

仅“当前终端窗口”且“当前用户”有效,切换窗口即失效

unalias tmp_command

设置永久别名-当前用户

方法:将别名设置写入到“~/.bashrc”文件中。
在“~/.bashrc”文件正常的任意位置(可与其他alias放一起)添加:alias tmp_command="echo 这是临时命令别名"

vi ~/.bashrc # 写入并保存
source ~/.bashrc # source执行并刷新shell环境,或重新登录该用户

设置永久别名-全部用户

方法:将别名设置写入到“~/.bashrc”文件中(Ubuntu中为“/etc/bash.bashrc”)。
在“~/.bashrc”文件正常的任意位置(可与其他alias放一起)添加:alias tmp_command="echo 这是临时命令别名"

vi ~/.bashrc # 写入并保存
source ~/.bashrc # source执行并刷新shell环境,或重新登录该用户

ssh远程执行命令-开启alias

引用参考链接内文字:

解决方案有几个:
一是在SSH直接运行命令的时候,通过参数指定使用交互方式启动bash(@Matei David);
二是在.bashrc等启动过程中会被读取的文件(bash启动读取的文件顺序)且会被执行的section中,使用shopt指令显式允许alias展开,并且要保证alias定义语句也能被执行到;
三是将alias改写成一个sh脚本,然后调用这个脚本来间接实现效果。

注:因为ssh在非交互模式下默认不开启alias别名功能。

方法一:

使用相关参数即可。
ssh:

  • -t:强制分配伪终端。如果没有这个,bash在交互模式下启动时会发出警告消息。

bash:

  • -c:从第一个非选项参数字符串读取命令
  • -i:使用交互式
ssh bios@192.168.100.16 -t bash -ci 'alias;ll'

方法二:

在相应的“.bashrc”文件的开头添加(在判断之前):

# 开启alias功能(只在命令行执行这句不能使alias功能正常使用)
shopt -s expand_aliases
# 设置alias命令别名
alias ll='ls -alF'

相关参考:
为什么我的别名不能通过 ssh 工作?
在SSH后直接跟指令时,Alias不生效的问题(.bashrc中定义)
Shell_Linux shopt 指令

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值