码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Linux之history、tab、alias、命令执行顺序、管道符以及exit


    目录

    Linux之history、tab、alias、命令执行顺序、管道符以及exit

    history历史命令

    格式

    参数

    修改默认记录历史命令条数 

    案例

            案例1 --- 显示history历史记录中出现次数最高的top10

            案例2 --- 增加history显示的时间信息

    命令与文件名补全 --- tab

    命令别名 

    格式

    案例

    注意

    命令执行顺序

    顺序执行

    前面命令执行不成功,后面的命令不执行

    管道符

    符号

    案例

    exit退出程序

    作用

    格式

    状态码

    常见状态码

    案例


    Linux之history、tab、alias、命令执行顺序、管道符以及exit

    history历史命令

    格式

            history [参数] [历史命令保存文件]

    参数

            

    参数作用
    -c清空历史命令
    -w把缓存中的历史命令写入历史命令保存文件。如果不手工指定历史命令保存文件,则放入默认历史命令保存文件~/.bash_history 中

    修改默认记录历史命令条数 

    [root@localhost ~]# vim /etc/profile

    案例

            案例1 --- 显示history历史记录中出现次数最高的top10
    1. [root@localhost ~]# history | tr -s " " | cut -d " " -f3 | sort | uniq -c |sort -nr | head -10
    2. 浏览命令 | 压缩为1个空格 | 截取以空格为分割的第3部分 | 排序 | 统计并去重 | 降序数字排序| 显示前10个

            案例2 --- 增加history显示的时间信息
    1. [root@localhost ~]# vim ~/.bashrc # 定位最后一行增加一行内容
    2. export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S: "
    3. [root@localhost ~]# source ~/.bashrc # 刷新配置
    4. [root@localhost ~]# history

    命令与文件名补全 --- tab

    命令别名 

    格式

            alias 别名=原命令

    案例
    1. [root@localhost ~]# alias hi=history
    2. [root@localhost ~]# hi

    注意

            别名的优先级比命令高

    1. 第一顺位:执行用绝对路径或相对路径执行的命令。
    2. 第二顺位:执行别名。
    3. 第三顺位:执行 Bash 的内部命令。
    4. 第四顺位:执行按照 $PATH 环境变量定义的目录查找顺序找到的第一个命令。

            为了让这个别名永久生效,可以把别名写入环境变量配置文件“~/.bashrc

    1. [root@localhost ~]# vim ~/.bashrc
    2. # 在最下面增加

    命令执行顺序

    顺序执行

            命令1 ; 命令2

    [root@localhost ~]# date ; ls -l /etc/passwd

    前面命令执行不成功,后面的命令不执行

            命令1 && 命令2

    [root@localhost ~]# mkdir /mnt/iso && mount /dev/sr0 /mnt/iso

    前面命令成功,后面就不执行,如果前面不成功后面就执行

            命令1 || 命令2

    1. [root@localhost ~]# mkdir tt || ls /
    2. [root@localhost ~]# mkdir tt || ls / # 可以再次执行

    管道符

            当在两个命令之间设置管道时,管道符|左边命令的输出就变成了右边命令的输入。只要第一个命令向标准输出写入,而第二个命令是从标准输入读取,那么这两个命令就可以形成一个管道

    符号

             命令1 | 命令2

    案例

            提取系统网卡的IP地址

    1. [root@localhost ~]# ip a | grep ens160 | grep inet | tr -s " " | cut -d / -f1 | cut -d " " -f3
    2. 显示IP信息 | 行向过滤包含ens60 | 行向过滤inet | 压缩为一个空格 | 以/为分割依据,取第一部分 | 以空格为分割依据,取第3部分

            显示主机内存剩余容量

    [root@localhost ~]# free -h |grep Mem | tr -s " " | cut -d " " -f4

    exit退出程序

    作用

            终止Shell程序的执行

    格式

            exit 状态码

    状态码

            该参数是一个整数值,其取值范围为0~255

    注意:

            Shell程序的退出状态码储存在系统变量$?中,因此,用户可以通过该变量取得Shell程序返回给父进程的退出状态码

    常见状态码

    1. 0----------------命令运行成功
    2. 1----------------通知未知错误
    3. 2----------------误用shell命令
    4. 126-------------命令不可执行
    5. 127-------------没有找到命令
    6. 128-------------无效退出参数
    7. 128+x-----------linux信号x的严重错误
    8. 130--------------命令通过Ctrl+C终止
    9. 255--------------退出状态码越界

    案例

            演示在不同的情况下,程序返回不同的状态码

    1. [root@localhost ~]# echo "china"
    2. [root@localhost ~]# echo $?
    3. [root@localhost ~]# ehco "china"
    4. bash: ehco: command not found...
    5. Similar command is: 'echo'
    6. [root@localhost ~]# echo $?

  • 相关阅读:
    编解码持续升级,「硬」实力铸就视频云最优解
    什么是存储服务器?
    详解位段+枚举+联合(接结构体)
    花了大半天,写了个springdoc/springfox/swagger文档转word的工具
    Windows更新报错 0xc1900101 0x30018 解决方案
    redis安装(Windows和linux)
    Java核心篇,二十三种设计模式(十六),行为型——迭代器模式
    生成式AI结合3D、XR怎么玩?NVIDIA、Niantic等公司已入局
    LVS,Nginx,Haproxy三种负载均衡产品的对比
    学习尚硅谷HTML+CSS总结
  • 原文地址:https://blog.csdn.net/qq_57289939/article/details/132756840
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号