1. 程式人生 > >Linux常用命令及根目錄下各個目錄的作用

Linux常用命令及根目錄下各個目錄的作用

Linux常用命令

grep 關鍵字 檔名 //將文字中含有關鍵字的資訊匹配出來,如:grep login etc/passwd,匹配etc/passwd檔案中的login
which 指令 //查詢指令對應的二進位制檔案的路徑,如:which grep
ps -A //檢視系統活躍程序
du -h 檔案或目錄 //以K、M、G為單位顯示目錄或檔案佔據的磁碟空間大小
date -s2013-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 最大的目錄,存放著應用程式和檔案