zoukankan      html  css  js  c++  java
  • shell中需要了解的一点小东西

    shell脚本调用的两种方式

    一种是赋予权限,使用绝对路径

    另一种只需要拥有读权限,使用bash 调用脚本

    history命令

    -c  清空历史命令

    -w  把缓存中的历史命令写入历史命令保存文件当中,如果不手工指定历史命令保存文件,则放入默认历史命令保存文件~/.bash_history

    历史命令默认会保存1000条,这是通过环境变量HISTSIZE来进行设置的,我们可以再环境变量配置文件/etc/profile中进行修改

    因为历史命令是保存在~/.bash_history中的,而不是内存中,所以如果有需要可以将历史命令条数改大

    每个用户的历史命令是单独保存的,每个用户的家目录,都有./bash_history这个历史命令文件

    使用history命令查看的历史命令和~/.bash_history文件中保存的历史命令是不同的。那是因为当前登陆操作的命令并没有直接写入~/.bash_history文件中

    而是保存在缓存中,需要等当前用户注销之后,缓存中的命令才会写入~/.bash_history文件中。

    如果需要把内存中的命令直接写入到~/.bash_history文件中,而不等用户注销时再写入,就需要使用-w选项

    历史命令的调用

    1.使用上下箭头

    2.使用  !n  重复执行第n条命令

    3.使用  !!  重复执行上一条命令

    4.使用  !$  重复上一条命令的最后一个参数

    多命令顺序执行

    ;  命令1;命令2  多条命令顺序执行,命令之间没有任何逻辑关系

    &&  命令1&&命令2  如果命令1正确执行($?=0),则命令2才会执行,如果命令1执行不正确,命令2不会执行

    ||  命令1||命令2  如果命令1执行不正确($?)则命令2会执行,如果命令1执行则命令2不会执行

    行提取命令grep

    grep  选项  搜索内容  文件名

    -A  列出符合条件的行,并列出后续的n行

    -B  列出符合条件的行,并列出前面的n行

    -c  统计找到的符合条件的字符串的次数  

    -i  忽略大小写

    -n  输出行号

    -v  反向查找

    总用的命令实例忽略

    通配符

    ?  匹配一个任意字符,不能为空

    *  匹配0个或多个任意字符,也就是可以匹配任何内容

    []  匹配中括号中任意一个字符,例如,[abc]代表一定匹配一个字符,或者是a,或者是b,或者是c

    [-]  匹配括号中任意一个字符,-代表一个范围。例如,[a-z]代表匹配一个小写字母

    [^]  逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9]代表匹配不是一个数字的字符

    例子就略了

  • 相关阅读:
    Spark Streaming反压机制
    spark submit参数及调优
    kafka中的配额管理(限速)机制
    Kafka限流
    BlockingQueue
    Android 更改userdata的大小
    visual studio 2019 error MSB3073 exited with code 1
    ARM 链接脚本分析
    Android Bluetooth hci 命令分析
    Android 查看蓝牙hci日志
  • 原文地址:https://www.cnblogs.com/yzandy/p/12178831.html
Copyright © 2011-2022 走看看