① Unix 常用命令
Unix 命令
ls :顯示文件夾下多有文件夾、文件夾名稱
命令格式:ls [option] file
option:
-l :顯示詳細列表
1:文件類型和文件許可權
2:文件連接數
3:文件所有者名字
4:文件用戶組名字
5:文件長度
6-8:最近修改日期
9:文件名
-a:顯示所有文件,包含隱藏文件(.起頭的文件名)
-R:顯示文件及所有子目錄
-F:顯示文件和目錄
-d與l:顯示目錄名而非內容
cd 目錄轉換
格式:cd dirname
pwd 顯示當前路徑
cat 顯示文件內容
格式:cat filename
more 以分頁方式查看內容
格式:more filename
rm 刪除文件
格式:rm [-r] filename
rm file1 刪除檔名為file1之文檔
rm file? 刪除檔名中有五個字元,前四個字為file的所有文檔
rm f* 刪除檔名中,以f首字母的所有文檔
rm -r dir1 刪除目錄dir1,及以下所有文檔及子目錄
mkdir 創建目錄
格式:mkdir [-p] directory-name
eg:
mkdir dir1: 新建新目錄dir1
mkdir -p dir/subdir 直接創建多級目錄
rmdir 刪除目錄,目錄首先為空
格式:rmdir dirname
cp 文檔復制
格式:cp [-r] source destination
cp file1 file2 :將file1復製成file2
cp file1 dir1: 將file1復制到目錄dir1下,文件名仍為file1
cp /tmp/file1 file2 :將目錄/tmp下的文檔file1復制到當前目錄下,文件名為file2
cp -r dir1 dir2:復制整個目錄
若dir2存在,則將dir1及子目錄復制到dir2下,dir2不存在,復制命名fir2
mv 文件移動
格式:mv source destination
mv file1 file2 :將file1改名為file2
mv file1 dir1 :將file1 移動到dir1
mv dir1 dir2 : dir2存在,將dir1移到dir2,dir2不存在,dir1改名為dir2
:查看目錄所佔磁碟容量
格式: [-sk] directory
:羅列當前目錄下所有文件,文件名
dir1 :顯示 dir的總容量及此目錄容量
-sk dir1 : 顯示目錄dir1的總容量,以k byte為計量
find 文件查找
格式:find dir -name filename command
find . -name file -print : 尋找目前目錄及所有子目錄內叫file的文檔
find . -ctime+7 -print 找出七天內未被更改的文檔
find . -size+2000m -print 找出大小找過2000 btyes 的文檔
find /tmp -user b1234567 -print 在/tmp下屬於b1234567的文檔
find . -name 『*.c』 -exec rm {} :刪除所有的.c文檔
find . -name test* -print顯示當前目錄及子目錄文件名前4位為test的文件名
vi 編輯器
命令狀態:
j,k,h,l :上下左右
0:行首
:刪除游標後半行
ctrl+f:後翻頁
ctrl+b:前翻頁
G:文件尾
/string:查找字元串
n:繼續查找
N:反向繼續查找
%:查找對應括弧
u:取消上次操作
ex命令狀態:
ex:set number 顯示行號
:set smd 顯示顯示狀態
:0 文件首
:1,5 7 :塊拷貝
:1,5 del :塊刪除
:1,5 move 7 :塊移動
:1, $s/string1/string2/g 全文查找string1並替換string2
:wq!存檔退出
② 說說常用的UNIX命令
下文列出了常用的unix命令。
more less:
less的作用與more十分相似,都可以用來瀏覽文字檔案的內容,不同的是less允許使用者往回卷動以瀏覽已經看過的部份,同時因
為less並未在一開始就讀入整個檔案,因此在遇上大型檔案的開啟時,會比一般的文書編輯器(如 vi)來的快速。
unix種類[圖]
>> linux ‖ BSD ‖ Solaris ‖ SCO ‖ HP-UX ‖ AIX ‖ AS400 ‖ Tru64 ‖ IRIX ‖ MacOsX
UNIX命令
一、UNIX命令格式
1、UNIX命令提示符
在命令行下,操作系統會顯示一提示符,提示用戶在此提示符後可以輸入一行命令。不同的Shell有不同的預設提示符:
B Shell和K Shell的預設提示符為"$";
C Shell的預設提示符為"%";
但當以root用戶登錄時,系統提示符統一預設為"#"。
用戶可以更改自己的預設Shell和提示符。
2、基本命令格式
在Shell提示符下,就可以輸入UNIX命令。UNIX命令的基本格式如下:
command 參數1 參數2 ... 參數n
UNIX命令由一個命令(command)和零到多個參數構成,命令和參數之間,以及參數與參數之間用空格隔開。UNIX的命令格式和DOS的命令格式相似,但UNIX的命令區分大小寫,且命令和參數之間必須隔開。如:對DOS來說是以下四條命令是相同的:
cd\tmp
cd \tmp
CD \tmp
cd \Tmp
對UNIX操作系統來說,改變目錄的命令也是cd命令,以下是正確的UNIX cd命令:
cd /tmp
cd /Tmp
但tmp和Tmp是兩個不同的目錄。以下兩條命令:
cd/tmp
CD /tmp
已經不是cd命令了。
3、在一行中運行多個命令
可以在一行中輸入多個命令,命令間用「;」分開,如:
mkdir tmp ; cp file1 tmp/file2 ; ls -l tmp
UNIX會順序執行以上三條命令。
4、在後台運行程序
要讓程序在後台執行,只需在命令行的最後加上「&」符號。
[例1] 在後台運行find命令,在當前目錄及其子目路下查找文件名為abc的文件。
執行命令和立即顯示的內容如下:
$ find . -name abc -print&
10722
$
...
10722表示進程號(PID)。當find命令在後台執行完後,會顯示結果。
當在後台運行命令時,最好將其輸出重定向輸出到一個文件中去,以便以後檢查。
[例2] 在後台運行find命令,在當前目錄及其子目路下查找文件名為abc的文件並將結果存到myfind文件中。
執行命令如下:
$ find . -name abc -print>;myfind&
在運行後台程序的同時可以繼續輸入命令。
5、nohup命令
當終端退出後,由該終端啟動的後台程序自動退出。要想終端退出後程序不停止運行,則要用nohup命令啟動後台程序。如對於例2的命令加入nohup後變為:
$ nohup find . -name abc -print>;myfind&
二、特殊按鍵
在UNIX命令操作中有一些特殊鍵,列表如下:
Ctrl + d 結束鍵盤輸入或退出當前shell
Del 中斷鍵,停止當前動作回到shell
Ctrl+s 暫停屏幕輸出
Ctrl+q 繼續屏幕輸出
Ctrl+u kill鍵,刪除游標所在行的所有字元
Esc 結束當前的操作狀態(如vi)
三、UNIX常用簡單命令
下表列出了幾個簡單的UNIX命令:
解釋 UNIX命令 命令舉例
查看幫助信息 man mandate
查看日期 date date
顯示日歷 cal cal1998
顯示大寫大字 bannerbanner 「ABCD」
計算器 bc bc
修改口令 passwdpasswd
查看誰在使用系統 whowho
查看我是誰 who am iwho am i
顯示用戶信息 fingerfinger 用戶名
清除屏幕 clearclear
1、man命令 - 查看幫助信息
舉例:
查看man的使用方法: man
查看finger命令的幫助信息: man finger
2、date命令 - 顯示、修改日期和時間
顯示時間的命令如下:
date
顯示如下:
Mon Aug 17 13:43:14 NST 1998
表示NST標准時間,1998年8月17日13:43:14,星期一。
3、cal命令 - 顯示日歷
舉例:
顯示1998年全年日歷: cal 1998
顯示1998年8月日歷: cal 8 1998
4、banner命令 - 顯示大寫大字
舉例:在屏幕上用大字顯示「HUAWEI」,命令如下
banner "HUAWEI"
5、bc命令 - 簡單計算器
bc命令可以進行加、減、乘、除、求模、乘方運算,運算符分別為「+」「-」「*」「/」「%」「^」。bc使用舉例如下
bc
以後輸入算式即可,如:
1234 * 3 + 2^4
按回車顯示結果,以後等待輸入其它算式。按<Ctrl>;+d鍵退出bc。
6、passwd命令 - 修改口令
要修改自己的口令,只需運行:
passwd
以後系統會提示輸入原來口令,並輸入新口令。
7、who命令 - 查看正在使用UNIX的用戶
用法如下:
who
系統會顯示正在使用UNIX的用戶名、終端號和登錄時間。要查看使用者自己的信息,運行:
who am i
8、finger命令 - 顯示用戶信息
finger命令比who命令顯示的信息量大,功能強。基本使用方法如下:
顯示登錄信息: finger
顯示smith用戶詳細信息: finger smith
9、clear命令 - 清除屏幕
clear
四、UNIX用戶間簡單通訊命令
UNIX提供許多方式讓用戶相互通信,它允許你以文本的方式發送及接收信息。你可以傳遞信息給其他用戶、所有用戶、或自己。信息來源可以是文本文件或直接由鍵盤輸入的內容。
(一)write 命令
可使用write 實用程序向已登錄的另一個用戶發送一條報文,當對方也使用write 命令時,雙方之間就建立了通信。
當用戶使用write 命令時,就在對方用戶終端上顯示提示信息。write 命令的格式如下:
write destination-user [terminal]
其中,destination-user是你想與之通信的用戶注冊名,通常使用who 命令查看其注冊名。如果對方在多台終端上登錄,可通過用terminal 來控制write 的報文送向指定的終端。為了建立與其他用戶的雙向通話,用戶和對方每次必須執行write 命令,且必須指定注冊名。一般在使用UNIX 進行通話時,通信雙方有一些約定:用「o」 表示結束一條報文,「oo」 表示結束這次通信,用ctrl-d 退出write 命令。
[例1] UNIX上兩用戶alex 和jenny 通過write命令通信。
在alex的所在終端上(<CR>;表示回車):
$ write alex <CR>;
Hi Alex, are you there? o<CR>;
Message from Alex (tty11)[Sat Jan 5 15]….
Yes Jenny, I』m here. o<CR>;
……
Thank you ,Alex, bye! oo<CR>;
Ctrl-d
$
該例說明了使用write 命令實現Alex 和Jenny 的通信過程。首先Jenny 使用前兩行向Alex發送了一條報文,接下來的兩行是Alex 發送的報文Jenny 收到了,省略號表示他們的通信繼續。最後,Jenny 用thank you,Alex,bye!oo 告訴Alex沒有話要說了,並在下一行開始鍵入ctrl-d 來退出write 並回到shell。
(二)使用talk雙方對話
talk 命令是一個虛擬通信命令,它允許登錄雙方通過鍵盤實時對話,其格式如下:
talk user-name [terminal]〈CR〉
注意,使用talk 進行雙方對話時,雙方使用的機器體系結構必須相同。當對方給出響應的talk命令後,雙方終端上都顯示
[connect established]
時,雙方可雙工通信了。雙方可以以任意的速度從鍵盤輸入,talk 把你的輸入一行一行的顯示在你和對方的屏幕上。用<Delete>;退出talk 。
(三)使用mesg 拒絕和允許接收報文
mesg 命令允許或拒絕接收由其它終端發來的write 和talk通訊信息。mesg命令在本地終端運行,其使用格式如下:
mesg [y] [n]〈CR〉
其中,y 表示允許接收,n 表示拒絕接收。如既不給出y 也不給出n ,則報告現在的許可狀態。例:
[例1] 顯示狀態:
$mesg <CR>;
則命令的執行結果為:
is y
或 is n
[例2] 拒絕接收由其它終端發來的write和talk通訊信息:
$mesg n
$mesg
is n
(四)wall 廣播式消息傳遞
所有登錄用戶都可收到該消息。僅超級用戶使用該命令。wall命令有以下幾種格式:
# wall
# wall filename
# wall 「send a messageto all the people。」
2.4 注銷(退出UNIX系統)
在每次使用完後,一定要進行注銷,以防他人通過你的帳號進入系統,並保證系統的完整性。注銷過程如下:在UNIX提示符下,運行:
$ exit
或
$ logout
或直接按鍵:
Ctrl+d。
由於UNIX操作系統的不同,注銷的命令也可能不同。
--------------------------------------------------------------------------------
3.5 UNIX文件存取許可權
一、文件的存取許可權
UNIX文件的存取有三種許可權:
許可權 普通文件的存取許可權目錄的存取許可權
R 具有讀取文件的權利能讀取文件名稱
W 具有寫入文件的權利能建立和刪除文件,可以改變文件名
X 具有執行文件的權利能使用該目錄下的文件(如cd命令)搜索文件等
二、能夠存取文件的用戶類型
有三種類型的用戶可以存取文件:
用戶類型 說明
owner 文件的屬主(擁有者)
group 用戶組內成員
other 其他用戶(非owner和非group)
每種類型的用戶都有三種文件存取許可權:r、w、x。
三、文件存取許可權的顯示
可以通過」ls -l」命令顯示,如:
$ ls -l file1
顯示如下:
-rwxr-xr-- 2 wjm newservice 321 Oct 1709:33 file1
上行中:
第2-4字元」rwx」表示此文件屬主wjm對文件file1的權利為」可讀、可寫、可執行」;
第5-7字元」r-x」 表示此用戶組newservice內的用戶對文件file1的權利為:
」可讀、不可寫、可執行」;
第8-10字元」r--」 表示其他用戶對文件file1的權利為」可讀、不可寫、不可執行」
四、文件存取許可權的修改
用chmod命令修改文件的存取許可權,chmod命令的格式如下:
格式1:chmod symbolic_mode file…
格式2:chmod absolute_mode file…
(一)格式1:符號模式(symbolic_mode), 符號模式的命令格式如下:
chmod [who] op permision file…
who項表示用戶類型,它的內容為以下一項或多項:
U 文件屬主(user --- owner)
G 用戶組(group)
O 其他人(other)
A 所有人(all)
op項表示動作:
+ 表示要加上permission指定的權利
- 表示要取消permission指定的權利
permission項為存取許可權,它的內容為以下一項或多項:
r 表示可讀
w 表示可寫
x 表示可執行
舉例:
chmod u+w test report 屬主對test和report文件「可寫」
chmod u-x abc.c 屬主對abc.c文件不可執行
chmod u+rwx myfile1 屬主對myfile1「可讀、可寫、可執行」
chmod ugo+rwx myfile2 任何人都對myfile1「可讀、可寫、可執行」
(二)格式2:絕對模式(absolute_mode), 符號模式的命令格式如下:
chmod xyz file…
x、y、z分別是0-7的數字,分別表示屬主、用戶組、其他人對該文件的存取許可權。x、y、z的取值公式均為:
a*4 + b*2 +c
其中,
a=1分別表示可讀,a=0表示不可讀;
b=1分別表示可寫,b=0表示不可寫;
c=1分別表示可執行,c=0表示不可執行;
舉例:
chmod 751 ncp 屬主對ncp擁有「可讀、可寫、可執行」的全部權利;組內成員對ncp只有「可讀、可執行」的權利;其他用戶對ncp只有「可執行」的權利。
五、改變文件屬主及文件所在組
改變文件屬主的格式如下:
chown 屬主名 文件名
必須對文件具有write權利才可改變文件的屬主。
改變文件所在組的格式如下:
chgrp 組名 文件名
必須是文件的屬主或supervisor才能改變文件組別的歸屬。
舉例:
chown wjm test1 將文件test1的屬主改為wjm
chgrp newservice test1 將文件test1的用戶組改為newservice
3.6 UNIX重定向與管道
UNIX重定向 將文件的標准輸出重新定向輸出到文件,或將數據文件作為另一程序的標准輸入內容。重定向符號如下:
< 重定向輸入
>; 重定向輸出
>;>; 重定向輸出並追加到尾部
例如:
ls -l >; file1 將ls -l命令顯示的內容存到file1中,
ls >;>; file1 將ls 命令顯示的內容附加存到file1的尾部
grep abc < file1 將file1的內容作為grep abc命令的輸入
其中,">;"和">;>;"為輸出重定向符,">;"將輸出內容存到重定向文件中,若文件存在,則先刪除原有內容;">;>;"將輸出內容存到重定向文件的尾部。
UNIX管道 將一文件的輸出作為另一文件的輸入。管道符號如下:
| 將左邊命令的輸出,作為右邊命令的輸入
例如:
ls|more 將ls的輸出作為more命令的輸入
ps -ef|grep smith ps -ef的輸出作為grep smith命令的輸入
3.7 UNIX文件系統常用命令
UNIX命令 UNIX命令舉例 類似DOS命令
顯示當前目錄 pwd pwdcd
改變目錄 cd cd/usr cd c:\usr
進入家目錄 cd cd
創建目錄 mkdirmkdir abc md abc
刪除空目錄 rmdirrmdir abc rd abc
刪除目錄及其內容 rm -rrm -r abc deltree abc
顯示目錄內容 ls lsabcls -l abc(文件長列表)ls -aabc(所有類型文件)ls -d *(不進子目錄) dir abc
顯示文本文件內容 catcat file1.c type file1.c
一次一屏顯示文本文件內容more more file1.c
拷貝文件 cp cpfile1 file2 file1 file2
移動(重命名)文件 mv mv call.test call.listmove call.tst call.lstren call.test bbb
刪除文件 rm rmcall.list delcall.lst
一、pwd命令
pwd命令用來顯示當前目錄路徑,命令如下:
pwd
二、cd命令
cd命令用於改變當前的目錄,如:
命令舉例 說明
cd /usr/smith 改變到/usr/smith目錄
cd ../wjm 改變到父目錄下的wjm子目錄
cd exam1 改變到當前目錄下的exam1子目錄
cd 改變到家目錄
不帶參數的cd命令表示進入家目錄,這點與DOS有本質區別。
三、rm命令
rm命令可以刪除文件及目錄,舉例如下:
命令舉例 說明
rm file2 刪除當前目錄下的文件file2
rm file* 刪除當前目錄下以file開頭的文件
rm -r /usr/wjm/exam2 刪除目錄/usr/wjm/exam2及其內容
四、ls命令
ls命令可以顯示目錄內容,命令格式如下:
ls -選項 文件名
其中的常用選項說明如下:
-l 長列表顯示目錄內容
-a 顯示所有類型文件,包括隱含文件
-d 如果顯示內容包含目錄名,則只顯示目錄名字不顯示目錄內容
命令舉例如下:
命令舉例 說明
ls 顯示當前目錄內容
ls file* 顯示除當前目錄下以file開頭的文件
ls -l /usr/wjm/exam2 長列表顯示目錄/usr/wjm/exam2內容
ls -adl 顯示當前目錄內容(同時帶-l、-d、-a參數)
[注] 」ls -l」命令顯示格式如下:
drwxrwxr-x 2 smith group 48 Jan 05 1998 john
-rwxr-xr-- 1 wjm newservice 321 Oct 17 09:33 file2
上面每行中:
第一列:
第1個字元表示文件的類型(d表示目錄,-表示普通文件);
第2-4字元表示文件屬主對此文件的訪問許可權(如:「rwx」和「rwx」);
第5-7字元表示用戶組對此文件的訪問許可權(如:「rwx」和「r-x」);
第8-10字元表示其他用戶對此文件的訪問許可權(如:「r-x」和「r--」);
其中,訪問許可權用三個字元表示,順序是「rwx」,「r」表示可讀、「w」表示
可寫、「x」表示可執行。若某項禁止訪問則為「-」,如:「r-x」表示可讀、
不可寫、可執行;
第二列:此文件的鏈接數(如:2和1);
第三列:此文件的屬主名(如:smith和wjm);
第四列:用戶組名(如:group和newservice);
第五列:文件所佔位元組數(如:48和321);
第六至八列:最後修改的日期和時間(如:「Jan 05 1998」和「Oct 17 09:33」);
第九列:文件名(如:john和file2)。
五、mkdir、rmdir、cat、more、cp、mv命令
這些命令和DOS的相應命令功能和用法基本一致,它們和DOS命令的對應關系如下:
UNIX命令 DOS命令
mkdir mkdir或md
rmdir rmdir或rd
cat type
more more
cp
mv move或ren
本文來自CSDN博客:http://blog.csdn.net/chinayuan/archive/2008/10/14/3072562.aspx
③ UNIX的命令
UNIX命令眾多,常用基本命令如下:
1.ls 顯示文件名,等同於dos下dir命令
命令格式:ls [option] file
option:
-l 顯示詳細列表
域1 :文件類型和文件許可權
域2 :文件連接數
域3 :文件所有者名字
域4 :文件用戶組名字
域5 :文件長度
域6-8 :最近修改日期
域9 :文件名
-a 顯示所有文件,包含隱藏文件(以. 起頭的文件名)
-R 顯示文件及所有子目錄
-F 顯示文件(後跟*)和目錄(後跟/)
-d 與l選項合用,顯示目錄名而非其內容
2.cd 目錄轉換,等同於dos下cd命令
注意目錄分隔符為「/」,與dos相反
命令格式:cd dirname
3.pwd 顯示當前路徑
4.cat 顯示文件內容,等同於dos下type命令
命令格式:cat filename
5.more 以分頁方式查看文件內容.
命令格式:more filename
6.rm 刪除文件
命令格式: rm [-r] filename (filename 可為檔名,或檔名縮寫符號.)
例子 :
rm file1 刪除檔名為 file1 之文檔.
rm file? 刪除檔名中有五個字元,前四個字元為file 之所有文檔.
rm f* 刪除檔名中,以 f 為字首之所有文檔.
rm -r dir1 刪除目錄 dir1,及其下所有文檔及子目錄.
7.mkdir 創建目錄
命令格式: mkdir [-p] directory-name
Exmaple :
mkdir dir1 建立一新目錄 dir1.
mkdir -p dir/subdir 直接創建多級目錄
8.rmdir 刪除目錄
目錄必須首先為空
命令格式: rmdir directory
9.cp 文檔復制
命令格式: cp [-r] source destination
例子:
cp file1 file2 將文檔 file1 復製成 file2
cp file1 dir1 將文檔 file1 復制到目錄 dir1 下,文件名仍為 file1.
cp /tmp/file1 . 將目錄 /tmp 下的文檔 file1復制到現行目錄下,
檔名仍為 file1.
cp /tmp/file1 file2 將目錄 /tmp 下的文檔 file1現行目錄下,檔名
為file2
cp -r dir1 dir2 (recursive ) 復制整個目錄.
若目錄 dir2 存在,則將目錄dir1,及其所有文檔和子目錄,
復制到目錄 dir2 下,新目錄名稱為dir1.若目錄dir2不存在,
則將dir1,及其所有文檔和子目錄,復制為目錄 dir2.
10.mv 文件移動
命令格式: mv source destination
例子:
mv file1 file2 將文檔 file1,更改檔名為 file2.
mv file1 dir1 將文檔 file1,移到目錄 dir1 下,檔名仍為 file1.
mv dir1 dir2 若目錄 dir2 不存在,則將目錄 dir1,及其所有檔
案和子目錄,移到目錄 dir2 下,新目錄名稱為 dir1.
若目錄 dir2 不存在,則將dir1,及其所有文檔和子
目錄,更改為目錄 dir2.
④ unix 如何查看剛剛執行的命令
你說的東西,其實不是unix或者linux,而是shell 功能。
用 echo $SHELL 查看你當前使用的是什麼shell。
估計你的unix默認的應該是 ksh, 而不是大多數linux發行版默認的bash (用 tab 補全)。 ksh可以用連續兩次 ESC 鍵來進行自動補全。你可以試一下。
至於切到上次命令,要看你用的編輯模式是什麼,你可以用
set -o | grep emacs
如果顯示 emacs off, 建議你用
set -o emacs
先切換成大家常用的 emacs模式,然後就可以用
Ctrl-p 和 Ctrl-n 來查看上一個下一個命令了。
⑤ unix常用命令手冊 - xxd 查看十六進制
xxd - make a hexmp or do the reverse
xxd 對於標准輸入或給定文件,顯示其16進制的內容,也可以反過來進行轉換。
如果未指定infile(或指定infile為字元'-'),則採用標准輸入。
如果未指定outfile(或者指定outfile為字元'-'),則採用標准輸出。
以二進制格式進行輸出。-r, -p, -i在此模式無效。
每行輸出多少個位元組。默認16(-i: 12, -ps: 30, -b: 6),最大256 。
在指定-i(輸出成C語言數組格式)時使用,生成大寫的變數名。
將每個組的數據以little-endian模式輸出。
幾個位元組成一組,使用-g 0 取消分組。
列印幫助。
輸出成C語言數組格式。
輸出幾個位元組後結束。
以一個整塊輸出所有的hex, 不使用空格進行分割。
反向操作。
從第幾個位元組開始。+seek表示以頭部向後seek位元組作為起點,-seek表示以尾部向前seek位元組作為起點。
使用大寫的16進制
顯示版本信息。
⑥ linux,unix常用基本命令
1.常用指令
ls 顯示文件或目錄
-l 列出文件詳細信息l(list)
-a 列出當前目錄下所有文件及目錄,包括隱藏的a(all)
mkdir 創建目錄
-p 創建目錄,若無父目錄,則創建p(parent)
cd 切換目錄
touch 創建空文件
echo 創建帶有內容的文件。
cat 查看文件內容
cp 拷貝
mv 移動或重命名
rm 刪除文件
-r 遞歸刪除,可刪除子目錄及文件
-f 強制刪除
find 在文件系統中搜索某文件
wc 統計文本中行數、字數、字元數
grep 在文本文件中查找某個字元串
rmdir 刪除空目錄
tree 樹形結構顯示目錄,需要安裝tree包
pwd 顯示當前目錄
ln 創建鏈接文件
more、less 分頁顯示文本文件內容
head、tail 顯示文件頭、尾內容
ctrl+alt+F1 命令行全屏模式
2.系統管理命令
stat 顯示指定文件的詳細信息,比ls更詳細
who 顯示在線登陸用戶
whoami 顯示當前操作用戶
hostname 顯示主機名
uname 顯示系統信息
top 動態顯示當前耗費資源最多進程信息
ps 顯示瞬間進程狀態 ps -aux
查看目錄大小 -h /home帶有單位顯示目錄信息
df 查看磁碟大小 df -h 帶有單位顯示磁碟信息
ifconfig 查看網路情況
ping 測試網路連通
netstat 顯示網路狀態信息
man 命令不會用了,找男人 如:man ls
clear 清屏
alias 對命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill 殺死進程,可以先用ps 或 top命令查看進程的id,然後再用kill命令殺死進程。
3.打包壓縮相關命令
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」 就可以了。
3.關機/重啟機器
shutdown
-r 關機重啟
-h 關機不重啟
now 立刻關機
halt 關機
reboot 重啟
4.Linux管道
將一個命令的標准輸出作為另一個命令的標准輸入。也就是把幾個命令組合起來使用,後一個命令除以前一個命令的結果。
例:grep -r "close" /home/* | more 在home目錄下所有文件中查找,包括close的文件,並分頁輸出。
5.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
6.將.rpm文件轉為.deb文件
.rpm為RedHat使用的軟體格式。在Ubuntu下不能直接使用,所以需要轉換一下。
sudo alien abc.rpm
7.vim使用
vim三種模式:命令模式、插入模式、編輯模式。使用ESC或i或:來切換模式。
命令模式下:
:q 退出
:q! 強制退出
:wq 保存並退出
:set number 顯示行號
:set nonumber 隱藏行號
/apache 在文檔中查找apache 按n跳到下一個,shift+n上一個
yyp 復制游標所在行,並粘貼
h(左移一個字元←)、j(下一行↓)、k(上一行↑)、l(右移一個字元→)
8.用戶及用戶組管理
/etc/passwd 存儲用戶賬號
/etc/group 存儲組賬號
/etc/shadow 存儲用戶賬號的密碼
/etc/gshadow 存儲用戶組賬號的密碼
useradd 用戶名
userdel 用戶名
adser 用戶名
groupadd 組名
groupdel 組名
passwd root 給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:rootjdk-7u21-linux-i586.tar.gz
Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。
UNIX操作系統(尤尼斯),是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬於分時操作系統,最早由KenThompson、Dennis Ritchie和Douglas McIlroy於1969年在AT&T的貝爾實驗室開發。目前它的商標權由國際開放標准組織所擁有,只有符合單一UNIX規范的UNIX系統才能使用UNIX這個名稱,否則只能稱為類UNIX(UNIX-like)。
⑦ 如何使用Unix/Linux find命令
find 命令是 UNIX程序員的技能中功能最強大和最有用的命令之一。它通過許多強大的支持方式,讓文件查找顯示任務變得更加輕松。
find命令實例:
1.基於 目錄/文件名稱/文件類型 來搜索
在當前目錄或子目錄中查找所有html文件,我們可以使用:
find -name "*.html" -type f
在/usr/bin中查找所有sh文件find /usr/bin -name "*.sh" -type f
該命令有兩個測試條件,第一個,「-name」用於檢驗搜索過程中的每個文件名,如果你需要對大小寫敏感,可以使用「-iname」代替。第二個參數是「-type」,
它用於指定你感興 趣的文件類型。「f」表示我們查找的是普通文件,我們可以使用「d」表示目錄或使用「l」或"s"表示符號連接。在find 手冊中可以看到該工具的所有選項。
find /-maxdepth 1 -name "*.html" -type f
Tips:將-maxdepth選項放在最前面
默認情況下,find遍歷所有子目錄,但是你可以通過指定最大深度來控制這個行為。在前面的例子中,如果我們只想搜索這兩個目錄不想搜索下一層,你可以 添加「-maxdepth 1」到命令中。設置最大深度為0表示只檢驗命令行中的給定文件。同樣,你可以設定最小深度,從而避免搜索位於根目錄的文件。
2.基於 用戶/用戶組 來搜索
find 的另一個應用是搜索屬於某個給定用戶的文件,因此為了搜索我的系統中所有屬於我的文件,我使用以下命令:
find / -user gary
同樣可以搜索基於組用戶的文件,使用「-group」參數。
3.基於 文件相關的時間特徵 來搜索
相關選項:
分別使用「-ctime」,「-atime」和「-mtime」參數來指定最後創建時間,最後訪問時間和最後修改時間。(單位是"天")
如果你需要更精確地搜索,可以使用分鍾變數「-cmin」,「-amin」和「-mmin」。
find ./ -mtime 0 ;返回最近24小時內修改過的文件。./代表需要查找的文件夾
find ./ -mtime 1 返回的是前48~24小時修改過的文件。而不是48小時以內修改過的文件。
find -ctime -1 搜索最近兩天創建的文件
注意:
1前面的「-」表示我們是從今天向以前的日期范圍搜索,與數字前面沒有"-"是有區別的。如果你剛犯了一個錯誤但不確定會影響到那些文件,
這很簡單可以使用如下查詢:find -mmin -5
可以用以下命令查看atime和ctime
ls -lu 或者 ls -l --time=atime 顯示文件的atime
ls -lc 或者 ls -l --time=ctime 顯示文件的ctime
在提供一個例子,搜索當前目錄下前20分鍾到10分鍾修改過的文件。
find . -mmin +9 -mmin -21
還可以使用 "-newer","-anewer","-cnewer"參數來指定一個文件,將其與要搜索的文件進行時間的比較。
• -newer 指內容最近被修改的文件
• -anewer 指最近被讀取過的文件
• -cnewer 指狀態最近發生變化的文件(查看文件狀態命令 stat filename)
例如,查找在sum.java 之後修改的文件
find -newer "sum.java"
4.基於 文件的大小 來搜索
例如我們知道一個Linux文件大小為1,500 bytes,那麼我們可是使用如下命令來查詢
find . -size 1500c
字元 c 表明這個要查找的文件的大小是以bytes為單位。如果我們連這個文件的具體大小都不知道,那麼在Linux中還可以進行模糊查找方式來解決。例如我們輸 入
find . -size +10000000c
這個命令,則標明我們指定系統在根目錄中查找出大於10000000位元組的文件並顯示出來。命令中的「+」是表示要求系統只列出大於指定大小的文件,
而使 用「-」則表示要求系統列出小於指定大小的文件。
還有很多例子,
搜索大小為10M的文件
find . -size 10M
搜索大於10M的文件
find . -size +10M
找到小於10M的文件
find . -size -10M
要列出所有長度為零的文件,請使用下面的命令:
find . -empty - exec ls {} \
在查找到空文件之後,您可以選擇用 rm 命令來代替ls 命令,以刪除這些文件。
5. 基於 文件的許可權 來搜索
查找當前目錄下所有文件許可權為755的文件
find . -perm 755 -print
6.使用混合查找方式查找文件
find命令可以使用混合查找的方法,例如我們想在/tmp目錄中查找大於100000000位元組並且在48小時內修改的某個文件,我們可以使用-and來把兩個查找選項鏈接
起來組合成一個混合的查找方式。
find /tmp -size +10000000c -and -mtime +2
如何搜索修蓋時間介於f1與f2各自的修改時間之間的文件?
find . -newer f1 -and ! -newer f2 //f1的修改時間應早於f2的修改時間
學習過計算機語言的朋友都知道,在計算機語言里,使用and ,or 分別表示「與」和「或」的關系。在Linux系統的查找命令中一樣通用。
還有這樣的例子,
find / -user fred -or -user george
我們可以解釋為在/tmp目錄中查找屬於fred或者george這兩個用戶的文件。
在find命令中還可以使用「非」的關系來查找文件,如果我們要在/tmp目錄中查找所有不屬於panda的文件,使用一個簡單的
find /tmp ! -user panda
更好的利用find
7.快速執行上一次的find命令而不用重復輸入參數
!find
事實上,"!"可以用在任何unix/linux命令的前面,以執行上一條同種類型的命令。
8.改變顯示結果
find對文件執行的標准行為是顯示出文件名,這就是為什麼如果你跟蹤結果,就會看到一系列文件名的原因。如果你想使用這些結果作為另外一個過濾器的輸入的話,
這將會十分有用。但是如果你需要結果的更多信息,你可以令find輸出與ls –l同樣的結果:
find -user gary -iname "*.html" -ls
這個命令將會返迴文件許可權和時間信息。
9.將搜索結果作為程序的輸入
可以通過使用「-exec」參數,來讓find命令對每個搜索結果運行任何程序。
如果要刪除當前目錄中所有擴展名為「.tmp」的文件。
find -name ".tmp" -exec rm {} \ ; //注意結尾分號
上面兩個大括弧將會被相應的文件名代替,反斜杠用來告訴find何時命令結束。
find常和chmod結合使用快速改變大量文件的文件許可權,或者和grep與sed結合使用來選擇性的搜索或使用正則表達式修改文本。使用它作為一個腳本的輸入,
你可以讓費 時的任務自動完成,例如清除一年內沒有訪問的文件,或者自動備份修改的文件。
10.查找並顯示文件的方法
查找到某個文件是我們的目的,我們更想知道查找到的文件的詳細信息和屬性,如果我們採取現查找文件,在使用LS命令來查看文件信息是相當繁瑣的,
現在我們也可以把這兩個命令結合起來使用。
find / -name "httpd.conf" -ls
系統查找到httpd.conf文件後立即在屏幕上顯示httpd.conf文件信息。
12063 34 -rw-r--r-- 1 root root 33545 Dec 30 15:36 /etc/httpd/conf/httpd.conf
下面的表格就是一些常用的查找文件並顯示文件信息的參數和使用方法
選項
用途描述
-exec command
查找並執行命令
-fprint file
列印文件完整文件名
-fprint0 file
列印文件完整文件名包括空的文件
-fprintf file format
列印文件格式
-ok command
給用戶命令執行操作,根據用戶的Y確認輸入執行
-printf format
列印文件格式
-ls
列印同種文件格式的文件
參考:
[1].linux/unix中如何用find命令詳解
http://www.tongcx.com/node/86
[2].使用 UNIX find 命令的高級技術
http://www.ibm.com/developerworks/cn/aix/library/es-unix-find.html
[3].10 Example of find command in Unix and Linux (對find命令的基本用法以及高級技巧都有介紹)
http://javarevisited.blogspot.com/2011/03/10-find-command-in-unix-examples-basic.html
[4].Top 10 examples of find command in unix and linux
http://www.cloudhadoop.com/2012/02/top-10-examples-of-find-command-in-unix.html
[5].Find Command in Unix and Linux Examples (極豐富的關於find命令的例子)
http://www.folkstalk.com/2011/12/101-examples-of-using-find-command-in.html
[6].A Unix/Linux 「find」 Command Tutorial (實用的,短小精悍的教程)
http://content.hccfl.e/pollock/Unix/FindCmd.htm