美文网首页Linux系统基础
让你相见恨晚的10个Linux命令别名!

让你相见恨晚的10个Linux命令别名!

作者: 代码狂魔 | 来源:发表于2018-12-22 12:25 被阅读22次
    Linux命令别名

    自从知道这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服务
    
    演示: 快速开启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
    

    更多精彩好文请关注微信公众号或关注博客代码狂魔

    代码狂魔

    相关文章

      网友评论

        本文标题:让你相见恨晚的10个Linux命令别名!

        本文链接:https://www.haomeiwen.com/subject/ijxikqtx.html