shutdown命令
linux
-h time,在某時間關機
shell
shutdown -h 10:30 "it will be halt" &
-c,cancel
數據庫
shutdown -c &
-r,reboot
vim
shutdown -r
echo $[$RANDOM%80] //生成80之內的隨機數
yum install soscentos
# sosreport //收集系統信息生成報告
在/var/tmp目錄下生成sosreport-centos7-TIMESTAMP.tar.xz文件,用於向紅帽技術提交獲取支持緩存
yum install man-pagesbash
man -k issue // -k,同命令apropos 將搜索whatis數據庫,模糊查找關鍵字
man 8 pam_issue // 獲取關於issue的幫助
實現登陸時提示終端名、主機名和時間app
vim /etc/issue 添加socket
on terminal \l hostname is \n time is \t
history命令ide
!# 執行第#條命令
!20 //執行第二十條命令 !-5 //執行倒數第五條命令
!?string 執行包含string的命令
!?clean //歷史中有yum clean all這條記錄,此命令將這條記錄執行
!! 執行上一條命令,或者摁ctrl+p
ctrl+r 搜索含某字符串的命令
(reverse-i-search)`iss': man -k issue
!^ 上一個命令的第一個參數
!$ 上一個命令的最後一個參數
!* 上一個命令的所有參數
!:n 上一個命令的第n個參數
!n:^ 調用第n條命令的第一個參數
!n:$ 調用第n條命令的最後一個參數
!m:n 調用第m條命令的第n個參數
!n:* 調用第n條命令的全部參數
history [options]
-a 將內存中的歷史寫到.bash_history中
-w filename 保存到指定的文件
-p XXX 只打印,不記錄到歷史
-s XXX 僞造歷史
history -s rm -rf /opt //history中能夠看到 rm -rf /opt
-c 清空命令歷史
-d 刪除歷史中的指定命令
-r 將histfiles的內容讀到當前shell的history 記憶中
-w 將當前的 history 記憶內容寫入 histfiles
-n 取出histfiles最新的內容
如在.bash_profile最後添加了XXX,執行history -n,再history|tail 看到最新的記錄
/etc/profile中定義了history命令的時間格式(HISTTIMEFORMAT)、數量(HISTSIZE)、控制方式(HISTCONTROL),如在/root/.bash_profile中定義,則優先級更高
HISTTIMEFORMAT="%F %T "
輸出如:2016-07-26 18:53:03 whoami
HISTSIZE=1000 // 只記錄1000條
HISTCONTROL=ignoredups // 忽略重複(連續且相同)的命令 HISTCONTROL=ignorespace // 忽略全部以空白開頭的命令 HISTCONTROL=ignoreboth // 即ignoredups和ignorespace HISTCONTROL=erasedups // 刪除重複命令
$HISTFILE 歷史文件,默認爲/root/.bash_history
HISTIGNORE="string1:string2:..." 忽略含這些字符串的歷史
HISTIGNORE="echo*:whatis" //
bash快捷鍵
控制檯裏使用alt+. 或 securecrt裏使用Esc+. 重複調用上條命令最後一個參數
ctrl+a 移動到命令行的最前面
ctrl+e 移動到命令行的最後面
ctrl+k 刪除光標至尾部的內容
ctrl+u 刪除光標至頭部的內容
ctrl+b 光標後移
ctrl+f 光標前移
Esc-b 左移一個單詞
Esc-f 右移一個單詞
文件系統分層結構:Linux Standard Base
FHS:Filesystem Hierarchy Standard
文件目錄對比:centos7比6多了run目錄,centos6比7多了misc net目錄
[root@centos7 ~]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
/etc :Editable Text Configuration 配置文件目錄
/sbin :管理類基本命令
/bin :供全部用戶使用的基本命令
/usr :共享目錄,數據只讀
/var : 存放可變數據文件,log、cache、lock、tmp等
/opt :第三方應用程序的安裝位置
/boot :引導文件存放目錄,內核文件(vmlinuz)、引導加載器(bootloader,grub)都存放於此
/run :掛載目錄
/srv :系統上運行的服務用到的數據
/proc :用於輸出內核與進程信息相關的虛擬文件系統
/sys : 用於輸出當前系統上硬件設備相關信息虛擬文件系統
centos6掛載小技巧
cd /misc 裏面是空的
cd cd
pwd 顯示/misc/cd
ls 看到有文件
實現了自動掛載
block 隨機訪問,有緩存,物理
character 順序訪問,無緩存,邏輯
socket 套接字,用於通訊
onemachine: pro1--Socket--pro2
twomachine: Socket[IP:PORT]
Amachine_app1--IP-->Bmachine--PORT-->Bmachine_app2
空設備/dev/null /dev/zero
dd if=/dev/zero of=f1 bs=1 count=1
xxd f1 或 hexdump f1 讀出文件,十六進制
cat text
a
b
c
----------
hexdump text 輸出0000000 0a61 0a62 0a63 (0a是換行)
hexdump -C text 輸出00000000 61 0a 62 0a 63 0a |a.b.c.|
last命令顯示登錄信息 保存在/var/log/wtmp文件
cat /proc/partitions 顯示設備
linux對大小寫敏感的說法不許確,vfat文件系統是大小寫不敏感
df -T 查文件系統,顯示tmpfs等
pwd 調用echo $PWD
cd /bin
pwd顯示/bin
pwd -P 顯示真實路徑/usr/bin // -P pysical -L logical
cd ~user1 進入普通用戶家目錄
ls -R 遞歸顯示
ls -1 一行顯示一個
ll -S 文件從大到小排列
ll -rS 文件從小到大排列
ctime 狀態更改時間,更名、屬性、權限等會變化
atime 讀時間
chattr +A file 文件的atime不發生改變
stat file 顯示文件的設備信息和時間狀態信息
題目
只顯示某目錄下隱藏文件
ls -AF |grep '^\.'
只顯示某目錄下目錄列表
(1)find . -type d -maxdepth 1
(2)ls -F | grep '/$'
(3)ls -l|grep '^d'