记录历史命令的变量:
[root@localhost ~]# echo $HISTSIZE :变量名 对应命令:history (查看历史命令) -c 清空历史命令(只是清空临时的缓存,并不会清空.bash_history文件)
1000 :值 1000 可以修改 如果修改为10 那么系统只会记录10个历史命令(如果以前有好多那么会记录最近的10个)
如果想让历史命令记录时间格式可以修改变量 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "
[root@localhost ~]# HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S " 指定变量的时间格式"%Y(年)/%m(月)/%d(日) %H(小时):%M(分钟):%S(秒) "
%Y/%m/%d %H:%M:%S
[root@localhost ~]# history
87 2018/07/29 18:05:29 SITTIMFORMAT="%Y/%m/%d %H:%M:%S "
88 2018/07/29 18:05:31 echo $SITTIMFORMAT
89 2018/07/29 18:05:40 cat .bash_history
以上设置全部临时生效 如果想永久生效修改/etc/profile文件
46行 HISTSIZE=1000 记录历史命令的个数
47行 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "时间格式
[root@localhost ~]# source /etc/profile 刷新文本立即生效
如果不正常退出shell环境那么历史命令可能会不被记录在bash_history文件里
[root@localhost ~]# chattr +a ~/.bash_history
Tab补全参数:
yum -y install bash-completion #centos7要先安装依赖包 然后重启系统才能生效
命令别名:
[root@localhost ~]# alias restartnet='systemctl restart network' 使用alias命令把systemctl restart network 修改成restartnet
[root@localhost ~]# restartnet
如果想取消自定义命令使用unalias 例如下列:
[root@localhost ~]# unalias restartnet
[root@localhost ~]# restartnet
-bash: restartnet: 未找到命令
输入重定向: > >> 2> 2>> >+2> == &>
>重定向到 >> 追加到 2>把错误的重定向到 2>>把错误的追加到 >+2> == &> 把所以都重定向到 也可以追加&>>
输出重定向和输入重定向符号相反(>换成<)
管道符|的使用:
管道符常用于把前面命令的结果输出到后面使用 例如:
ls | grep aaa.txt 就是把ls命令的的结果交给后面的grep用,最终会显示aaa.txt文本
作业控制:& fg bg jobs
如果想把一个程序放在后台使用可以命令后面加&符 例如 top &
如果我们挂起了一个程序想要再次打开可以使用fg 例如挂起一个vim aaa 想要再次打开这个文本就使用fg
如果想把一个当前在前台运行的程序放到后台去 可以使用bg
jobs命令显示后台挂起的都有哪些进程