https://www.cnblogs.com/wcwen1990/p/7630545.html
html
/binnode |
存放二進制可執行文件(ls,cat,mkdir等),經常使用命令通常都在這裏。linux |
/etcnginx |
存放系統管理和配置文件正則表達式 |
/homeshell |
存放全部用戶文件的根目錄,是用戶主目錄的基點,好比用戶user的主目錄就是/home/user,能夠用~user表示數據庫 |
/usr編程 |
用於存放系統應用程序,比較重要的目錄/usr/local 本地系統管理員軟件安裝目錄(安裝系統級的應用)。這是最龐大的目錄,要用到的應用程序和文件幾乎都在這個目錄。vim /usr/x11r6 存放x window的目錄windows /usr/bin 衆多的應用程序 /usr/sbin 超級用戶的一些管理程序 /usr/doc linux文檔 /usr/include linux下開發和編譯應用程序所須要的頭文件 /usr/lib 經常使用的動態連接庫和軟件包的配置文件 /usr/man 幫助文檔 /usr/src 源代碼,linux內核的源代碼就放在/usr/src/linux裏 /usr/local/bin 本地增長的命令 /usr/local/lib 本地增長的庫 |
/opt |
額外安裝的可選應用程序包所放置的位置。通常狀況下,咱們能夠把tomcat等都安裝到這裏。 |
/proc |
虛擬文件系統目錄,是系統內存的映射。可直接訪問這個目錄來獲取系統信息。 |
/root |
超級用戶(系統管理員)的主目錄(特權階級^o^) |
/sbin |
存放二進制可執行文件,只有root才能訪問。這裏存放的是系統管理員使用的系統級別的管理命令和程序。如ifconfig等。 |
/dev |
用於存放設備文件。 |
/mnt |
系統管理員安裝臨時文件系統的安裝點,系統提供這個目錄是讓用戶臨時掛載其餘的文件系統。 |
/boot |
存放用於系統引導時使用的各類文件 |
/lib |
存放跟文件系統中的程序運行所須要的共享庫及內核模塊。共享庫又叫動態連接共享庫,做用相似windows裏的.dll文件,存放了根文件系統程序運行所需的共享文件。 |
/tmp |
用於存放各類臨時文件,是公用的臨時文件存儲點。 |
/var |
用於存放運行時須要改變數據的文件,也是某些大文件的溢出區,比方說各類服務的日誌文件(系統啓動日誌等。)等。 |
/lost+found |
這個目錄平時是空的,系統非正常關機而留下「無家可歸」的文件(windows下叫什麼.chk)就在這裏 |
[root@xiaoming ~]# 複製代碼
-a
與 --all
等效顯示詳細信息
drwxr-xr-x . 1 root root 800 Sep 16 00:19 logs
複製代碼
drwxr-xr-x | . | 1 | root | root | 800 | Sep 16 00:19 | logs |
---|---|---|---|---|---|---|---|
文件類型和權限 | ACL權限 | 硬連接引用計數 | 全部者 | 所屬組 | 文件大小 | 最後修改時間 | 文件名 |
-rw-r--r--
複製代碼
link
/var/lib/mlocate
後臺數據庫,天天更新一次updatedb
命令馬上更新數據庫/etc/updatedb.conf
創建索引的配置文件
whereis ls
which ls
which cd
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
find / -name aaa.log
複製代碼
*
匹配任意內容?
匹配任意一個字符[]
匹配任意一箇中括號內的字符find . -name "ab[cdef]" 複製代碼
不區分大小寫
find / -iname A.log
複製代碼
按全部者進行搜索
find /root -user root
find /root -nouser
複製代碼
find /nginx/access.log -mtime +5
複製代碼
參數 | 含義 |
---|---|
atime | 文件訪問時間 |
ctime | 改變文件屬性 |
mtime | 修改文件內容 |
參數 | 含義 |
---|---|
-5 | 5天內修改的文件 |
5 | 5天前當前修改的文件 |
+5 | 5天前修改的文件 |
find . -size 100k
複製代碼
參數 | 含義 |
---|---|
-8k | 小於8K |
8k | 等於8K |
+8k | 大於8K |
+8M | 小於8M |
find . -inum 123456
複製代碼
find /tmp -size +10k -a -size -20k 複製代碼
find /tmp -size +10k -a -size -20k -exec ls -lh {} \; 複製代碼
-i
忽略大小寫-v
排除指定字符串man ls
查看ls的幫助man -f ls whatis ls man 1 ls man 1p ls 複製代碼
- man -k passwd
複製代碼
whereis
找到就是外部,找不到就是內部help cd 複製代碼
.zip
.gz
.bz2
.tar.gz
.tar.bz2
mkdir book
touch book/1.txt
touch book/2.txt
zip -r book.zip book
unzip book.zip
複製代碼
命令 | 示例 | 含義 |
---|---|---|
gzip 源文件 | gzip a.txt | 壓縮爲.gz格式的壓縮文件,源文件會消失 |
gzip -c 源文件 > 壓縮文件 | gzip -c yum.txt > yum.txt.gz | 壓縮爲.gz格式的壓縮文件,源文件不會消失 |
gzip -r 目錄 | gzip -r xx | 壓縮目錄下的全部子文件,可是不壓縮目錄 |
gzip -d 壓縮文件名 | gzip -d yum.txt.gz | 解壓縮文件,不保留壓縮包 |
gunzip 壓縮文件 | gunzip yum.txt.gz | 解壓縮文件,不保留壓縮包 |
命令 | 示例 | 含義 |
---|---|---|
bzip2 源文件 | bzip2 1.txt | 壓縮爲.bz2格式的文件,不保留源文件 |
bzip2 -k 源文件 | zip2 -k 1.txt | 壓縮爲.bz2格式的文件,保留源文件 |
bzip2 -d 壓縮文件名 | bzip2 -d 1.txt.bz2 | 解壓壓縮包 |
bunzip2 壓縮文件名 | bunzip2 1.txt.bz2 | 解壓壓縮包 |
tar -cvf book.tar book
gzip book.tar
bzip2 book.tar
複製代碼
tar -xvf book.tar
複製代碼
壓縮
tar –cvf jpg.tar *.jpg //將目錄裏全部jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg //將目錄裏全部jpg文件打包成jpg.tar後,而且將其用gzip壓縮,生成一個gzip壓縮過的包,命名爲jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg //將目錄裏全部jpg文件打包成jpg.tar後,而且將其用bzip2壓縮,生成一個bzip2壓縮過的包,命名爲jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg //將目錄裏全部jpg文件打包成jpg.tar後,而且將其用compress壓縮,生成一個umcompress壓縮過的包,命名爲jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的壓縮,須要先下載rar for linux
zip jpg.zip *.jpg //zip格式的壓縮,須要先下載zip for linux
解壓
tar –xvf file.tar //解壓 tar包
tar -xzvf file.tar.gz //解壓tar.gz
tar -xjvf file.tar.bz2 //解壓 tar.bz2
tar –xZvf file.tar.Z //解壓tar.Z
unrar e file.rar //解壓rar
unzip file.zip //解壓zip
shutdown 關機命令
shutdown -r 06:00
shutdown -c
複製代碼
關機
init 0
複製代碼
重啓
init 6
複製代碼
系統的運行級別
退出登陸
logout複製代碼
查看登陸用戶信息
查看登陸用戶信息
查看當前登陸和過去登陸的用戶信息 默認讀取 /var/log/wtmp
文件
查看全部用戶的最後一次登陸時間
控制字符 | 做用 |
---|---|
\a | 輸出警告音 |
\b | 退格鍵,也就是向左刪除鍵 |
\n | 換行符 |
\r | 回車鍵 |
\t | 製表符,也就是Tab鍵 |
\v | 垂直製表符 |
\onnn | 按照八進制ASCII碼錶輸出字符,其中0爲數字零,nnn是三位八進制數 |
\xhh | 按照十六進制ASCII碼錶輸出字符,其中hh是兩位十六進制數 |
#!/bin/bash echo -e "\e[1;34m hello world \e[0m" 複製代碼
賦予執行權限,直接運行
chmod 755 hello.sh
./hello.sh
複製代碼
經過Bash調用執行腳本
bash hello.sh
複製代碼
命令 | 含義 |
---|---|
ctrl+c | 強制終止當前命令 |
ctrl+l | 清屏 |
ctrl+a | 光標移動到命令行首 |
ctrl+e | 光標移動到命令行尾 |
ctrl+u | 從光標所在的位置刪除到行首 |
ctrl+z | 把命令放入後臺 |
ctrl+r | 在歷史命令中搜索 |
(1) ; 分號,沒有任何邏輯關係的鏈接符。當多個命令用分號鏈接時,各命令之間的執行成功與否彼此沒有任何影響,都會一條一條執行下去。
(2) || 邏輯或,當用此鏈接符鏈接多個命令時,前面的命令執行成功,則後面的命令不會執行。前面的命令執行失敗,後面的命令纔會執行。
(3) && 邏輯與,當用此鏈接符鏈接多個命令時,前面的命令執行成功,纔會執行後面的命令,前面的命令執行失敗,後面的命令不會執行,與 || 正好相反。
(4) | 管道符,當用此鏈接符鏈接多個命令時,前面命令執行的正確輸出,會交給後面的命令繼續處理。若前面的命令執行失敗,則會報錯,若後面的命令沒法處理前面命令的輸出,也會報錯。
- date;ls;date;ls - ls && echo yes || echo no 複製代碼
ls /etc/ | more netstat -an | grep ESTABLISHED | wc -l 複製代碼
匹配文件名和目錄名 |通配符|做用| |:----|:----| |?|匹配一個任意字符| |*|匹配0個或任意字符,也就是能夠匹配任意內容| |[]|匹配中括號中任意一個字符| |[-]|匹配中括號中任意一個字符,-表明範圍| |[^]|匹配不是中括號中的一個字符|
符號 | 做用 |
---|---|
'' | 單引號。在單引號中全部的特殊符號,如$和`都沒有特殊含義 |
"" | 雙引號,在雙引號裏特殊符號都沒有特殊含義,可是 $ ` \ 例外,擁有調用變量值,引用命令和轉義的含義 |
|
反引號,擴起來的是系統命令 |
$() | 和反引號同樣 |
# | 在shell腳本中,#開頭的行表明註釋 |
$ | 用於調用變量的值 |
\ | 轉義符號 |
- a=`ls`
- b=$(ls)
複製代碼
添加組
groupadd student
複製代碼
修改組名稱
groupmod -n stu student
複製代碼
修改組編號
groupmod -g 111 stu
複製代碼
添加分組並指定編號
groupadd -g 222 teacher
複製代碼
刪除分組
groupdel 222
複製代碼
添加分組
groupadd teacher
複製代碼
爲用戶指定所屬組
useradd -g teacher zhangsan
複製代碼
爲用戶指定所屬組
useradd -g teacher lisi
複製代碼
爲用戶指定工做目錄
useradd -d /home/zhangsan zhangsan 複製代碼
指定註釋
usermod -c iamateacher zhangsan
複製代碼
修改用戶名
usermod -l zhangsan zhangsan2 複製代碼
指定文件夾
usermod -d /home/zhangsan2 zhangsan2 複製代碼
修改用戶所屬組
usermod -g stu zhangsan2
複製代碼
刪除用戶
userdel zhangsan2
複製代碼
刪除所屬文件夾
userdel -r lisi
複製代碼
顯示登陸的用戶名
whoami
複製代碼
顯示指定用戶信息,包括用戶編號,用戶名 主要組的編號及名稱,附屬組列表
id zhangsan
複製代碼
顯示zhangsan用戶所在的全部組
groups zhangsan
複製代碼
顯示用戶詳細資料
finger zhangsan
複製代碼
/boot
目錄下面的kernel
。內核加載成功後,第一個運行的程序是/sbin/init
。它根據配置文件(Debian系統是/etc/initab)產生init進程。這是Linux啓動後的第一個進程,pid進程編號爲1,其餘進程都是它的後代init
線程加載系統的各個模塊,好比窗口程序和網絡程序,直至執行/bin/login
程序,跳出登陸界面,等待用戶輸入用戶名和密碼。