Linux常用命令及根目錄下各個目錄的作用
Linux常用命令
grep 關鍵字 檔名 //將文字中含有關鍵字的資訊匹配出來,如:grep login etc/passwd,匹配etc/passwd檔案中的login
which 指令 //查詢指令對應的二進位制檔案的路徑,如:which grep
ps -A //檢視系統活躍程序
du -h 檔案或目錄 //以K、M、G為單位顯示目錄或檔案佔據的磁碟空間大小
date -s “2013-09-13 19:42:30” //給系統設定時間
date //檢視系統當前時間
df -lh //檢視系統分割槽情況
kill -9 pid //殺死指定程序號(pid)的程序
ls 顯示檔案或目錄
-l 列出檔案詳細資訊l(list) -a 列出當前目錄下所有檔案及目錄,包括隱藏的a(all)
mkdir 建立目錄
-p 建立目錄,若無父目錄,則建立p(parent)
cd 切換目錄
touch 建立空檔案
echo 建立帶有內容的檔案。
cat 檢視檔案內容
cp 拷貝
mv 移動或重新命名
rm 刪除檔案
-r 遞迴刪除,可刪除子目錄及檔案
-f 強制刪除
find 在檔案系統中搜索某檔案
//在3~4個目錄層次中間查詢passwd檔案
find / -mindepth 3 -maxdepth 4 -name passwd
//查詢檔名中含有”an”的檔案
find . / -name “*an*” -type f
//查詢大於7K的檔案
find ./ -size +7k
//查詢小於100位元組的檔案,c表示位元組
find ./ -size -100c
-name 檔名字 //直接根據檔名字查詢檔案
find / -name passwd //把系統全部目錄“遞迴”遍歷一次,進行passwd檔案查詢
find ./ -name “o*” //在當前目錄下模糊查詢o字元作為開始內容的檔名字
-size 大小 //直接根據檔案大小查詢檔案
單位:預設512位元組
100c 位元組單位(大小:100*1)
12k 千位元組單位(大小:12*1024)
35 512位元組(大小:35*512)
5m 兆位元組(大小:5*1024*1024)
範圍:+(大於)/-(小於)
find ./ -size 23c //找到大小為23位元組的檔案
find ./ -size +7k //找到大小大於7k的檔案
find ./ -size -100c //找到大小小於100位元組的檔案
-maxdepth 層次 //限制最深層次查詢檔案
find / -maxdepth 4 -name passwd //限制最深為4個目錄層次,進行passwd檔案查詢
-perm 許可權 //把符合某個許可權的檔案給查找出來
-user 主人名字 //通過主人查詢檔案
-group 組名字 //通過組別查詢檔案
-type f/d //根據“檔案/目錄”查詢
wc 統計文字中行數、字數、字元數
grep 在文字檔案中查詢某個字串
rmdir 刪除空目錄
tree 樹形結構顯示目錄,需要安裝tree包
pwd 顯示當前目錄
ln 建立連結檔案
more、less 分頁顯示文字檔案內容
head、tail 顯示檔案頭、尾內容
ctrl+alt+F1 命令列全屏模式
系統管理命令
stat 顯示指定檔案的詳細資訊,比ls更詳細
who 顯示線上登陸使用者
whoami 顯示當前操作使用者
hostname 顯示主機名
uname 顯示系統資訊
top 動態顯示當前耗費資源最多程序資訊
ps 顯示瞬間程序狀態 ps -aux
du 檢視目錄大小 du -h /home帶有單位顯示目錄資訊
df 檢視磁碟大小 df -h 帶有單位顯示磁碟資訊
ifconfig 檢視網路情況
ping 測試網路連通
netstat 顯示網路狀態資訊
man 命令不會用了,找男人 如:man ls
clear 清屏
alias 對命令重新命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill 殺死程序,可以先用ps 或 top命令檢視程序的id,然後再用kill命令殺死程序。
打包壓縮相關命令
gzip:
bzip2:
tar: 打包壓縮
-c 歸檔檔案
-x 壓縮檔案
-z gzip壓縮檔案
-j bzip2壓縮檔案
-v 顯示壓縮或解壓縮過程 v(view)
-f 使用檔名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不壓縮
tar -zcvf /home/abc.tar.gz /home/abc 打包,並用gzip壓縮
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,並用bzip2壓縮
當然,如果想解壓縮,就直接替換上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 換成“x” 就可以了。
關機/重啟機器
shutdown
-r 關機重啟
-h 關機不重啟
now 立刻關機
halt 關機
reboot 重啟
Linux管道
將一個命令的標準輸出作為另一個命令的標準輸入。
例:grep -r “close” /home/* | more 在home目錄下所有檔案中查詢,包括close的檔案,並分頁輸出。
ls -l | wc //計算當前目錄中檔案數量
ls -l | head -5 //檢視當前目錄中的前5個檔案
ls -l | head -30 | tail -5 //檢視當前目錄中第26至第30個檔案
grep this apple.txt | grep was //在apple.txt中查詢一行,該行出現”this”,並且出現”was”
Linux軟體包管理
dpkg (Debian Package)管理工具,軟體包名以.deb字尾。這種方法適合系統不能聯網的情況下。
比如安裝tree命令的安裝包,先將tree.deb傳到Linux系統中。再使用如下命令安裝。
sudo dpkg -i tree_1.5.3-1_i386.deb 安裝軟體
sudo dpkg -r tree 解除安裝軟體
注:將tree.deb傳到Linux系統中,有多種方式。VMwareTool,使用掛載方式;使用winSCP工具等;
APT(Advanced Packaging Tool)高階軟體工具。這種方法適合系統能夠連線網際網路的情況。
依然以tree為例
sudo apt-get install tree 安裝tree
sudo apt-get remove tree 解除安裝tree
sudo apt-get update 更新軟體
sudo apt-get upgrade
將.rpm檔案轉為.deb檔案
.rpm為RedHat使用的軟體格式。在Ubuntu下不能直接使用,所以需要轉換一下。
sudo alien abc.rpm
vim使用
vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。
命令模式下:
:q 退出
:q! 強制退出
:wq 儲存並退出
:set number 顯示行號
:set nonumber 隱藏行號
/apache 在文件中查詢apache 按n跳到下一個,shift+n上一個
yyp 複製游標所在行,並貼上
h(左移一個字元←)、j(下一行↓)、k(上一行↑)、l(右移一個字元→)
使用者及使用者組管理
/etc/passwd 儲存使用者賬號
/etc/group 儲存組賬號
/etc/shadow 儲存使用者賬號的密碼
/etc/gshadow 儲存使用者組賬號的密碼
useradd 使用者名稱
userdel 使用者名稱
adduser 使用者名稱
groupadd 組名
groupdel 組名
passwd root 給root設定密碼
su root
su - root
/etc/profile 系統環境變數
bash_profile 使用者環境變數
.bashrc 使用者環境變數
su user 切換使用者,載入配置檔案.bashrc
su - user 切換使用者,載入配置檔案/etc/profile ,載入bash_profile
更改檔案的使用者及使用者組
sudo chown [-R] owner[:group] {File|Directory}
例如:還以jdk-7u21-linux-i586.tar.gz為例。屬於使用者hadoop,組hadoop
要想切換此檔案所屬的使用者及組。可以使用命令。
sudo chown root:root jdk-7u21-linux-i586.tar.gz
檔案許可權管理
三種基本許可權
R 讀 數值表示為4
W 寫 數值表示為2
X 可執行 數值表示為1
sudo chmod [u所屬使用者 g所屬組 o其他使用者 a所有使用者] [+增加許可權 -減少許可權] [r w x] 目錄名
例如:有一個檔案filename,許可權為“-rw-r—-x” ,將許可權值改為”-rwxrw-r-x”,用數值表示為765
sudo chmod u+x g+w o+r filename
上面的例子可以用數值表示
sudo chmod 765 filename
Linux根目錄下各個目錄的作用
/bin 二進位制可執行命令。該目錄下存放著普通使用者的命令
/dev 系統的裝置檔案,即裝置的驅動程式
/home 使用者主目錄的基點
/lost-found 這個目錄平時是空的,當系統非正常關機而留下的“無家可歸”的檔案便會儲存在這裡
/misc 儲存著一些特殊的字元的定義
/net 存放著和網路相關的一些檔案
/proc 存放著使用者與核心的互動資訊
/sbin 系統的管理命令,這裡存放的是系統管理員使用的程式
/srv 系統啟動服務時可以訪問的資料庫目錄
/tmp 臨時檔案,重啟後自動清空
/var 某些大檔案的溢位區,比如各種服務的日誌檔案
/boot 啟動linux的核心檔案
/etc 系統所有的配置檔案都在這個目錄中
/lib 存放著和系統執行相關的庫檔案
/media 存放著可移除的裝置,比如軟盤,光碟
/mnt 掛載目錄,是系統管理員臨時安裝檔案的系統安裝點
/opt (option : 自由選擇)主要給原始碼安裝軟體時選擇的安裝目錄位置
/root 超級使用者的目錄
/selinux 主要用來加固作業系統,提高系統的安全性
/sys 管理裝置檔案
/usr 最大的目錄,存放著應用程式和檔案