摘自:
常考的 21 條 Linux 命令
目錄)
- cd,切換路徑
- ls,查看文件與目錄的命令
- cp,用于復制文件
- mv,用于移動文件、目錄
- cat,查看文件內容
- find,文件搜索
- 文件權限命令, +設置權限,-取消權限
- 文本處理命令
- 打包和壓縮文件命令
- 進程相關命令
cd,切換路徑
cd ../..
返回上兩級目錄
cd -
返回上次所在目錄
ls,查看文件與目錄的命令
ls
查看目錄中文件
ls -l
顯示文件和目錄詳細資料
ls -a
列出全部文件,包含隱藏文件
ls -R
連同子目錄內容一起列出
cp,用于復制文件
當前目錄 test/ 下的所有文件復制到新目錄 newtest 下,輸入如下命令:
cp –r test/ newtest
其他options:
cp –a
:保留鏈接、文件屬性,并復制目錄下的所有內容
cp –i
:若目標文件已經存在時,在覆蓋時會先詢問操作的進行
mv,用于移動文件、目錄
options選項:
-f
:force強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋
-i
:若目標文件已經存在,就會詢問是否覆蓋
-u
:若目標文件已經存在,且比目標文件新,才會更新
cat,查看文件內容
cat file1
從第一個字節開始正向查看文件的內容tac file1
從最后一行開始反向查看一個文件的內容cat -n file1
標示文件的行數more file1
查看一個長文件的內容head -n 2 file1
查看一個文件的前兩行tail -n 2 file1
查看一個文件的最后兩行tail -n +1000 file1
從1000行開始顯示,顯示1000行以后的cat filename | head -n 3000 | tail -n +1000
顯示1000行到3000行cat filename | tail -n +3000 | head -n 1000
從第3000行開始,顯示1000(即顯示3000~3999行)
find,文件搜索
find / -name file1
從 ‘/’ 開始進入根文件系統搜索文件和目錄find / -user user1
搜索屬于用戶 ‘user1’ 的文件和目錄find /usr/bin -type f -atime +100
搜索在過去100天內未被使用過的執行文件find /usr/bin -type f -mtime -10
搜索在10天內被創建或者修改過的文件whereis halt
顯示一個二進制文件、源碼或man的位置which halt
顯示一個二進制文件或可執行文件的完整路徑
文件權限命令, +設置權限,-取消權限
chmod 命令
ls -lh
顯示權限chmod ugo+rwx directory1
設置目錄的所有人(u)、群組(g)以及其他人(o)以讀(r,4 )、寫(w,2)和執行(x,1)的權限chmod go-rwx directory1
刪除群組(g)與其他人(o)對目錄的讀寫執行權限
chown 命令
(改變文件的所有者)chown user1 file1
改變一個文件的所有人屬性chown -R user1 directory1
改變一個目錄的所有人屬性并同時改變改目錄下所有文件的屬性chown user1:group1 file1
改變一個文件的所有人和群組屬性
chgrp 命令
(改變文件所屬用戶組)chgrp group1 file1
改變文件的群組
文本處理命令
grep命令
(分析一行的信息,若當中有我們所需要的信息,就將該行顯示出來,該命令通常與管道命令一起使用,用于對一些命令的輸出進行篩選加工等等)
grep Aug /var/log/messages
在文件 '/var/log/messages’中查找關鍵詞"Aug"grep ^Aug /var/log/messages
在文件 '/var/log/messages’中查找以"Aug"開始的詞匯grep [0-9] /var/log/messages
選擇 ‘/var/log/messages’ 文件中所有包含數字0-9的行grep Aug -R /var/log/*
在目錄 ‘/var/log’ 及隨后的目錄中搜索字符串"Aug"
paste命令
paste file1 file2
合并兩個文件或兩欄的內容paste -d '+' file1 file2
合并兩個文件或兩欄的內容,中間用"+"區分
sort命令
sort file1 file2
排序兩個文件的內容
sort file1 file2 | uniq
取出兩個文件的并集(重復的行只保留一份)
sort file1 file2 | uniq -u
刪除交集,留下其他的行
sort file1 file2 | uniq -d
取出兩個文件的交集(只留下同時存在于兩個文件中的文件)
comm命令
comm -1 file1 file2
比較兩個文件的內容只刪除 ‘file1’ 所包含的內容comm -2 file1 file2
比較兩個文件的內容只刪除 ‘file2’ 所包含的內容comm -3 file1 file2
比較兩個文件的內容只刪除兩個文件共有的部分
打包和壓縮文件命令
tar命令
tar 是用來建立,還原備份文件的工具程序,它可以加入,解開備份文件內的文件。
tar -czvf test.tar.gz a.c
壓縮 a.c文件為test.tar.gztar -tzvf test.tar.gz
列出壓縮文件內容tar -xzvf test.tar.gz
解壓文件
參數解釋:-c
新建打包文件-t
查看打包文件的內容含有哪些文件名-x
解打包或者解壓縮
注意-c
、-t
、-x
不能同時出現在一個命令中-j
通過bzip2的支持進行壓縮/解壓縮-z
通過gzip的支持進行壓縮/解壓縮-v
在壓縮/解壓縮過程中,將正在處理的文件名顯示出來-f filename
filename為要處理的文件
壓縮與解壓縮命令bunzip2 file1.bz2
解壓一個叫做 'file1.bz2’的文件bzip2 file1
壓縮一個叫做 ‘file1’ 的文件gunzip file1.gz
解壓一個叫做 'file1.gz’的文件gzip file1
壓縮一個叫做 'file1’的文件gzip -9 file1
最大程度壓縮rar a file1.rar test_file
創建一個叫做 ‘file1.rar’ 的包rar a file1.rar file1 file2 dir1
同時壓縮 ‘file1’, ‘file2’ 以及目錄 ‘dir1’rar x file1.rar
解壓rar包zip file1.zip file1
創建一個zip格式的壓縮包unzip file1.zip
解壓一個zip格式壓縮包zip -r file1.zip file1 file2 dir1
將幾個文件和目錄同時壓縮成一個zip格式的壓縮包
進程相關命令
time + 命令:用于測算一個命令or程序的執行時間
ps命令:用于將某個時間點的進程運行情況選取下來并輸出
參數含義:
-A
:所有進程均顯示-a
:不予terminal有關的所有進程-u
: 有效用戶的相關進程-x
:一般與a參數一起使用,列出比較完整信息-l
:較長,較詳細地將pid信息列出
ps aux # 查看系統所有的進程數據
ps ax # 查看不與terminal有關的所有進程
ps -lA # 查看系統所有的進程數據
ps axjf # 查看連同一部分進程樹狀態
根據進程名查看進程信息
ps -ef | grep 進程name
根據進程id查看進程占用端口
netstat -nap | grep 進程id
根據端口查看對應進程
nestat -tunlp | grep 端口號
kill 命令
kill -9 pid
強制關閉pid號的進程pkill 程序name
殺死進程