linux命令學習記錄
阿新 • • 發佈:2018-10-28
gre 空目錄 man 頁面 遠程服務 -h rm -rf 帳號 消失
一、文件處理命令
1.建立目錄:mkdir
格式:mkdir -p [文件名]
-p:遞歸創建
例如:mkdir test --在當前目錄下創建一個test文件夾
mkdir -p test/lxw --遞歸創建
2.切換所在目錄
格式:cd [目錄]
例如:cd /home/ --從當前目錄切換到根目錄的 home 文件夾下面
簡化操作:
cd ~ --進入當前用戶的家目錄
cd
cd - --進入上次目錄
cd .. --進入上一級目錄
cd . --進入當前目錄
3.刪除目錄
(1)刪除空目錄:rmdir [文件名]
格式:rmdir [文件名]
例如:rmdir test --只有空的文件才能刪除
(2)刪除文件:rm
格式:rm -rf [文件或者目錄]
-r --刪除目錄
-f --強制刪除
例如:rm -rf test --無提示刪除文件夾 test
4.復制命令:cp
格式:cp [選項] [原文件名或目錄名] [目標目錄]
選項:
-r --復制目錄
-p --連帶文件屬性復制
-d --如果原文件是簡介文件,則復制鏈接屬性
-a --相當於 -pdr
例如:cp test.cfg /test/ --復制當前目錄下的test.cfg到 test文件夾下
cp -r abc/ /test/ --復制當前目錄下的abc文件夾到test文件夾下 cp -p abc/ /test/ --復制當前目錄下的abc文件夾到test文件夾下(完整復制) cp -p abc/ /test/ --復制當前目錄下的abc文件夾到test文件夾下(完整復制,常用的)
5.剪切命令或者改名命令:mv
格式:mv [原文件名或目錄名] [目標目錄]
例如:mv abc/ /test/ --剪切abc到test文件夾下
mv abc def --把abc文件改名為def
註意:如果目標文件在當前目錄下,則是改名,如果不在,則是剪切;
6.鏈接命令: ln
格式:ln -s 原文件 目標文件
(1)硬鏈接
例如:ln /root/abc.zip /tmp/abczip.r --把文件abc.zip在/tmp/下創建一個名為abczip.r的硬鏈接
(2)軟連接
例如: ln -s /home/test/wen.txt /home/wen.r --把文件wen.txt在/home/下創建一個名為wen.r的軟連接
二、文件搜索命令
查詢目錄中的內容:ls
-a :查看全部文件,包括隱藏文件
-l :顯示詳細的信息
-h :人性化顯示
-d :查看目錄的屬性
-i:顯示文件的i節點號
查看當前文件的所在位置:pwd
1.locate:搜索速度快
格式:locate 文件名
例如:locate Linux學習筆記.txt --搜索Linux學習筆記.txt文件
註意:locate 搜索的是數據庫,新建的的文件需要更新才能找到
2.whereis :搜索命令的命令
格式:whereis [-b][-m] 命令名
-b:只查找可執行文件
-m:只查找幫助文件
註意:不寫參數查找可執行文件和幫助文件
例如:whereis ls --查找ls命令
whereis -b ls --查找ls命令的可執行文件
whereis -m ls --查找ls 命令的幫助文件
3.which 搜索命令的命令,如果這個命令有別名,他會找到這個別名
格式:which 命令名
例如:which ls --查找ls命令 ,並顯示出他的別名
- find 命令
格式:find [搜索範圍] [搜索條件]
(1) find [地址] -name [文件名] :按文件名搜索
例如:find /home/test/ -name wen.txt --在/home/test/下查找文件名為wen.txt的文件
註意:如果想模糊查詢,則需要使用通配符,常見的通配符有(*:任意字符;?:任意一個字符;[]匹配任意一個中括號呢的內容,通配符通常使用英文雙引號包裹)
例如:find /home/test/ -name "*.txt" --在/home/test/下查找文件名為 .txt 結尾的文件
find /home/test/ -name "wen.tx?" --在/home/test/下查找文件名為 wen.tx 開頭,以任意一個字符結尾的文件
find /home/test/ -name "w[eb]n.txt" --在/home/test/下查找文件名為 wen.txt 或者 wbn.txt 的文件
(2)find [地址] -iname [文件名]:不區分大小寫搜索,與 -name 基本相同
(3)find [地址] -user[文件名]:按所有者搜索
例如:find /root -user root --在 /root 下查找屬於root的文件
ps:find /root -nouser :查找沒有所有者的文件(沒有所有者的文件,不是外來文件和內核產生的文件,就是垃圾文件,請手動刪除.)
?
(4)find [地址] -mtime 時間:按時間搜索
-10:10天內修改的文件
10:第10天修改的數據
+10:10天前修改的數據
例如:find /home/test -mtime -10 --搜索/home/test文件下 10天內修改的文件
ps:除了可以搜索修改的數據外,還可以搜索改變屬性,訪問時間的文件(-atime:文件訪問時間;-ctime:文件屬性改變時間)
(5)find [地址] -size 文件大小:按文件大小搜索
-25k:表示小於25KB
25k:表示扥與25KB
+25k:表示大於25KB
例如:find /home -size +25k --查找/home下大於25kb的文件
ps:表示kb的用小寫字符k,表示兆的用大寫字符M
例如:find /home -size -1M --查找/home下小於1M的文件
(6)find [地址] -inum 文件i節點:按文件節點查找
例如:find /home -inum 2396179 --查找/home i節點為 2396179 的文件
?
(7)常見復合查詢
-a : and邏輯與,表示兩邊都成立
-o : or邏輯或,表示只要有一邊成立
-exec 命令 {}\; : 對搜索的結果進行操作
例如:find /home -size +20k -a -size -50k --查找/home下大於20k並且小於50k的文件
find /home -size -20k -o -size +50k -exec ls -lh {} \; --查找/home下小於20k或者大於50k的文件,並執行 ls -lh 命令
find /home -inum 2396179 -exec rm -rf {} \; --查找/home下 i節點為 2396179 的文件,並刪除它
(8)gerp [選項] 字符串 文件名:字符串搜索命令
-i 忽略大小寫
-v 排除指定字符串
例如:grep "a" a.txt --查詢a.txt文件中的a字符串
grep -iv "a" a.txt --查詢a.txt文件中不包含a字符串
三、文件幫助命令 man
格式:man [選項] 命令名
1.基本的:man ls --查看ls命令的幫助文檔
ps:使用 / -命令查看對應的信息
例如:/ -h --查看-h對應的信息
2.查看man的幫助級別:man -f 命令名,相對應whatis
例如:man -f ls --查看ls的幫助級別,等同於whatis
3.按幫助級別查看幫助:man -幫助級別 命令名
例如:man -1 ls -- 查看級別1的ls命令的幫助
4.查看和命令相關的所有命令:man -k 命令
ps:apropos 和man -k 用法一樣
例如:man -k ls --查看所有和ls有關的命令
5.其他幫助命令
(1)help命令 : 命令 --help
例如:ls --help --查看ls的幫助並退出命令
(2)內部命令:help 命令
例如:help cd --查看cd命令的幫助文檔
(3)詳細信息命令:info 命令
例如:info ls --列出ls命令的詳細命令
ps:info中 -回車:進入子幫助頁面(帶*號的)
-u:進入上層
-n:進入下一個幫助小節
-p:進入上一個幫助小節
-q:退出
四、壓縮與解壓縮命令
1.zip格式:
(1)壓縮命令:zip 壓縮文件夾名 源文件
-r:壓縮文件
例如:zip jp.zip jp --壓縮文件夾jp並命名為jp.zip
zip -r a.zip a.txt --壓縮文件a.txt命名為a.zip
(2)解壓命令:unzip 文件名
例如:unzip a.zip --解壓a.zip文件
2.gzip格式:.gz格式的壓縮源文件會消失
(1)壓縮命令:gzip 源文件名
例如:gzip a.txt --壓縮a.txt並輸出a.txt,壓縮文件命名為 a.txt.gz
ps: 如果想不消失源文件可以用 -c 打印壓縮內容,再用>寫入文件中
例如:gzip -c a.txt > a.gz --把a.txt文件壓縮後寫入a.gz中
如果想壓縮目錄可以使用 -r ,但是只能把目錄中的子文件壓縮,目錄本身不能被壓縮
(2)解壓命令:gzip -d 文件名 或者 gunzip 文件名
例如:gzip -d a.gz --解壓a.gz文件和gunzip a.gz 一樣
如果想要解壓目錄,使用 gzip -dr 文件目錄 ,解壓壓縮的目錄
3.bz2格式:.bz2格式的壓縮源文件也會消失
(1)壓縮命令:bzip2 源文件 (不支持壓縮目錄)
例如:bzip2 a.txt --壓縮a.txt並刪除源文件
ps:如果想保存源文件使用 -k
例如:bzip2 -k a.txt --壓縮a.txt並保存源文件
(2)解壓命令: bzip2 -d 壓縮文件 或者bunzip2 壓縮文件
例如:bzip2 -d a.txt.bz2 --解壓a.txt.bz2並刪除源文件和bunzip2 a.txt.bz2 效果一樣
ps:如果想要保留源文件也是使用 -k
4.tar.gz格式:.tar:打包文件(常用的)
(1)壓縮命令:先打包,再壓縮
例如:tar -cvf jp.tar jp --打包jp目錄;
gzip jp.tar --壓縮jp.tar文件包
(2)解壓命令:先解壓壓縮包,再解壓打包
例如:gzip -d jp.tar.gz --解壓jp.tar.gz壓縮包,得到jp.tar打包文件
tar -xvf jp.tar --解包jp.tar,得到文件目錄
ps:
<1>tar格式的文件可以打包成任意格式的壓縮包。
<2>tar.gz格式的壓縮可以直接壓縮,使用 :tar -zcvf 壓縮包名.tar.gz 源文件名 格式
例如:tar -zcvf jp.tar.gz jp --直接把目錄jp壓縮為.tar.gz格式的壓縮包
tar -zxvf jp.tar.gz --解壓.tar.gz格式的壓縮包
<3>tar.bz2格式的壓縮也可以直接壓縮,使用:tar -jcvf 壓縮包名.tar.bz2 源文件名 格式
例如:tar -jcvf jp.tar.bz2 jp --直接把目錄jp壓縮為.tar.bz2格式的壓縮包
tar -jxvf jp.tar.bz2 --解壓.tar.bz2格式的壓縮包
<4>多文件壓縮:只要把文件跟在後面即可
例如:tar -jcvf jpa.tar.bz2 jp a.txt --把jp目錄和a.txt文件壓縮成jpa.tar.bz2壓縮包
ps:也可以指定壓縮到那個目錄下,只要在文件名前加一個目錄名即可
例如:tar -jcvf /home/jpa.tar.bz2 jp a.txt --把jp目錄和a.txt文件壓縮成jpa.tar.bz2壓縮包並保存到home文件夾下面
<5>解壓到指定位置:-C 目錄
例如: tar -jxvf jp.tar.bz2 -C /home/ --把文件jp壓縮為.tar.bz2格式的壓縮包,並放到home文件夾下面
<6>查看壓縮包:tar -ztvf 壓縮包名 (查看.tar.gz格式的壓縮包)
tar -jtvf 壓縮包名 (查看.tar.bz2格式的壓縮包)
例如:tar -ztvf jp.tar.gz --查看jp.tar.gz壓縮包下的目錄
tar -jtvf jp.tar.bz2 --查看jp.tar.bz2壓縮包下的目錄
五、關機和重啟命令
1.shutdown命令 :shutdown [選項] 時間
-h:關機
-r:重啟
-c:清除上一個命令
例如: shutdown -h now --表示現在關機
shutdown -r 05:20 --表示在林晨5:20分重啟(註意:這樣會使終端卡住,一直到重啟為止,我們需要把它放到後臺去,在時間後面加上 & 符號即可)
shutdown -c --終止關機或者重啟命令
2.其他的關機命令(註意,遠程服務器一般不要關機,直接重啟即可)
halt:命令會先檢測系統的runlevel,若runlevel為0或6,則關閉系統,否則即調用shutdown來關閉系統。
poweroff:命令用來關閉計算機操作系統並且切斷系統電源。
init 0 :使用系統的運行級別來關機
3.其他的重啟命令:
reboot:命令用來重新啟動正在運行的Linux操作系統。
init 6:使用系統的運行級別來重啟。
ps:系統的運行級別
# 0 - 停機(千萬不能把initdefault 設置為0 )
# 1 - 單用戶模式(安全模式)
# 2 - 多用戶,沒有 NFS(沒有共享服務的)
# 3 - 完全多用戶模式(標準的運行級-字符界面:推薦的)
# 4 - 沒有用到
# 5 - X11 (xwindow圖形界面)
# 6 - 重新啟動 (千萬不要把initdefault 設置為6 )
我們可以用 init 來切換運行級別。例如:init 5 --進入圖形界面 ; init 3 --進入字符界面
4.退出登錄命令:
logout:用於退出當前登錄的Shell,logout指令讓用戶退出系統,其功能和login指令相互對應。
exit:退出控制臺,對於多層shell,用於逐層退出,到最頂層shell,作用就和logout相同。
六、其他常用命令
1.掛載命令:mount (一般只有實體機的linux操作系統才用得到,服務器等一般通過網絡傳輸)
-l:顯示已加載的文件系統列表和不寫一樣;
-a:自動掛載分區
格式:mount [ -t 文件系統] [-o特殊選項] 設備文件名 掛載點
掛載光盤的步驟:
(1)創建掛載目錄:mkdir /mnt/cdrom
(2)掛載光盤:mount /dev/sr0 /mnt/cdrom(光盤的默認文件系統-t為iso9660,所以可以省略)
(3)訪問光盤:cd /mnt/cdrom 進入掛載點即可訪問光盤裏的數據
掛載u盤的步驟:(因為U盤是和硬盤一樣,所以我們需要用 fdisk -l 找到他的設備名,這裏我們假設U盤的設備名為sdb1)
(1)創建掛載目錄:mkdir /mnt/usb
(2)掛載U盤:mount -t vfat /dev/sdb1 /mnt/usb(linux不支持ntfs文件系統)
(3)訪問U盤:cd /mnt/usb
2.卸載命令:umount 設備名或者文件掛載點
例如:umount /mnt/cdrom
3. w:用於顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令。
4. who:列出登入帳號,使用的終端機,登入時間以及從何處登入或正在使用哪個X顯示器。
5. last:用於顯示用戶最近登錄信息。單獨執行last命令,它會讀取/var/log/wtmp的文件,並把該給文件的內容記錄的登入系統的用戶名單全部顯示出來。
6. lastlog:用於顯示系統中所有用戶最近一次登錄信息。
7.數據庫更新命令:updatedb
8.查看環境變量:echo $PATH
9.查看ip:ifconfig
常見一級目錄
/ 根目錄
/bin 存放必要的命令
/boot 存放內核以及啟動所需的文件等
/dev 存放設備文件
/etc 存放系統的配置文件
/home 用戶文件的主目錄,用戶數據存放在其主目錄中
/lib 存放必要的運行庫
/mnt 存放臨時的映射文件系統,我們常把軟驅和光驅掛裝在這裏的floppy和cdrom子目錄下。
/proc 存放存儲進程和系統信息
/root 超級用戶的主目錄
/sbin 存放系統管理程序
/tmp 存放臨時文件的目錄
/usr 包含了一般不需要修改的應用程序,命令程序文件、程序庫、手冊和其它文檔。
/var 包含系統產生的經常變化的文件
快捷鍵:
ctrl + L --清屏
linux命令學習記錄