100以內整數四則運算
top:檢視程序動態資訊,記憶體,執行緒等
grep:查詢檔案中的字串head:
檢視檔案的前N行 ,head -2 檔名
free: 檢視記憶體使用
cut:擷取第幾列,必須指定引數-b、-c 或 -f 標誌之一。
-b :以位元組為單位進行分割。這些位元組位置將忽略多位元組字元邊界,除非也指定了 -n 標誌。
-c :以字元為單位進行分割。
-d :自定義分隔符,預設為製表符。
-f :與-d一起使用,指定顯示哪個區域。
ln:硬連結。ln -s:軟連結,原始檔被刪除軟連結無效
date:檢視當前主機的時間
ps:檢視程序, ps aux| grep bash :過濾出某一個程序
ps
顯示和當前終端有關的程序資訊
ps -u byhy
顯示byhy使用者所建立的程序資訊
ps -f
詳細顯示每個程序資訊
ps -e
顯示所有正在執行的程序資訊
ps -ef
顯示當前系統所有的程序
ps –ef|grep python
查詢python程序
kill:殺死程序 ,kill PID
netstat:顯示各種網路相關的資訊
-a
(all)顯示所有選項,預設不顯示LISTEN相關
-t
(tcp)僅顯示tcp相關選項
-u
(udp)僅顯示udp相關選項
-n
不顯示埠協議名,顯示埠數字
-l
只顯示 Listen (監聽) 的狀態埠
-p
顯示建立相關連結的程序PID
-r
顯示路由資訊,路由表
netstat -tunlp | grep埠號:檢視埠號使用情況,佔用情況
-t :僅顯示tcp相關的
-u:僅顯示udp相關的
-n:拒絕顯示別名,能顯示數字的全部轉化為數字
-l:僅列出有在監聽的服務狀態
-p:顯示相關連結的程式名
ssh 遠端ssh連線某主機
ssh 使用者@ip地址
$ ssh user1@192.168.1.12
su 切換使用者
su +使用者名稱 #切換到使用者
sudo +命令 #在root使用者下執行一條命令
sudo su #下面的命令都用root使用者執行
su root #CentOS下切換root使用者的一種方式
tail -f 滾動檢視日誌
tail -f tet 滾動檢視名字為tet的文件內容,不進入編輯介面
tail -f 1000 tet 滾動檢視最後1000行文件內容
cat 檢視檔案內容
cat +目標文字 #普通輸出
cat -n 目標文字 #開頭顯示行號
cat -E 目標文字 #以$結束
cat -ns 目標文字 #去空行,加行號
tac +目標文字 #反方向檢視檔案內容
find 查詢檔案/目錄
cd (change directory)切換目錄
- cd #root根目錄
- cd / #系統根目錄
- cd ../../ #返回上上一層目錄
ls/dir (list)列出目錄下檔案
- ls -a (--all) #列出所有檔案
- ls -d (--directory) #列出目錄
- ls -i (--inode) #顯示每個檔案的inode 號(索引節點號,可以理解為檔案的儲存地址)
- ls -l (-long) #較長格式列出
- ls -lh (--human-readable)與-l #人性化閱讀輸出
cp (copy)拷貝檔案
cp -p +檔名 路徑 #將檔案拷貝到指定路徑,並且保留原檔案的屬性 例:cp -p test.rb /home/test 將test.rb拷貝到test目錄
cp -r +源目錄名 目標目錄名 #將某目錄copy到目標目錄下 例:cp -r Dir/ /home/test 將Dir目錄copy到test目錄下
cp -fr +源目錄下檔名 目標目錄名 #將源目錄下檔名檔案強制copy到目標目錄下 例:cp -fr Dir/* /home/test 將Dir下面的所有檔案強制copy到test目錄下
cp test.rb{,.bak} #備份test.rb,並在尾部加上.bak字尾
cp -u -v file1 file2 #複製檔案,只有原始檔較目的檔案的修改時間新時,才複製檔案
cp file1 file2 #將檔案file1複製成檔案file2
cp -i file1 file2 #採用互動方式將檔案file1複製成檔案file2
cp -p a.txt tmp/ #複製時保留檔案屬性
例子:
cp test test1 複製一個test檔案命名為test1
cp -rtest test1 複製test資料夾命名為test1
chmod 改變檔案/目錄的許可權
chmod ugo+r 檔案 #所有人皆可讀取
chmod a+r 檔案 #所有人皆可讀取
chmod ug+w,o-w 檔案 #設為該檔案擁有者,與其所屬同一個群體者可寫入,但其他以外的人則不可寫入
chmod u+x 檔案 #建立者擁有執行許可權
chmod a-x 檔案 #收回所有使用者的對檔案的執行許可權
chmod 777 檔案 #所有人可讀,寫,執行
clear清屏
mv (move)移動或更名現有的檔案或目錄
mv -b (--backup)+ 目標檔案或路徑 #移動到目標目錄,若覆蓋檔案,則先備份
mv -f (--force )+ 目標檔案或路徑 #強制覆蓋,沒有目標檔案時相當於備份
mv -i (--interactive)+ 目標檔案或路徑 #覆蓋前先行詢問使用者
mv -u (--update)+ 目標檔案或路徑 #在移動或更改檔名時,若目標檔案已存在,且其檔案日期比原始檔新,則不覆蓋目標檔案。
例子:
mv test /root 將test檔案轉移到root路徑下
mv test /root/test1將test檔案轉移到root 路徑下並重命名為test1
dirs 顯示目錄記錄
dirs +n #顯示從左邊算起第n筆的目錄。
dirs -n #退一級目錄的路徑
dirs -l #顯示目錄完整的記錄。
touch 建立檔案
touch +檔名 #將檔案的建立時間改為當前時間,檔案不存在則建之 例:touch test.php 將test.php的檔案時間改為,當前時間,檔案不存在建之
touch -c -t 時間 +檔名 #將檔案時間改為特定時間 例:touch -c -t 05061803 test.php 將檔案時間改為,5月6日18點3分
touch -r #參考檔名 目標檔名 將目標檔案檔案改成跟參考檔案一樣 例: touch -r abc.php test.php 將test.php檔案改成跟abc.php一樣
touch d 時間 檔名 #將檔案日期改為特定天數時間 例:touch -d "2 days ago" test.php 將test.php日期修改為2天以前
例子:
touch test 在當前目錄建立名為test的檔案
mkdir (make directories) 建立目錄
mkdir +檔名 #建立目錄
mkdir -m (--mode)+a=許可權+目錄名 #設定目錄許可權(rwx)例:mkdir -m a=rw bbb 建立目錄bbb,許可權為rw(a是模式固定寫法)
mkdir -p (--parents)+父目錄/子目錄 #若所要建立目錄的上層目錄目前尚未建立,則會一併建立上層目錄 例1:mkdir -p 111/abc 建立abc目錄,111為子目錄 例2:mkdir -p /ms/{sales,hr,web} 建立一個名為/ms的目錄,其中有sales、hr、web的子目錄
mkdir -pv +目錄名 #批量建立目錄 例:mkdir -pv /tmp/test/{a1,b1}/{c1,d1}
mkdir -v (--verbose) #建立目錄,並顯示詳細資訊
例子:mkdir a 在當前目錄建立名字為a的資料夾
rmdir 刪除空目錄
rmdir +目錄名 #刪除目錄,注意必須是空目錄
rmdir -p +目錄/目錄/目錄 #刪除指定目錄及其上級資料夾 例:rmdir -p a/b/c
rm (remove)刪除檔案或目錄
rm -d (-directory) #直接把欲刪除的目錄的硬連線資料刪成0,刪除該目錄
rm -f (--force) #強制刪除檔案或目錄
rm -i (interactive) #刪除既有檔案或目錄之前先詢問使用者
rm -r或-R (--recursive) #遞迴刪除,防止目錄裡面有檔案不能刪除
例子:rm test1 刪除test1檔案
rm test/a 刪除test裡面的a檔案
rm -f test1 強制刪除test1,不會有進一步的提示
rm -r test/ 刪除名為test的資料夾
rm -r test/a 刪除test下的a資料夾
rm -rf test/ 強制刪除名為test的資料夾
echo 顯示一行文字 (可使用萬用字元,正則表示式)
echo +文字內容 #顯示文字
echo -n +文字內容 #顯示不帶尾部回車符的文字
echo -e +"文字內容" #允許使用轉義字元輸出文字 例:echo -e "a\nb\nc"
echo +新文字內容 > 檔名 #重定向,清除原始檔所有內容,並插入單行 例:echo "hello word" >jackonill.txt
echo +新文字內容 >> 檔名 #追加重定向,在原有檔案基礎上末尾插入一行文字逐行
history 檢視使用者歷史操作
history #檢視所有執行過的命令
history n #顯示n條歷史記錄
!n #執行編號歷史是n的命令,注意感嘆號 例:!4 執行編號是4的命令
history -c #清除歷史記錄
id/who 檢視使用者
man +命令 #檢視某命令手冊
id/who #顯示當前使用者的資訊
id 某使用者 #顯示某使用者的資訊
who -a #顯示目前登入系統的使用者詳細資訊
who -b #上次系統啟動時間
man 檢視幫助文件
man +命令 #檢視某命令手冊
vi/vim(vi增強工具) 編輯文字
vim 文字名 #編輯某文字
set nu(number) #vi/vim模式下顯示行數
進入文件後,點選 i 進入insert模式,在文件中輸入文字,在當前游標處編輯,文件下面會有insert的標識
進入文件後,點選 a 可以編輯游標下一位
退出編輯狀態後,輸入Shift+g即可立刻跳轉到本文件最後
點選esc按鈕可以退出編輯狀態
:輸入冒號可以輸入文件相關的指令
wq 表示儲存並退出
q 表示退出
q! 強制退出,不儲存修改的內容
退出編輯狀態,點選 x 鍵可以刪除1個字元,一次有效
退出編輯狀態,點選 dd 可以刪除一行字元
退出編輯狀態,點選 r + 要替換的內容,即可將當前內容替換
ifconfig/ip addr(CentOS) 顯示或設定網路裝置
ifconfig #處於啟用狀態的網路介面
ifconfig -a #所有配置的網路介面,不論其是否啟用
ping 檢測主機(127.0.0.1為主機,可以檢驗網絡卡,用於檢測內網
ifconfig #處於啟用狀態的網路介面
ifconfig -a #所有配置的網路介面,不論其是否啟用
tar (tape archive)解壓縮檔案
-Cdir:指定壓縮/解壓縮的目錄dir
壓縮:tar-jcv-ffilename.tar.bz2要被處理的檔案或目錄名稱
查詢:tar-jtv-ffilename.tar.bz2
解壓:tar-jxv-ffilename.tar.bz2-C欲解壓縮的目錄
tar -czvf +壓縮檔名 原始檔名 #將a1檔案打包並且壓縮 例:tar -czvf a1 g.gz
tar zxvf +目標檔案 #解壓 例: tar zxvf ar_test.tar.gz 解壓ar_test.tar.gz壓縮包
date 顯示系統時間
date #列印時間
date -s +時間 #設定時間 例:date -s '14:35:40'
date +%m%d%H%M%S #按照格式輸出時間
history 檢視使用者歷史操作
history #檢視所有執行過的命令
history n #顯示n條歷史記錄
!n #執行編號歷史是n的命令,注意感嘆號 例:!4 執行編號是4的命令
history -c #清除歷史記錄
sleep 休眠
sleep n;命令 #n秒後,執行某命令,注意分號
shutdown/poweroff/halt 關機/重啟命令
shutdown -h now或/poweroff或halt #立刻關機
shutdown -h 時間 #在特定時間關機
shutdown -H now #立刻停機
shutdown –r now或reboot #重啟
apt-get/yum/dnf 下載軟體包命令
apt-get install 軟體/包 #安裝包
apt-get update 軟體/包 #更新軟體
apt-get remove 軟體/包 #解除安裝軟體
apt-get upgrade #更新已安裝的包
apt-get clean #清理無用的包
diff 比較兩個檔案的差異
diff 檔案1 檔案2 #比較二個檔案的不同
diff 資料夾1/ 資料夾2/ #比較二個資料夾的不同
diff -r 資料夾1/ 資料夾2/ #遞迴比較二個資料夾的不同
df 報告檔案系統磁碟空間的使用情況
df #列出各檔案系統的磁碟空間使用情況
df -a #顯示所有檔案系統的磁碟使用情況
df -ia #列出各檔案系統ionde使用情況
df -h (--human)#目前磁碟空間和使用情況 以更易讀的方式顯示
lsof (list open files)是一個列出當前系統開啟檔案的工具
lsof #列出所有正在使用檔案
lsof 檔名 #找出誰在使用某個檔案
lsof -c 程式 #查詢某個程式開啟的所有檔案
lsof -i #列出所有網路連線
lsof -i TCP #列出所有TCP網路連線
lsof -i:埠號 #找到使用某個埠的程序