1. man 對你熟悉或不熟悉的命令提供幫助解釋
eg:man ls 就可以查看ls相關的用法
注:按q鍵或者ctrl+c退出,在linux下可以使用ctrl+c終止當前程序運行。
2. ls 查看目錄或者文件的屬*,列舉出任一目錄下面的文件
eg: ls /usr/man
ls -l
a.d表示目錄(directory),如果是一個”-”表示是文件,如果是l則表示是一個連接文件(link)
b.表示文件或者目錄許可權限.分別用可讀(r),可寫(w),可運行(x)。
3. cp 拷貝文件
eg: cp filename1 filename2 //把filename1拷貝成filename2
cp 1.c netseek/2.c //將1.c拷到netseek目錄下命名為2.c
4. rm 刪除文件和目錄
eg: rm 1.c //將1.c這個文件刪除
5. mv 移走目錄或者改文件名
eg: mv filename1 filename2 //將filename1 改名為filename2
mv qib.tgz ../qib.tgz //移到上一級目錄
6. cd 改變當前目錄 pwd 查看當前所在目錄完整路徑
eg: pwd //查看當前所在目錄路徑
cd netseek //進入netseek這個目錄
cd //退出當前目錄
7. cat,more命令
將某個文件的內容顯示出來。兩個命令所不同的是:cat把文件內容一直打印出來,而 more則分屏顯示
eg; cat>1.c //就可以把代碼粘帖到1.c文件里,按ctrl+d 保存代碼。
cat 1.c 或more 1.c //都可以查看里面的內容。
gcc -o 1 1.c //將1.c編譯成.exe文件,我們可以用此命編譯出代碼。
8.chmod 命令 權限修改 用法:chmod 一位8進制數 filename。
eg: chmod u+x filenmame //只想給自己運行,別人只能讀
//u表示文件主人, g 表示文件文件所在組。 o 表示其他人 ;r 表可讀,w 表可寫,x 表可以運行
chmod g+x filename //同組的人來執行
9. clear,date命令
clear:清屏,相當與DOS下的cls;date:顯示當前時間。
10. mount 加載一個硬件設備
用法:mount [參數] 要加載的設備 載入點
eg: mount /dev/cdrom
cd /mnt/cdrom //進入光盤目錄
11. su 在不退出登陸的情況下,切換到另外一個人的身份
用法: su -l 用戶名(如果用戶名缺省,則切換到root狀態)
eg:su -l netseek (切換到netseek這個用戶,將提示輸入密碼)
12.whoami,whereis,which,id
//whoami:確認自己身份
//whereis:查詢命令所在目錄以及幫助文檔所在目錄
//which:查詢該命令所在目錄(類似whereis)
//id:打印出自己的UID以及GID。(UID:用戶身份唯一標識。GID:用戶組身份唯一標識。每一個用戶只能有一個唯一的UID和 GID)
eg: whoami //顯示你自已登陸的用戶名
whereis bin 顯示bin所在的目錄,將顯示為:/usr/local/bin
which bin
13. grep,find
grep:文本內容搜索;find:文件或者目錄名以及權限屬主等匹配搜索
eg: grep success * /*查找當前目錄下面所有文件里面含有success字符的文件
14. kill 可以殺死某個正在進行或者已經是dest狀態的進程
eg; ps ax
15. passwd 可以設置口令
16. history 用戶用過的命令
eg: history //可以顯示用戶過去使用的命令
17. !! 執行最近一次的命令
18. mkdir命令
eg: mkdir netseek //創建netseek這個目錄
19. tar 解壓命令
eg: tar -zxvf nmap-3.45.tgz //將這個解壓到nmap-3.45這個目錄里
20. finger 可以讓使用者查詢一些其他使用者的資料
eg: finger //查看所用用戶的使用資料
finger root //查看root的資料
linux下一些主要目錄的功用
/bin 二進制可執行命令
/dev 設備特殊文件
/etc 系統管理和配置文件
/etc/rc.d 啟動的配置文件和腳本
/home 用戶主目錄的基點,比如用戶user的主目錄就是/home/user,可以用~user表示
/lib 標准程序設計庫,又叫動態鏈接共享庫,作用類似windows里的.dll文件
/sbin 系統管理命令,這里存放的是系統管理員使用的管理程序
/tmp 公用的臨時文件存儲點
/root 系統管理員的主目錄(呵呵,特權階級)
/mnt 系統提供這個目錄是讓用戶臨時掛載其他的文件系統。
/lost+found 這個目錄平時是空的,系統非正常關機而留下“無家可歸”的文件(windows下叫什么.chk)就在這里
/proc 虛擬的目錄,是系統內存的映射。可直接訪問這個目錄來獲取系統信息。
/var 某些大文件的溢出區,比方說各種服務的日志文件
/usr 最龐大的目錄,要用到的應用程序和文件幾乎都在這個目錄。其中包含:
/usr/X11R6 存放X window的目錄
/usr/bin 眾多的應用程序
/usr/sbin 超級用戶的一些管理程序
/usr/doc linux文檔
/usr/include linux下開發和編譯應用程序所需要的頭文件
/usr/lib 常用的動態鏈接庫和軟件包的配置文件
/usr/man 幫助文檔
/usr/src 源代碼,linux內核的源代碼就放在/usr/src/linux里
/usr/local/bin 本地增加的命令
/usr/local/lib 本地增加的庫
二 、linux文件系統
文件系統指文件存在的物理空間,linux系統中每個分區都是一個文件系統,都有自己的目錄層次結構。linux會將這些分屬不同分區的、單獨的文 件系統按一定的方式形成一個系統的總的目錄層次結構。一個操作系統的運行離不開對文件的操作,因此必然要擁有並維護自己的文件系統。
linux文件系統使用索引節點來記錄文件信息,作用像windows的文件分配表。
索引節點是一個結構,它包含了一個文件的長度、創建及修改時間、權限、所屬關系、磁盤中的位置等信息。一個文件系統維護了一個索引節點的數組,每個 文件或目錄都與索引節點數組中的唯一一個元素對應。系統給每個索引節點分配了一個號碼,也就是該節點在數組中的索引號,稱為索引節點號。
linux文件系統將文件索引節點號和文件名同時保存在目錄中。所以,目錄只是將文件的名稱和它的索引節點號結合在一起的一張表,目錄中每一對文件名稱和索引節點號稱為一個連接。
對於一個文件來說有唯一的索引節點號與之對應,對於一個索引節點號,卻可以有多個文件名與之對應。因此,在磁盤上的同一個文件可以通過不同的路徑去訪問它。
可以用ln命令對一個已經存在的文件再建立一個新的連接,而不復制文件的內容。
連接有軟連接和硬連接之分,軟連接又叫符號連接。它們各自的特點是:
硬連接:原文件名和連接文件名都指向相同的物理地址。
目錄不能有硬連接;硬連接不能跨越文件系統(不能跨越不同的分區)
文件在磁盤中只有一個拷貝,節省硬盤空間;
由於刪除文件要在同一個索引節點屬於唯一的連接時才能成功,因此可以防止不必要的誤刪除。
符號連接:用ln -s命令建立文件的符號連接
符號連接是linux特殊文件的一種,作為一個文件,它的數據是它所連接的文件的路徑名。類似windows下的快捷方式。
可以刪除原有的文件而保存連接文件,沒有防止誤刪除功能。
這一段的的內容過於抽象,又是節點又是數組的,我已經盡量通俗再通俗了,又不好加例子作演示。大家如果還是雲里霧里的話,我也沒有什么辦法了,只有先記住,日后在實際應用中慢慢體會、理解了。這也是我學習的一個方法吧。
三 、掛載文件系統
由上一節知道,linux系統中每個分區都是一個文件系統,都有自己的目錄層次結構。linux會將這些分屬不同分區的、單獨的文件系統按一定的方式形成一個系統的總的目錄層次結構。這里所說的“按一定方式”就是指的掛載。
將一個文件系統的頂層目錄掛到另一個文件系統的子目錄上,使它們成為一個整體,稱為掛載。把該子目錄稱為掛載點。
舉個例子吧:
根分區:
/根目錄
┃
┏━━━━┳━━━━━┳━━━━━┳━━━━━╋━━━━━┳━━━━━┳━━━━━┳━━━━━┓
┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃
bin home dev etc lib sbin tmp usr var
┃
┏━┻━┓
┃ ┃
rc.d cron.d
┃
┏━━━┳━━━┳━┻━┳━━━━┓
┃ ┃ ┃ ┃ ┃
init.d rc0.d rc1.d rc2.d ……
/usr分區 :
usr
┃
┏━━━━┳━━━╋━━━┳━━━┳━━━┓
┃ ┃ ┃ ┃ ┃ ┃
X11R6 src lib local man bin
┃ ┃
┃ ┏━━━╋━━━┓
┃ ┃ ┃ ┃
linux bin lib src
