1. man
格式化以及列出命令的(在線)操作手冊。
使用方法
man [ -options ] name
2. ls
列出目錄下的內容
ls [option]… [file]…
ls #列出當前文件夾下的所有文檔
ls -l 等同於ll #列出當前文件夾下的所有文檔的詳細資料
ls -al #列出當前文件夾下的所有文檔的詳細資料(包括隱藏文件和父目錄)
ls -lt #列出當前文件夾下的所有ls文檔的詳細資料,修改時間倒序
ls -lrt #列出當前文件夾下的所有文檔的詳細資料,修改時間正序
ls /home/qq #列出某個目錄下的所有文檔
3.pwd
顯示當前或者工作路徑。
4. cd
改變當前所在路徑
cd [dir]
cd 當前用戶主目錄
cd /home/qq 絕對路徑
cd . 本路徑
cd .. 上一級目錄
cd ~
進入到自己的家目錄
cd / 根目錄
cd - 返回進入此目錄之前所在的目錄
4.1.Tab鍵
自動補全
vi
5. mkdir
創建目錄
mkdir testpwd
mkdir /home/qq/test2
mkdir -p /home/qq/test2/test21/test211 #若目錄不存在,則創建
6. cp
拷貝
文件到文件
cp file1 file2 拷貝並重命名
cp /path1/file1 /path2/file2 拷貝並重命名
•文件到目錄
cp file1 ../test1/ 拷貝
cp /home/qq/test1/file1 ./ 拷貝
•目錄到目錄
cp -r test1 test2 #遞歸拷貝
6.1 *
通配符,匹配一個或一個以上任意字符
ls *.txt
ls a*.txt
cp *.txt /path/to/des/
自行了解 “?”和”[]”
7.which
顯示某個命令的完整路徑
which指令會在環境變量$PATH設置的目錄里查找符合條件的文件。
which ls
which cp
另外一個作用:查看某個命令是否安裝,或者是否在自己定義的環境變量中。
8.whereis
列出某個命令的位置、幫助手冊
whereis指令會在特定目錄中查找符合條件的文件。
whereis ls
whereis cd
另外一個作用,在which沒有查詢到的時候,該命令未必不存在,需要再次使用whereis確定。比如bash內建命令
9.clear
清屏(其實只是往上翻了)
10.touch
更改文件的時間屬性
另外一個作用,創建一個空文件
touch a.txt
11.rm
刪除文件或者目錄
rm file1
rm -f file1 #不提示刪除
rm -rf dir #不提示刪除某個文件夾,一定先執行pwd確定自己的位置,慎用
12.vi
編輯器,查看或者編輯一個文本
vi a.txt
i insert,進入編輯狀態
esc 退出編輯狀態
:wq! 保存退出
:q! 退出不保存i
非編輯狀態下q
dd 刪除
yy 拷貝
p 粘貼
/uu 查找包含uu的行
n 查找下一行
shift+n 查找上一行
ctrl+f (forward)下一頁
ctrl+b (back)上一頁
13.cat
顯示文件內容
cat file
cat -n file #顯示行號
避免對大文件使用cat
14.tac
倒序顯示文件,相當於cat反過來
用於對日志文件的檢查等
用得少
15.more
簡易的文件查看器
讓畫面在顯示滿一頁時暫停,此時可按空格健繼續顯示下一個畫面,或按Q鍵停止顯示。
more file 或者使用管道,使用管道功能不全
cat a.txt |more
more a.txt
“空格”下一頁
“回車”下一行
“b” 前一頁
“/patten”查找
15.1. less
簡易的文件查看器
less命令的用法與more命令類似,也可以用來瀏覽超過一頁的文件。所不同的是less命令除了可以按空格鍵向下顯示文件外,還可以利用上下鍵來卷動文件。當要結束瀏覽時,只要在less命令的提示符“: ”下按Q鍵即可。
16.head
顯示文件頭部
head file 默認顯示10行
head -5 file 顯示前5行
17.tail
顯示文件尾部
tail file 默認顯示最后10行
tail -5 file 顯示后5行
tail -f file 實時顯示文件尾部(很重要的命令)
18.echo
echo 123 #回顯
echo aaa>>a.txt #追加
echo aaa>a.txt #覆蓋
19.wc
查看文件行數、單詞個數、字節數:
統計行數:
20.sort
文本排序命令
sort -n file 以數字方式排序
sort -u file 剔重
sort -rn file #ASCII碼方式倒序
sort命令多和管道配合使用
如 :du -k *|sort -rn #文件大小倒序排(很重要),看哪個文件占的多
21.grep
打印匹配的行,grep經常和管道配合使用
grep “正則表達式” file
(注意,用好grep的前提是熟悉linux下的正則)
grep 3 a.txt #a.txt文件中包含3的行都打印出來
grep 3 a.txt |wc -l #a.txt文件中包含3的行都有多少行
grep -n 3 a.txt #包含3的行號和行給打出來
grep -v 3 a.txt #不包含3的行顯示出來
grep 89$ a.txt #結尾為89的行顯示出來
grep ^98 a.txt #開頭為98的行顯示出來
grep -n aa * #當前目錄下所有包含aa的行顯示出來,打印出行號
22.find
在文件系統中查找文件
find命令很復雜,甚至可以稱得上一門腳本語言,這里只介紹幾種常用的命令。
find /path/to -name “test*” 按照命名規則查找
find /path/to -type f 按照文件類型查找
find /path/to -ctime -1 查找一天以內的文件和目錄
find /path/to -cmin +1440 查找1440分鍾以前的文件和目錄
以上四種查找較為常見,可以組合使用。
另外,可以在查找后使用 -exec 執行后續操作
find /path/to -ctime +30 -exec rm -rf {} \; 刪除30天前的文件。
23.tar
打包,tar很強大,這里只介紹打包和解包
tar -zcvf file.tar.gz a.txt b.txt 壓縮文件(把a.txt和b.txt壓縮到file.tar.gz中)
tar -zxvf file.tar.gz 解壓縮
tar -zxvf file.tar.gz -C test/ 解壓縮到指定目錄
-z參數表示是否將文件gzip壓縮
24.kill
kill 10170 #本身和子進程都殺了
kill -9 10170 #只殺進程本身
25.gzip zcat
壓縮
gzip file
zcat file.gz #查看gzip文件
gunzip file.gz #解壓縮
多用於日志的壓縮
26.useradd
添加用戶
useradd username
修改密碼命令
passwd [username]
passwd 為當前用戶修改密碼
passwd username 為其他用戶修改密碼(通常是root操作)
28.su
以另外一個用戶身份啟動新的shell(切換用戶)
su [option] [username]
su 切換到root,但是不使用root環境變量
su - 切換到root,使用root環境變量
注意,一般推薦加上“-”
29.whoami
查看當前使用的用戶名稱
30.logname
查看登錄時的用戶
31.who
查看當前所有登錄用戶
32.last
查看用戶登錄歷史
注意,如果黑客攻擊,一般會修改該文件
33.chown
改變文件屬組
冒號前面為所有者,冒號后面為群組
chown zhang:zhang file #改變文件
chown -R zhang:group dir #改變vi目錄
34.chmod
修改文件的讀寫屬性
0-無權限(-);1-可執行(x);2-可讀(r);4-可寫(w)
第一列代表所屬用戶權限,第二列代表所屬組權限,第三列代表其他用戶權限
35.df
顯示磁盤空間使用情況
df -m #顯示M
df #等同於df -k
36.du
du -sh #當前目錄占用的空間
du -sh * #當前目錄下所有的文件占用的空間
du -sk * |sort -nr #顯示前10個比較大的文件
37.free
查看內存使用情況
free #K顯示
free -m #兆顯示
free -g #G顯示
以下:一共28M,使用2M,剩余26M
38.top
顯示當前系統正在執行的進程的相關信息,包括進程ID、內存占用率、CPU占用率等
第一行,任務隊列信息
系統時間、系統已運行時間、3個用戶登錄系統、load average后面的三個數分別是1分鍾、5分鍾、15分鍾的負載情況
第二行,Tasks — 任務(進程)
89個進程,其中運行中的有1個,88個休眠
第三行,cpu狀態信息
us #用戶占用的CPU百分比
sy #系統占用的CPU百分比
id #空閑CPU百分比
wa #CPU等待IO所用的時間,20%系統會很慢,30%可能沒法操作了,長時間超過50%請檢查硬盤設備,肯定出問題了
第四行,內存狀態
物理內存總量、已使用內存總量、空閑內存總量、緩存
備注:
第四行中使用中的內存總量(used)指的是現在系統內核控制的內存數,空閑內存總量(free)是內核還未納入其管控范圍的數量。納入內核管理的內存不見得都在使用中,還包括過去使用過的現在可以被重復利用的內存,內核並不把這些可被重新使用的內存交還到free中去,因此在linux上free內存會越來越少,但不用為此擔心。
如果出於習慣去計算可用內存數,這里有個近似的計算公式:第四行的free + 第四行的buffers + 第五行的cached。
對於內存監控,在top里我們要時刻監控第五行swap交換分區的used,如果這個數值在不斷的變化,說明內核在不斷進行內存和swap的數據交換,這是真正的內存不夠用了。
第七行以下:各進程(任務)的狀態監控,項目列信息說明如下:
PID — 進程id
USER — 進程所有者
PR — 進程優先級
NI — nice值。負值表示高優先級,正值表示低優先級
VIRT — 進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
RES — 進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
SHR — 共享內存大小,單位kb
S — 進程狀態。D=不可中斷的睡眠狀態 R=運行 S=睡眠 T=跟蹤/停止 Z=僵屍進程
%CPU — 上次更新到現在的CPU時間占用百分比
%MEM — 進程使用的物理內存百分比
TIME+ — 進程使用的CPU時間總計,單位1/100秒
F 、f、 P、 p用來增加或減少顯示項,以及顯示順序
39.ps
顯示當前運行進程
ps -ef
40.ifconfig
ifconfig #查看機器IP,網卡等
這里只做顯示網卡信息使用,建議不要使用ifconfig修改網卡參數
41.netstat
查看網絡信息
netstat -lnp 監聽端口情況
netstat -anp 所有端口情況
42. uname
打印系統信息
uname -a
43.date
查看修改系統時間
date
date -s 19:00:00
44.reboot
重啟
45.shutdown
關機命令
shutdown -k now 通知所有終端,現在要關機,但是實際上不關機
shutdown -h now 通知多有終端,現在要關機,實際上確實關了
shutdown -k 5 通知所有終端,5分鍾后要關機,但是實際上不關機
shutdown -h 5通知所有終端,5分鍾后要關機,實際上確實要關機了
46.如何在SecureCRT中給linux上傳和下載文件
需要上傳或者下載,需要使用rz和sz命令。如果linux上沒有這兩個命令工具,則需要先安裝。可以使用yum安裝。運行命令yum install lrzsz
rz命令上傳本地的文件到linux平台
需要下載linux上的文件,使用sz命令,如:sz install.log
需要設置上傳和下載的默認目錄,點擊SecureCRT的菜單欄中的 選項=》會話選項。打開會話選項對話框,點擊分類中的 終端=》X/Y/Zmodem。