Linux實用命令 關於Linux中單雙引號的區別: 單引號里的任何字元都會原樣輸出,單引號字元串中的變數是無效的; 雙引號里可以有變數,雙引號里可以出現轉義字元 反引號param=`date`,命令替換,將命令的標準輸出賦值給變數,同$(date) 命令返回值 0 :執行成功(即正常執行,並返回預 ...
Linux實用命令
關於Linux中單雙引號的區別:
- 單引號里的任何字元都會原樣輸出,單引號字元串中的變數是無效的;
- 雙引號里可以有變數,雙引號里可以出現轉義字元
- 反引號param=`date`,命令替換,將命令的標準輸出賦值給變數,同$(date)
命令返回值
- 0 :執行成功(即正常執行,並返回預期結果)
- 非0 :執行失敗
- $? 代表上一個命令執行後的退出狀態,也代表調用函數的返回值
- echo $? 查看返回值
ls |
|
列出當前目錄下所有文件 |
|
find |
|
在指定目錄下查找文件 |
|
-l |
詳細文件信息 |
|
|
-name |
文件名 |
|
-t |
修改時間排序 |
|
|
-iname |
文件名,忽略大小寫 |
|
-r |
逆序排列 |
|
|
-type |
d 文件夾、f 文件 |
|
-h |
可讀的文件大小格式 |
|
|
常用用法 |
find . -name "abc" |
|
-a |
顯示隱藏文件 |
|
|
|
|
|
常用用法 |
ls -ltr |
|
|
|
|
|
|
|
|
|
|
|
locate |
|
查找符合條件的文件(查資料庫) |
|
updatedb |
|
更新locate命令所必需的資料庫文件 |
|
-b |
只查找文件夾 |
|
|
-v |
顯示執行的詳細過程 |
|
-i |
忽略大小寫(預設不忽略) |
|
|
常用用法 |
updatedb -v | less |
|
註意事項 |
如果存在的文件查不到,updatedb |
|
|
|
|
|
常用用法 |
locate abc aab (支持多關鍵詞) |
|
|
|
|
|
|
|
|
|
|
|
chmod |
|
更改文件許可權(讀r 寫w 執行x) |
|
chown |
|
更改文件擁有者 |
|
777 |
rwx(r4 w2 x1)擁有者、群組、其他 |
|
|
-R |
子目錄同樣生效 |
|
-R |
子目錄同樣生效 |
|
|
user:group |
使用者:群組 |
|
常用用法 |
chmod 777 test |
|
|
常用用法 |
chown runoob:users file1.txt |
|
|
|
|
|
|
|
diff |
|
比較文件差異 |
|
ln |
|
創建文件同步鏈接,預設硬鏈接(自動同步的文件) |
|
-y |
併列方式展示 |
|
|
-s |
創建軟鏈接(快捷方式) |
|
-W |
指定寬度(併列方式有效) |
|
|
常用用法 |
ln -s a.txt b.txt |
|
常用用法 |
diff a.txt b.txt -yW 50 |
|
|
|
|
|
|
|
|
|
|
|
less |
|
瀏覽文件 |
|
vi/vim |
|
編輯文件 |
|
常用用法 |
less a.txt |
|
|
常用用法 |
vim a.txt |
|
|
|
|
|
|
|
mv |
|
移動文件 / 文件重命名 |
|
scp |
|
遠程文件拷貝(雙向) |
|
-f |
覆蓋同名文件時不提示 |
|
|
-p |
保留原文件的時間和許可權等 |
|
常用用法 |
mv aaa bbb |
|
|
-r |
遞歸複製整個目錄,預設是不能複製文件夾的 |
|
|
|
|
|
常用用法 |
scp [email protected]:/root/a.txt /tmp/a.txt |
|
|
|
|
|
|
|
rm |
|
刪除文件,預設是不能刪除目錄 |
|
cp |
|
拷貝文件,預設不能拷貝目錄 |
|
-r |
遞歸刪除目錄內的文件,刪除目錄 |
|
|
-r |
遞歸拷貝目錄內的文件,拷貝目錄 |
|
-f |
從不詢問是否刪除 |
|
|
-f |
從不詢問是否覆蓋文件 |
|
-v |
顯示刪除詳情 |
|
|
-p |
保留原文件的時間和許可權等(常用) |
|
常用用法 |
rm -rf test |
|
|
常用用法 |
cp aaa.txt bbb.txt |
|
|
|
|
|
|
|
tee |
|
把數據列印到屏幕和文件中,類似> |
|
touch |
|
刷新文件的時間屬性,文件不存在則創建 |
|
-a |
追加到文件中,類似>> |
|
|
常用用法 |
touch aa.txt |
|
常用用法 |
echo abc | tee aa.log |
|
|
|
|
|
|
|
|
|
|
|
read |
|
標準輸入(控制台輸入),預設回車結束 |
|
grep |
|
文件內查找字元串 / 篩選 |
|
-a |
輸入數組,空格分割 |
|
|
-i |
忽略大小寫,預設是不忽略 |
|
-d |
設置結束符 |
|
|
-n |
顯示行號 |
|
-p |
輸入前顯示內容 |
|
|
-r |
遞歸子目錄查找 |
|
-n |
限制輸入長度 |
|
|
-w |
全詞匹配 |
|
-s |
輸入時不顯示,像輸密碼那樣 |
|
|
常用用法 |
find . -name "*.java" | xargs grep "main" --color |
|
常用用法 |
read str |
|
|
|
grep "main" * |
|
|
|
|
|
|
|
sed |
|
操作文件,增刪改查(腳本常用) |
|
expr |
|
將表達式的值打印到控制台 |
|
-e |
可以指定多個命令 |
|
|
計算 |
expr $arg1 + $arg2(中間的空格是必需的,不加空格是字元串) |
|
-f |
指定命令文件 |
|
|
字元串匹配 |
expr match "abcd" ".*bcd",只能從頭匹配,返回匹配長度 |
|
-n |
取消預設控制台輸出,與p一起使用可列印指定內容 |
|
|
字元串長度 |
expr length "awefwe",返回長度 |
|
-i |
輸出到原文件,靜默執行(修改原文件的意思) |
|
|
字元串截取 |
expr substr "abscw" 2 3,返回bsc,下標從1開始 |
|
常用用法 |
sed 's/old/new/gi' test.txt |
|
|
字元查找 |
expr index "abcd" "c",只能查找字元 |
|
|
|
|
|
變數賦值 |
param=`expr $arg1 + $arg2` (``將標準輸出賦值給變數) |
|
|
|
|
|
|
|
let |
|
操作變數(腳本常用) |
|
ftp |
|
連接FTP |
|
let |
let sum=age+3,不能有空格,變數不用加$ |
|
|
ftp ip |
連接ftp伺服器 |
|
let |
let "sum = age + 3",同上,有空格需要加引號 |
|
|
ls |
查看當前目錄下的文件列表 |
|
不用let |
sum=age+num,預設字元串操作,sum值為"age+num'字元串 |
|
|
pwd |
查看當前目錄的路徑 |
|
|
|
|
|
cd |
切換目錄 |
|
|
|
|
|
get a.txt |
下載文件到當前目錄(執行ftp ip的目錄),自動覆蓋 |
|
|
|
|
|
put a.txt b.txt |
上傳文件,自動覆蓋 |
|
|
|
|
|
delete a.txt |
刪除文件 |
|
|
|
|
|
less a.txt |
查看文件,同linux的less |
|
|
|
|
|
? |
查看各種ftp命令 |
|
|
|
|
|
|
|
df |
|
顯示文件系統的磁碟使用情況 |
|
du |
|
顯示文件夾所占空間大小 |
|
-h |
可讀的文件大小格式 |
|
|
-h |
可讀的文件大小格式 |
|
-a |
顯示所有文件系統 |
|
|
常用用法 |
du -h 或者 du -h /tmp/zzj |
|
常用用法 |
df -h |
|
|
|
|
|
|
|
|
|
|
|
mkdir |
|
創建文件夾 |
|
pwd |
|
顯示當前目錄的絕對路徑 |
|
-p |
父目錄自動創建,用於創建多層文件夾 |
|
|
常用用法 |
pwd |
|
常用用法 |
mkir -p /tmp/abc/ddd/test |
|
|
|
|
|
|
|
|
|
|
|
stat |
|
查看文件屬性(創建時間、修改時間、許可權修改時間等) |
|
tree |
|
以樹狀圖列出目錄的內容,包括子目錄里的文件 |
|
常用用法 |
stat test.txt |
|
|
-A |
繪圖字元顯示樹狀圖(推薦) |
|
|
|
|
|
-a |
顯示隱藏文件 |
|
|
|
|
|
-C |
文件類型著色,便於區分 |
|
|
|
|
|
-f |
顯示完整文件路徑 |
|
|
|
|
|
常用用法 |
tree -AC test |
|
|
|
|
|
|
|
telnet |
|
查看某個埠是否可以訪問 |
|
ifconfig |
|
顯示或設置網路設備 |
|
常用用法 |
telnet 192.168.1.2 8080 |
|
|
常用用法 |
ifconfig eth0 down 關閉eth0網卡 |
|
|
|
|
|
|
ifconfig eth0 up 啟動eth0網卡 |
|
|
|
|
|
|
ifconfig eth0 192.168.1.12 修改ip |
|
|
|
|
|
|
|
netstat |
|
顯示網路狀態 |
|
lsof |
|
列出當前系統打開的文件 |
|
-a |
顯示所有 |
|
|
-i |
指定埠篩選程式 |
|
-n |
功能變數名稱轉換為IP |
|
|
常用用法 |
lsof -i:8080 查看8080埠程式 |
|
-p |
顯示進程PID / 進程名 |
|
|
|
linux環境下的任何事物都以文件的形式存在,例如:進程、網路連接等等都可以列出來 |
|
常用用法 |
netstat -anp | grep ":8080" 查看8080埠程式 |
|
|
|
lsof | grep vim | grep .swp 能查看當前正在編輯的文件和vim進程 |
|
|
埠不是獨立存在的,它是依附於進程的。某個進程開啟,那麼它對應的埠就開啟了,進程關閉,則該埠也就關閉了。而不要純粹的理解為關閉掉某個埠,不過可以禁用某個埠 |
|
|
|
|
|
|
|
|
|
|
|
wall |
|
廣播消息給所有線上用戶(who命令可查看) |
|
which |
|
查看命令的絕對路徑 |
|
常用用法 |
wall hello |
|
|
常用用法 |
which ls |
|
|
|
|
|
|
|
man |
|
查看命令的說明手冊 |
|
ping |
|
檢測主機的連通性 |
|
常用用法 |
man ls |
|
|
常用用法 |
ping 192.168.1.1 |
|
|
|
|
|
|
|
who |
|
查看當前活躍連接 |
|
write |
|
發送消息給指定線上用戶(who命令可查看) |
|
常用用法 |
who /var/log/wtmp 查看歷史連接 |
|
|
常用用法 |
write root pts/1 |
|
|
|
|
|
|
|
useradd |
|
創建用戶 |
|
userdel |
|
刪除用戶 |
|
-m |
創建用戶主目錄,預設在home目錄下創建 |
|
|
-r |
刪除用戶主目錄 |
|
-M |
不創建用戶主目錄 |
|
|
常用用法 |
userdel -r testuser |
|
-d path |
指定目錄為用戶主目錄 |
|
|
|
|
|
-g |
創建時指定用戶群組 |
|
|
|
|
|
常用用法 |
useradd testuser |
|
|
|
|
|
|
|
|
|
|
|
date |
|
顯示當前時間 |
|
finger |
|
查看用戶信息 |
|
-d str |
顯示指定字元串所描述的時間,而非當前時間 |
|
|
常用用法 |
finger root |
|
-s str |
將系統時間設為字元串中指定的時間 |
|
|
|
less /etc/passwd 能查看所有用戶 |
|
-r file |
顯示指定文件的最後修改時間 |
|
|
|
less /etc/group 查看所有用戶群組 |
|
常用用法 |
date |
|
|
|
|
|
|
|
|
|
|
|
sleep |
|
等待指定時間(s秒 m分鐘 h小時 d天) |
|
|
|
|
|
常用用法 |
sleep 5s |
|
|
|
|
|
|
|
|
|
|
|
groupadd |
|
創建用戶群組 |
|
groupdel |
|
刪除用戶群組(只能刪除空群組) |
|
常用用法 |
groupadd testgroup |
|
|
常用用法 |
groupdel testgroup |
|
|
|
|
|
|
|
groupmod |
|
修改用戶群組 |
|
usermod |
|
修改用戶 |
|
-A user |
groupmod -A user testgroup 將用戶加入群組 |
|
|
-g group |
usermod -g testgroup testuser 將用戶加入群組 |
|
-R user |
groupmod -D user testgroup 將用戶移除群組 |
|
|
-d path |
修改用戶主目錄 |
|
-g gid |
groupmod -g 1234 testgroup 修改群組的gid |
|
|
-u uid |
usermod -u 123 testuser 修改用戶的uid |
|
|
|
|
|
|
|
id |
|
查看用戶的uid(用戶唯一標識)、gid、所屬群組 |
|
kill |
|
關閉進程 |
|
常用用法 |
id testuser |
|
|
-KILL |
強制殺死進程 |
|
|
|
|
|
-9 |
徹底殺死進程 |
|
|
|
|
|
常用用法 |
kill -9 PID |
|
|
|
|
|
|
|
last |
|
查看當前活躍連接和歷史連接(類似who) |
|
logname |
|
顯示當前登錄的用戶名 |
|
常用用法 |
last |
|
|
常用用法 |
logname |
|
|
|
|
|
|
|
ps |
|
顯示瞬間進程的狀態 |
|
top |
|
顯示實時進程的狀態 |
|
-e |
顯示所有進程 |
|
|
-d 3 |
刷新周期,預設3秒 |
|
-f |
顯示全格式列表 |
|
|
常用用法 |
top |
|
常用用法 |
ps -ef 顯示所有瞬間進程信息 |
|
|
|
|
|
|
|
|
|
|
|
shutdown |
|
關機 |
|
sudo |
|
使用root用戶執行命令(需要配置/etc/sudoers設置許可權) |
|
-r |
立刻重啟(推薦) |
|
|
常用用法 |
sudo test.sh 使用root執行腳本(需要輸入當前用戶密碼) |
|
-h |
立刻關機 |
|
|
與su區別 |
su root test.sh 也是使用root執行腳本(需要輸入root密碼) |
|
-k |
提示關機,但不會關機 |
|
|
|
|
|
常用用法 |
shutdown -r now |
|
|
|
|
|
|
|
|
|
|
|
su |
|
切換用戶 |
|
w |
|
查看自己當前的連接 |
|
|
su root ./test.sh 使用指定用戶執行腳本 |
|
|
常用用法 |
w |
|
|
su -c ./test.sh root 使用指定用戶執行命令或腳本 |
|
|
|
|
|
常用用法 |
su - oracle |
|
|
|
|
|
|
|
|
|
|
|
clear |
|
清屏 |
|
alias |
|
設置命令的別名(/etc/profile配置永久生效) |
|
常用用法 |
clear |
|
|
|
unalias lt 取消別名 |
|
|
|
&n
更多相關文章
一周排行
所有分類
|