Shell编程——shell特性

    xiaoxiao2021-03-25  53

    Linux会默认记录1000条历史记录,可通过#echo $HISTSIZE 查看,如果讲HISTSIZE更改为2000,那么会默认保存2000条。1000条记录保存在家目录的 .bash_history 中,仅当用户正常退出当前shell时,当前shell中运行的命令才会保存到 .bash_history 文件中,如果删除家目录下的.bash_history,会吧所有用户的历史命令记录删除。 #history 【查看当前历史命令记录,记录会实时跟新】 #history -c 【清除当前用户在当前终端所有执行的命令】 #!! 【执行上一条指令】 #!n 【n表示命令历史中第n条指令】 #!字符串 【字符串大于等于1,!pw表示执行命令历史中最近一次以“pw”开头的命令】 #last 【查看历史登录信息,history查看历史命令信息】 tab 会补全文件名、路径、指令 连续两次 tab ,会把所有命令或者文件名列出来 [root@thinkpad ~]# init 连按两次tab init initctl alias 别名 #alias 【列出所有预设alias】 alias cp='cp -i' alias mv='mv -i' 语法: alias [别名]=['具体命令'] unalias [别名] 【解除别名】 通配符 * 通配符,匹配一个或者多个字符 ?通配符,匹配一个字符 | 管道符 把前面的命令运行的结果丢给后面的命令 #cat /etc/passwd |wc -l 【wc -l 的意思是显示当前文档的行数,需要反向重定向wc -l < 1.txt】 #cat /etc/passwd >> 1.txt 作业控制: Ctrl+z 暂停 fg 恢复暂停的命令 bg 切换至后台运行 Ctrl+c 终止 示例: # vi 1.txt 输入内容sadsfdfadfadfafdasdf 按 ESC ,使用Ctrl+z 暂停 #vi 1.txt [1]+ stopped vi 1.txt 【vi命令已经停止】 使用 fg 命令恢复,回到bi窗口。 再次暂停, #jobs 【查看被暂停或者后台运行的任务】 [1]+ stopped vi 1.txt #bg 【暂停的命令去后台运行】 [1]+ vi 1.txt & [1]+ Stopped vi 1.txt vi命令不支持后台运行 #vmstat 1 > /tmp/1.log ^Z 【暂停命令】 [2]+ Stopped vmstat 1 > /tmp/1.log #jobs [1] - stopped vi 1.txt [2]+ Stopped vmstat 1 > /tmp/1.log +表示优先级更高 #bg 2 [2]+ vmstat 1 > /tmp/1.log & 多个被暂停的任务会有编号,jobs可以查看所有任务,那么使用fg,bg的时候就需要有编号。bg2 把第二个被暂停的任务丢到后台跑起来,丢入后台需要使用在命令后加一个&符号,中间有个空格。 如何关闭后台的命令 1、fg 编号 Ctrl + C 2、关闭了当前的shell,打开其他shell使用jobs不能显示后台或者暂停的命令。 #ps aux |grep vmstat root 9433 0.0 0.0 6180....................................... vmstat 1 root 9435 0.0 0.0 103308 ................................. grep vmstat 【红色为pid号码】 #kill 9433 【ps aux 可以找到所有进程,并显示pid号码,使用kill pid可以杀死进程】 #kill -p [pid] -p 强制终止 注: #vmstat 1 >/tmp/1.log & 【&的作用是放入后台,并且显示pid号码】 # vmstat 1 > /tmp/1.log 2>&1 &     检测到的状态,正确的信息输入到1.log, 错误的信息也输入到1.log文件内,&1表示前面的文件1.log, 最后的 & 表示放到后台运行。 如果不加最后的 &会一直在前台运行,没办法输入其他命令,所以一定要加上。
    转载请注明原文地址: https://ju.6miu.com/read-38505.html

    最新回复(0)