本文共 2386 字,大约阅读时间需要 7 分钟。
当用户登录linux操作系统时,就进入了当前用户的shell。shell是一个命令解释器,它提供了用户与机器之间的交互。它支持特定语法,比如逻辑判断、循环等。每个用户都可以有自己特定的shell。CentOS 7默认shell为bash。除了bash之外,还有zsh、ksh等shell类型。
在shell中,用户输入命令控制操作系统。在所有可执行命令中,history和alias比较特殊。history命令是用来查看过往输入的命令历史。而alias命令是用来定义命令的别名的。这两者都是为了用户使用方便而存在的命令。
1、history
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | [root@server01 ~] # history ##查看内存中的命令历史 1 logout 2 mkdir /root/ . ssh 3 chmod 700 /root/ . ssh ...... 84 yum list | grep 'dev' | more 85 history [root@server01 ~] # cat /root/.bash_history ##查看文件中的命令历史 logout mkdir /root/ . ssh chmod 700 /root/ . ssh ...... yum list | grep 'dev' | more [root@server01 ~] # echo $HISTSIZE ##查看命令历史最大条目数 1000 [root@server01 ~] # cat /etc/profile | grep HISTSIZE= ##配置文件中定义的最大条目数 HISTSIZE=1000 [root@server01 ~] # HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" ##命令历史显示格式 [root@server01 ~] # history 1 2017 /06/27 04:46:01logout 2 2017 /06/27 04:46:01mkdir /root/ . ssh 3 2017 /06/27 04:46:01chmod 700 /root/ . ssh ...... 91 2017 /06/27 04:51:54HISTTIMEFORMAT= "%Y/%m/%d %H:%M:%S" 92 2017 /06/27 04:52:02history [root@server01 ~] # chattr +a ~/.bash_history ##永久保存 [root@server01 ~] # !! ##执行上一条命令 chattr +a ~/.bash_history [root@server01 ~] # !90 ##执行第90条命令 cat /etc/profile | grep HISTSIZE= HISTSIZE=1000 [root@server01 ~] # !cat ##执行最近一条cat命令 cat /etc/profile | grep HISTSIZE= HISTSIZE=1000 |
2、alias
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | [root@server01 ~] # alias ##查看命令别名 alias cp = 'cp -i' alias egrep = 'egrep --color=auto' alias fgrep = 'fgrep --color=auto' alias grep = 'grep --color=auto' alias l.= 'ls -d .* --color=auto' alias ll= 'ls -l --color=auto' alias ls = 'ls --color=auto' alias mv = 'mv -i' alias rm = 'rm -i' alias which = 'alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' [root@server01 ~] # alias wv='w -V' ##定义别名 [root@server01 ~] # wv w from procps-ng 3.3.10 [root@server01 ~] # cat ~/.bashrc | grep alias ##别名配置文件,自定义的alias需要放入 # User specific aliases and functions alias rm = 'rm -i' alias cp = 'cp -i' alias mv = 'mv -i' [root@server01 ~] # ls /etc/profile.d/ ##用户环境变量 256term.csh colorgrep.csh colorls.csh lang.csh less .csh which2.csh 256term.sh colorgrep.sh colorls.sh lang.sh less .sh which2.sh |
除此以外,利用tab键补全命令的方式在实际操作中也很常见。如果需要补全参数,需要安装bash-completion软件包。
本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1942862,如需转载请自行联系原作者