命令歷史是保存在/root/.bash_history 裏面的,能夠cat進行查看。linux
默認命令歷史保存最大存1000條歷史命令。能夠echo $HISTSIZE進行查看數量。這個數量是環境變量控制的,能夠更改。shell
[root@localhost ~]# echo $HISTSIZE 1000
vi /etc/profile 找到 HOSTNAME=`/usr/bin/hostname 2>/dev/null` HISTSIZE=1000 ------------若是以爲1000條不夠能夠改爲5000----------- if [ "$HISTCONTROL" = "ignorespace" ] ; then
更改以後必須退出一下終端從新進或者source /etc/profile 纔會更改vim
[root@localhost ~]# echo $HISTSIZE 1000 [root@localhost ~]# source /etc/profile [root@localhost ~]# echo $HISTSIZE 5000
HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S"bash
[root@localhost ~]# history 1 ls 2 ls /etc/passwd 3 cat /etc/passwd 4 [root@localhost ~]# cat /etc/passwd 5 root:x:0:0:root:/root:/bin/bash 6 bin:x:1:1:bin:/bin:/sbin/nologin 7 daemon:x:2:2:daemon:/sbin:/sbin/nologin 8 adm:x:3:4:adm:/var/adm:/sbin/nologin 9 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
從新賦值以後ssh
[root@localhost ~]# HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S " [root@localhost ~]# history 1 2017/08/30 19:20:18 ls 2 2017/08/30 19:20:18 ls /etc/passwd 3 2017/08/30 19:20:18 cat /etc/passwd 4 2017/08/30 19:20:18 [root@localhost ~]# cat /etc/passwd 5 2017/08/30 19:20:18 root:x:0:0:root:/root:/bin/bash 6 2017/08/30 19:20:18 bin:x:1:1:bin:/bin:/sbin/nologin 7 2017/08/30 19:20:18 daemon:x:2:2:daemon:/sbin:/sbin/nologin 8 2017/08/30 19:20:18 adm:x:3:4:adm:/var/adm:/sbin/nologin
這時候再打開一個新的終端,這個環境變量是不生效的。工具
若是想讓此環境變量全局生效,須要編輯 /etc/profile把HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S "加到裏面學習
fi HOSTNAME=`/usr/bin/hostname 2>/dev/null` HISTSIZE=5000 HISTTIMEFORMAT="%Y/%m/%d %H:%M:%S" if [ "$HISTCONTROL" = "ignorespace" ] ; then export HISTCONTROL=ignoreboth
source /etc/profile後生效spa
chattr +a ~/.bash_history 設置了這個權限只能追加不能刪除rest
表示運行最後一條歷史命令code
指定運行歷史行數命令
表示命令歷史裏面最後一次輸入這個命令的命令
[root@localhost ~]# alias restartnet='systemctl restart network.service' [root@localhost ~]# restartnet [root@localhost ~]# 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 restartnet='systemctl restart network.service' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' [root@localhost ~]#
alias 存在用戶家目錄下的 .bashrc文件裏。
還有一些存在 /etc/profile.d/下面
unalias 取消自定義別名
[root@localhost ~]# ls 111 1eer 1.txt 2.txt anaconda-ks.cfg erwe [root@localhost ~]# ls *.txt 1.txt 2.txt [root@localhost ~]# [root@localhost ~]# ls 1* 1eer 1.txt 111: [root@localhost ~]# ls *1* 1eer 1.txt 111: [root@localhost ~]#
問號表示任意一個字符
[root@localhost ~]# ls ?.txt 1.txt 2.txt [root@localhost ~]# ls *.txt 1.txt 2.txt bbcc.txt bb.txt [root@localhost ~]#
選擇範圍
[root@localhost ~]# ls [123].txt 1.txt 2.txt [root@localhost ~]# ls [0-9].txt 1.txt 2.txt [root@localhost ~]# ls [1].txt 1.txt [root@localhost ~]# ls [2].txt 2.txt [root@localhost ~]#
也是選擇範圍,跟[]差很少,可是中間有逗號
[root@localhost ~]# ls {1,2}.txt 1.txt 2.txt [root@localhost ~]#
把>前面的內容刪除掉重定向到後面內容去。
把>>前面的內容追加到後面內容去。
表示把運行錯誤的信息定向到一個文件裏
[root@localhost ~]# fddd -bash: fddd: 未找到命令 [root@localhost ~]# fddd 2> 1.txt [root@localhost ~]# cat 1.txt -bash: fddd: 未找到命令
錯誤追加劇定向
錯誤和正確都有的輸出重定向
[root@localhost ~]# ls [12].txt asffsfs.txt &> 1.txt [root@localhost ~]# cat 1.txt ls: 沒法訪問asffsfs.txt: 沒有那個文件或目錄 1.txt 2.txt [root@localhost ~]#
輸入重定向
把<右邊的文件內容輸入到<左邊的命令裏面去
[root@localhost ~]# wc -l < 1.txt 3 [root@localhost ~]#
[root@localhost ~]# vim 1.txt [1]+ 已中止 vim 1.txt [root@localhost ~]# vim 2.txt [2]+ 已中止 vim 2.txt [root@localhost ~]# jobs [1]- 已中止 vim 1.txt [2]+ 已中止 vim 2.txt [root@localhost ~]#
[root@localhost ~]# echo $a$bb 1 [root@localhost ~]# echo '$a$bb' $a$bb
[root@localhost ~]# pstree systemd─┬─NetworkManager───2*[{NetworkManager}] ├─agetty ├─auditd───{auditd} ├─chronyd ├─crond ├─dbus-daemon───{dbus-daemon} ├─firewalld───{firewalld} ├─lvmetad ├─master─┬─pickup │ └─qmgr ├─polkitd───5*[{polkitd}] ├─rsyslogd───2*[{rsyslogd}] ├─sshd───sshd───bash─┬─pstree │ └─2*[vim] ├─systemd-journal ├─systemd-logind ├─systemd-udevd ├─tuned───4*[{tuned}] └─vmtoolsd───{vmtoolsd} [root@localhost ~]#