自从知道这10个命令别名后我很不开心,因为要是我早知道的话,我的钛合金键盘就不会被戳坏了!
别名是啥?
别名就是一个绰号,或者叫简写,比如你要是非洲兄弟 「夸张夸长刮胡瓜啦夸掌 喀 炸不烂炸」名儿太长喊不利索,你可以给他取个别名「阿非」或者「阿夸」,下回儿非洲兄弟一听就知道你在叫他!
奇淫技巧
一般人定义别名都是这样定义的:
alias n='echo HelloWorld'
今天我教大家一个更6的定义方法,保证6出水平,6出风格:
alias n='f(){ echo $1; }; f'
这相当于定义了一个函数f,并且在末尾调用它,看到「$1」了么?这样定义的别名可以传参!老铁觉得骚,啊呸,6不6?
列出所有文件
ll命令想必是Linux中使用频率最高的,其实ll命令默认是ls -l --color=auto的别名,系统默认就有的,不需要自己定义,但它不够好用,我们自定义一个
推荐理由:方便,ll和la是使用频率比较高的
推荐指数:五星
alias ll='ls -lht' #按修改时间逆序列出文件
alias la='ls -lhta' #按修改时间逆序列出所有文件
# 调用示例
ll /usr # ls本身后面就可以跟路径参数
查看文件/目录大小
当你磁盘空间满了想找出大文件此命令简直是神器!
推荐理由:快速查看文件占用大小,路径修改方便,默认当前目录
推荐指数:五星
alias size='f(){ du -sh $1* | sort -hr; }; f'
# 调用示例
size #当前目录
size / #根目录
演示:
查找文件
推荐理由:有时候传一个文件到Linux上,但不知道文件跑哪儿去了,这个命令特别有用!
推荐指数:五星
alias sek='f(){ find / -name $1; }; f' # 在根目录查找文件
# 调用示例
sek myfile
兄弟别名,在当前目录查找文件
alias sekc='f(){ find ./ -name $1; }; f'
# 调用示例
sekc myfile
放开端口
当你要开放某个端口又不想查繁琐的iptables命令,此别名就非常有用了
推荐理由:快速开放端口,不要查询繁琐iptables命令,必须传端口号
推荐指数:五星
alias portopen='f(){ /sbin/iptables -I INPUT -p tcp --dport $1 -j ACCEPT; }; f'
# 调用示例
portopen 8080
兄弟别名,快速关闭端口
alias portclose='f(){ /sbin/iptables -I INPUT -p tcp --dport $1 -j DROP; }; f'
# 调用示例
portclose 8080
临时开启HTTP服务
推荐理由:这个简直就是神器了,当你需要在某目录下载文件或快速访问html的时候,你需要它!如果访问不了需要看看端口是否开放!
推荐指数:五星
alias www='f(){ python -m SimpleHTTPServer $1; }; f'
# 调用示例:
www #不传端口,默认8000
www 8080 #8080端口开启HTTP服务
演示:
查看开机启动项
推荐理由:没什么好说的,这个命令太长了,给他起个名就叫auto吧
推荐指数:五星
alias auto='systemctl list-unit-files --type=service | grep enabled | more'
# 调用示例
auto
# 回显如下
autovt@.service enabled
chronyd.service enabled
crond.service enabled
getty@.service enabled
iptables.service enabled
--More--
查看当前时间
推荐理由:都知道Linux下 默认查看时间是date命令,可它返回的时间格式看着想打人:Sat Dec 22 03:57:08 UTC 2018,没啥好说的,格式化后取名儿now
推荐指数:五星
alias now='date "+%Y-%m-%d %H:%M:%S"'
# 调用示例
now
# 回显如下
2018-12-22 03:59:33
查看Docker镜像使用详情
推荐理由:有时候想看哪个docker镜像流量用的最多,docker stats命令一个一个去对比真是很蛋疼,所以有了它,你也可以按照另外的字段排序,修改-k8中的8为另外的数字,这个数字表示按照哪个字段排序
推荐指数:五星
alias dkrnet='docker stats --no-stream | sort -k8 -hr | more'
# 调用示例
dkrnet
# 回显如下
f27760776941 ccc1 0.04% 49MiB / 985.3MiB 4.97% 41.2GB / 47.5GB 156GB / 14MB 14
783353fc3522 ccc2 0.00% 5.941MiB / 985.3MiB 0.60% 14.4GB / 14.7GB 7.37GB / 0B 1
e35fcbb46b7e ccc3 0.00% 4.676MiB / 985.3MiB 0.47% 1.63GB / 1.6GB 3.04GB / 0B 1
--More--
解压
推荐理由:用过zip命令的都知道它有一个兄弟叫unzip,可是tar和jar没有,每次解压都不知道后面参数该怎么跟,所以给它取名儿untar或者unjar
推荐指数:四星
alias untar='tar xvf '
alias unjar='jar xvf '
# 调用示例
untar a.tar.gz
unjar java.jar
查看外网IP
推荐理由:想查看自己的外网IP?没问题!
推荐指数:五星
alias ipe='curl ipinfo.io/ip'
写在最后
别名的正确使用方式是将别名写入~/.bashrc文件里面,保证下次登录还能使用,我将上面的别名来了一个汇总,老铁按需自取!
vi ~/.bashrc
# 将以下别名写出文件并退出
alias ll='ls -lht' #按修改时间逆序列出文件
alias la='ls -lhta' #按修改时间逆序列出所有文件
alias size='f(){ du -sh $1* | sort -hr; }; f'
alias sek='f(){ find / -name $1; }; f' # 在根目录查找文件
alias sekc='f(){ find ./ -name $1; }; f'
alias portopen='f(){ /sbin/iptables -I INPUT -p tcp --dport $1 -j ACCEPT; }; f'
alias portclose='f(){ /sbin/iptables -I INPUT -p tcp --dport $1 -j DROP; }; f'
alias www='f(){ python -m SimpleHTTPServer $1; }; f'
alias auto='systemctl list-unit-files --type=service | grep enabled | more'
alias now='date "+%Y-%m-%d %H:%M:%S"'
alias dkrnet='docker stats --no-stream | sort -k8 -hr | more'
alias untar='tar xvf '
alias unjar='jar xvf '
alias ipe='curl ipinfo.io/ip'
# 最后别忘了执行以下命令使别名生效
source ~/.bashrc