Linux常用的命令可以分為以下幾類:安裝和登錄命令、文件處理命令、系統(tǒng)管理相關(guān)命令、網(wǎng)絡(luò)操作命令、系統(tǒng)安全相關(guān)命令、其它命令。
創(chuàng)新互聯(lián)建站從2013年開始,先為拱墅等服務(wù)建站,拱墅等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為拱墅企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
安裝和登錄命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
系統(tǒng)管理相關(guān)命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
網(wǎng)絡(luò)操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup。
系統(tǒng)安全相關(guān)命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
Linux簡介
Linux,全稱GNU/Linux,是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。伴隨著互聯(lián)網(wǎng)的發(fā)展,Linux得到了來自全世界軟件愛好者、組織、公司的支持。
它除了在服務(wù)器方面保持著強勁的發(fā)展勢頭以外,在個人電腦、嵌入式系統(tǒng)上都有著長足的進步。使用者不僅可以直觀地獲取該操作系統(tǒng)的實現(xiàn)機制,而且可以根據(jù)自身的需要來修改完善Linux,使其最大化地適應用戶的需要。
Linux不僅系統(tǒng)性能穩(wěn)定,而且是開源軟件。其核心防火墻組件性能高效、配置簡單,保證了系統(tǒng)的安全。在很多企業(yè)網(wǎng)絡(luò)中,為了追求速度和安全,Linux不僅僅是被網(wǎng)絡(luò)運維人員當作服務(wù)器使用,甚至當作網(wǎng)絡(luò)防火墻,這是Linux的一大亮點。
linux基本命令:(其他的太多了,自己去百度吧)
ls:
-l:顯示詳細信息
-a:顯示隱藏文件和其他所有文件(以.開頭的為隱藏文件)
-t:安時間排序
-h(huán):以KB MB 等單位顯示
-d:只列出目錄名,不列出其他內(nèi)容
-R:遞歸顯示所有目錄及子目錄
-lath:選項可以合并
pwd:顯示當前所在位置
cd:轉(zhuǎn)換目錄
cd ..:返回上一級目錄
cd -:回到上一次操作的目錄
mkdir: 建目錄
-v:顯示所建目錄,相同可用{}:mkdir -v dir{1,2,3}
-p:創(chuàng)建多級目錄
rmdir:刪除空目錄
rm:刪除
-f:強制刪除無提示
-r:可刪除目錄
mv:移動 重命名
touch:建立空文件
file:驗證文件或目錄的類型
cp:復制,粘貼 (copy)改名
cp 原文件 目標文件
-r:可復制目錄
ssh 192.168.1.33 遠程登錄
跨機拷貝:scp -r /root/Server/ 192.168.1.253:/dcw
man 命令:幫助
alias:查看是否有別名
去掉別名用完整路徑
eg:
#which cp
#/bin/cp a.text b.text 或 \cp a.text b.text
或 在 /root/.bashrc 中去掉#alias cp='cp -i',后#unalias cp
查看某文件前4行內(nèi)容并顯示文件路徑和文件名
[/usr/local/nagios]#ls /etc/vsftpd/vsftpd.conf head -n 4 /etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
linux tee 命令詳解
功能說明:讀取標準輸入的數(shù)據(jù),并將其內(nèi)容輸出成文件。
語法:tee [-ai][--help][--version][文件...]
補充說明:tee指令會從標準輸入設(shè)備讀取數(shù)據(jù),將其內(nèi)容輸出到標準輸出設(shè)備,同時保存成文件。
參數(shù):
-a或--append 附加到既有文件的后面,而非覆蓋它.
-i-i或--ignore-interrupts 忽略中斷信號。
--help 在線幫助。
--version 顯示版本信息。
cat /etc/sysconfig/network
-n:查看行號信息
more:空格翻頁 回車換行
less:上下鍵翻頁 可以反復看(可以回翻頁)
head:顯示前幾行
head -5 install.log 顯示前5行
tail:顯示后幾行
tail -f 動態(tài)更新
grep:查看文件中包含關(guān)鍵字的一行
#grep --color=tty dump intstall.log 彩色顯示
正則表達式:^root 以root為開頭(^)
root$,以root結(jié)尾($)
-v:不包括的幾行(取反)
grep -n -v ^# /etc/vsftpd/vsftpd.conf
:r /root/install.log 追加讀入一個文件
:e 讀入文件
:e! 重新讀入
:q 不保存 :q!強制退出
:w 保存 :qw保存退出 :wq! 強制保存退出
在未寫入狀態(tài)時:
h 左 k 上 j下 l 右
shift+4($) 光標移到行尾 shift+6(^) 光標移到行頭
:50 來到50行
#vim /root/install.log +50(n)來到50行
:set nu 顯示行號
:set nonu 取消行號
shift+g 來到行尾
n(無顯示)+G:直接來到n行
shift+a:自動來到行尾輸入
:50,100 w bb.txt 保存50到100行的內(nèi)容到bb.txt中
r :替換單個字符 R:替換全行
shift+o:向上插入 o:向下插入
yy 復制 p 粘貼
(n)2yy 復制前兩行
y^:復制從光標位置到開頭 y$:復制從光標位置到結(jié)尾
d:剪貼一行
dd:剪貼兩行
ndd:多行
d^:剪貼到開頭 d$:剪貼到結(jié)尾
:g/^$/d 去掉空行
:g/^\s*$/d 去空格
向左移動25個字符:25+l
:/ 查找 自上而下
:? 查找自下而上
n 下一個
替換:
:s/old/new 把舊的換為新的 單個
:s/old/new/g 整行替換
:%s/old/new/g 整個文件替換
:%s/old/new/gc 整個文件替換并詢問
u:替換上次命令
ctrl+r 重做
ctrl+^ 兩個切換
打開多個文件
vim a.txt b.txt c.txt
:args 可選
:next
:prev
:last
vim diff a.txt b.txt
ctrl+w+w 跳到第二個文件
:wqa
使用vimtutor工具聯(lián)系vim使用。
vimtutor工具使用方法:
vimtutor zh
如果出現(xiàn)亂馬,使用下面命令解決(只能執(zhí)行一次)
cd /usr/share/vim/vim70/tutor
mv tutor.zh.euc tutor.zh.euc.bak
iconv -f gb2312 -t utf-8 tutor.zh.euc.bak tutor.zh.euc
vimtutor zh
locate :空間換時間
updatedb
locate passwd
find [路徑] [參數(shù)] [表達式]
find /usr/share/doc -name filename
-user:根據(jù)文件擁有者尋找文件
-group:根據(jù)文件所屬組尋找文件
-name:根據(jù)文件名尋找文件
-perm:根據(jù)文件權(quán)限尋找
-size:根據(jù)文件大小尋找
-type:根據(jù)文件類型尋找文件,參數(shù)對應c b l f d
find 的表達式使用通配符時需要使用“”圈界
find 目錄 條件 條件
[root@localhost ~]# find / -name "pass*"
當前目錄:.
find . -name "*ss*"
find . -type f(文件)
find . -type d(目錄)
[root@localhost ~]# find . -nouser(文件無屬主)
[root@localhost ~]# find . -nogroup(文件無屬組)
[root@localhost ~]# find /home/ -user/group user1
-exec
[root@localhost ~]# find . -nouser -exec rm {} \;
{}代表文件和目錄
\轉(zhuǎn)義字符
-ok
find . -nogroup -ok rm -rf {} \;有提示刪除
[root@localhost ~]# stat a
File: “a”
Size: 0 Blocks: 0 IO Block: 4096 一般空文件
Device: 803h/2051d Inode: 261796 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-04-02 14:23:25.000000000 +0800(創(chuàng)建時間:-atime)
Modify: 2011-04-02 14:23:25.000000000 +0800(修改時間:-mtime)
Change: 2011-04-02 14:23:25.000000000 +0800(改變屬組屬主會變:-ctime)
find /root -mtime -5(5天以內(nèi)) 5(5天時) +5(5天前)
find . -perm 400:要求權(quán)限全部匹配,精確匹配
find . -perm +600(wr):有w,r中任意權(quán)限的都會列出,即會列出200 400 600 的權(quán)限
find . -perm -600 :要求權(quán)限完全滿足 權(quán)限大于等于600
-name -type
-name -user
-perm -type
-nouser
-nogroup
-mtime
-exec
-ok
-rgex(正則表達式)
思科命令中copy run start與 wr 還有 copy running-config startup—config區(qū)別為:縮寫不同、填充不同、保存不同。
一、縮寫不同
1、copy run start:copy run start是copy running-config startup-config命令的縮寫。
2、wr :wr是write命令的縮寫。
3、?copy running-config startup—config:?copy running-config startup—config是copy run start縮寫的全寫。
二、填充不同
1、copy run start:copy run start在執(zhí)行時會自動填充缺省命令內(nèi)容。
2、wr :wr在執(zhí)行時會自動填充缺省命令內(nèi)容。
3、?copy running-config startup—config:?copy running-config startup—config在執(zhí)行時不需要填充缺省命令內(nèi)容。
三、保存不同
1、copy run start:copy run start是copy running-config startup-config在重啟后保存的配置不會重置。
2、wr :wr在重啟后保存的配置會重置,只作用在未重啟期間。
3、?copy running-config startup—config:?copy running-config startup—config在重啟后保存的配置不會重置。
學習Linux系統(tǒng),命令是最基礎(chǔ)的一部分,有著很重要的地位,所以入門必須掌握好常用命令。下面由我為大家整理了Linux系統(tǒng)常用的基本命令入門篇,希望對大家有幫助!
Linux系統(tǒng)常用的基本命令入門篇一、基礎(chǔ)命令
1.Linu x的進 入與退出系統(tǒng)
進入Linux系統(tǒng):
必須要輸入用戶的賬號,在系統(tǒng)安裝過程中可以創(chuàng)建以下兩種帳號:
1.root--超級用戶帳號(系統(tǒng)管理員),使用這個帳號可以在系統(tǒng)中做任何事情。
2.普通用戶--這個帳號供普通用戶使用,可以進行有限的操作。
一般的Linux使用者均為普通用戶,而系統(tǒng)管理員一般使用超級用戶帳號完成一些系統(tǒng)管理的工作。如果只需要完成一些由普通帳號就能完成的任務(wù),建議不要使用超級用戶帳號,以免無意中破壞系統(tǒng)。影響系統(tǒng)的正常運行。
用戶登錄分兩步:第一步,輸入用戶的登錄名,系統(tǒng)根據(jù)該登錄名識別用戶;第二步,輸入用戶的口令,該口令是用戶自己設(shè)置的一個字符串,對其他用戶是保密的,是在登錄時系統(tǒng)用來辨別真假用戶的關(guān)鍵字。
當用戶正確地輸入用戶名和口令后,就能合法地進入系統(tǒng)。屏幕顯示:
[root@loclhost/root] #
這時就可以對系統(tǒng)做各種操作了。注意超級用戶的提示符是ldquo;#rdquo;,其他用戶的提示符是ldquo;$rdquo;。
2.修改口令
為了更好的保護用戶帳號的安全,Linux允許用戶隨時修改自己的口令,修改口令的命令是passwd,它將提示用戶輸入舊口令和新口令,之后還要求用戶再次確認新口令,以避免用戶無意中按錯鍵。如果用戶忘記了口令,可以向系統(tǒng)管理員申請為自己重新設(shè)置一個。
3.虛擬控制臺
Linux是一個真正的多用戶 操作系統(tǒng) ,它可以同時接受多個用戶登錄。Linux還允許一個用戶進行多次登錄,這是因為Linux和UNIX一樣,提供了虛擬控制臺的訪問方式,允許用戶在同一時間從控制臺進行多次登錄。虛擬控制臺的選擇可以通過按下Alt鍵和一個功能鍵來實現(xiàn),通常使用F1-F6例如,用戶登錄后,按一下Alt-F2鍵,用戶又可以看到"login:"提示符,說明用戶看到了第二個虛擬控制臺。然后只需按Alt-F1鍵,就可以回到第一個虛擬控制臺。 一個新安裝的Linux系統(tǒng)默認允許用戶使用Alt-F1到Alt-F6鍵來訪問前六個虛擬控制臺。虛擬控制臺可使用戶同時在多個控制臺上工作,真正體現(xiàn)Linux系統(tǒng)多用戶的特性。用戶可以在某一虛擬控制臺上進行的工作尚未結(jié)束時,切換到另一虛擬控制臺開始另一項工作。
退出系統(tǒng)
不論是超級用戶,還是普通用戶,需要退出系統(tǒng)時,在shell提示符下,鍵入exit命令即可。
4.查看命令幫助信息
man命令
man命令用于查詢命令和程序的使用 方法 和參數(shù)。
例如:
man ls
將顯示ls命令的基本格式和使用方法
Linux系統(tǒng)常用的基本命令入門篇二、關(guān)機重啟命令
首先,是關(guān)機/重啟命令,僅在虛擬機時使用,實際工作中用不到
reboot 一般不跟參數(shù)使用,輸入指令即可重啟
shutdown 一般需要跟參數(shù),例:
shutdown -r 延時多少分鐘重啟,一般使用now
shutdown -r now 立即重啟
shutdown -f 強制重啟
跟windows一樣,linux也存在注銷功能
exit
1)halt
halt 可不接參數(shù)
halt -f 強制關(guān)機
2)poweroff
poweroff 可不接參數(shù)使用
poweroff -f 強制關(guān)機
3)init 0
4)shutdown 不可單獨使用
shutdown -h 分鐘數(shù) 延時多久關(guān)機
shutdown -h now 立即關(guān)機
Linux系統(tǒng)常用的基本命令入門篇三、vi編輯
vi命令是UNIX操作系統(tǒng)和類UNIX操作系統(tǒng)中最通用的全屏幕純文本編輯器。
Linux中的vi編輯器叫vim,它是vi的增強版(vi Improved),與vi編輯器完全兼容,而且實現(xiàn)了很多增強功能。
vi編輯器支持編輯模式和命令模式,編輯模式下可以完成文本的編輯功能,命令模式下可以完成對文件的操作命令,要正確使用vi編輯器就必須熟練掌握著兩種模式的切換。
默認情況下,打開vi編輯器后自動進入命令模式。從編輯模式切換到命令模式使用ldquo;escrdquo;鍵,從命令模式切換到編輯模式使用ldquo;Ardquo;、ldquo;ardquo;、ldquo;Ordquo;、ldquo;ordquo;、ldquo;Irdquo;、ldquo;irdquo;鍵。
vi編輯器提供了豐富的內(nèi)置命令,有些內(nèi)置命令使用鍵盤組合鍵即可完成,有些內(nèi)置命令則需要以冒號ldquo;:rdquo;開頭輸入。常用內(nèi)置命令如下:
1 Ctrl+u:向文件首翻半屏;
2 Ctrl+d:向文件尾翻半屏;
3 Ctrl+f:向文件尾翻一屏;
4 Ctrl+b:向文件首翻一屏;
5 Esc:從編輯模式切換到命令模式;
6 ZZ:命令模式下保存當前文件所做的修改后退出vi;
7 :行號:光標跳轉(zhuǎn)到指定行的行首;
8 :$:光標跳轉(zhuǎn)到最后一行的行首;
9 x或X:刪除一個字符,x刪除光標后的,而X刪除光標前的;
10 D:刪除從當前光標到光標所在行尾的全部字符;
11 dd:刪除光標行正行內(nèi)容;
12 ndd:刪除當前行及其后n-1行;
13 nyy:將當前行及其下n行的內(nèi)容保存到寄存器?中,其中?為一個字母,n為一個數(shù)字;
14 p:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當前光標所在位置的下方;
15 P:粘貼文本操作,用于將緩存區(qū)的內(nèi)容粘貼到當前光標所在位置的上方;
16 /字符串:文本查找操作,用于從當前光標所在位置開始向文件尾部查找指定字符串的內(nèi)容,查找的字符串會被加亮顯示;
17 ?name:文本查找操作,用于從當前光標所在位置開始向文件頭部查找指定字符串的內(nèi)容,查找的字符串會被加亮顯示;
18 a,bs/F/T:替換文本操作,用于在第a行到第b行之間,將F字符串換成T字符串。其中,ldquo;s/rdquo;表示進行替換操作;
19 a:在當前字符后添加文本;
20 A:在行末添加文本;
21 i:在當前字符前插入文本;
22 I:在行首插入文本;
23 o:在當前行后面插入一空行;
24 O:在當前行前面插入一空行;
25 :wq:在命令模式下,執(zhí)行存盤退出操作;
26 :w:在命令模式下,執(zhí)行存盤操作;
27 :w!:在命令模式下,執(zhí)行強制存盤操作;
28 :q:在命令模式下,執(zhí)行退出vi操作;
29 :q!:在命令模式下,執(zhí)行強制退出vi操作;
30 :e文件名:在命令模式下,打開并編輯指定名稱的文件;
31 :n:在命令模式下,如果同時打開多個文件,則繼續(xù)編輯下一個文件;
32 :f:在命令模式下,用于顯示當前的文件名、光標所在行的行號以及顯示比例;
33 :set nu:在命令模式下,用于在最左端顯示行號;
34 :set nonu:在命令模式下,用于在最左端不顯示行號;
35 :1,3y 復制第一行到第三行
36 :1,3d 刪除第一行到第三行
37 :1,3s/str/str_new/g 替換第一行到第三行中的字符串
38 :1,3s/str/str_new 替換第一行到第三行中的字符串第一個字符
39 :1,3 g/str /d 刪除第一行到第三行中含有這個字符串的行
Linux常用命令一、查詢相關(guān)
find
按規(guī)則查找某個文件或文件夾,包括子目錄
find . -name '_sh' -- 以.sh結(jié)尾的文件
find . -name '_hannel_ -- 包含channel字符的文件
find . -name 'build_ -- 以build開頭的文件
find . -name 'abc??' -- abc后面有兩個字符的文件
grep
查找內(nèi)容包含指定的范本樣式的文件,Global Regular Expression Print
grep -n pattern files -- 規(guī)則 -n表示顯示行號
grep -n 'PostsActivity' AndroidManifest.xmlgrep -n '\d' AndroidManifest.xmlgrep 'aapt' build-channel.xml -- 文件中包含字符串的所有地方
grep -n 'aapt' build-channel.xml -- 文件中包含字符串的所有地方,并顯示行號
ps -e | grep java -- 所有java進程
ps -e | grep -i qq --所有qq進程,不區(qū)分大小寫
find . -name '_hannel.xml' | xargs grep -n 'aapt' -- 在以channel.xml結(jié)尾的文件中查找包含lsquo;aaptrsquo;關(guān)鍵字的地方
ls | grep 'channel' -- 包含channel關(guān)鍵字的文件
which
在PATH變量指定的路徑中,搜索某個系統(tǒng)命令的位置,并且返回第一個搜索結(jié)果
which zipwhich grep
Linux常用命令二、查看命令
tail
tail [-f] [-c Number | -n Number | -m Number | -b Number | -k Number] [File]
從指定點開始將文件寫到標準輸出。使用tail命令的-f選項可以方便的查閱正在改變的日志文件,tail -f filename會把filename里最尾部的內(nèi)容顯示在屏幕上,并且不斷刷新,使你看到最新的文件內(nèi)容。
tail -f test.log,循環(huán)查看文件內(nèi)容,Ctrl+c來終止
tail -n 5 test.log,顯示文件最后5行內(nèi)容
tail -n +5 test.log,從第5行開始顯示文件
more
more [-dlfpcsu] [-num] [+/ pattern] [+linenum] [file...]
more命令和cat的功能一樣都是查看文件里的內(nèi)容,但有所不同的是more可以按頁來查看文件的內(nèi)容,還支持直接跳轉(zhuǎn)行等功能。
more +3 test.log,顯示文件中從第3行起的內(nèi)容
more -5 test.log,設(shè)定每屏顯示行數(shù)
ls -l | more -5,每頁顯示5個文件信息
more +/day3 test.log,查找第一個出現(xiàn)"day3"字符串的行,并從該處前兩行開始顯示輸出
less
less [options] [file...]
與more命令一樣,less命令也用來分屏顯示文件的內(nèi)容。但是二者存在差別:less命令允許用戶向前或向后瀏覽文件,而more命令只能向前瀏覽。用less命令顯示文件時,用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程序,應按Q鍵。
less test.log,查看文件
ps -ef | less,查看進程信息并通過less分頁顯示
history | less,查看命令歷史使用記錄并通過less分頁顯示
less test1.log test2.log,瀏覽多個文件,n和p切換文件
watch
watch [options] command
每隔一段時間重復運行一個命令,默認間隔時間是2秒。要運行的命令直接傳給shell(注意引用和轉(zhuǎn)義特殊字符)。結(jié)果會展示為全屏模式,這樣你可以很方便的觀察改變
watch -n 60 date,執(zhí)行date命令每分鐘一次,輸入^C 退出
watch -d ls -l,查看目錄變化
watch -d rsquo;ls -l | fgrep joersquo;,想找joe用戶的文件
watch -d 'ls -l|grep scf',監(jiān)測當前目錄中 scf' 的文件的變化
watch -n 10 'cat /proc/loadavg',10秒一次輸出系統(tǒng)的平均負載
watch -n 1 -d netstat -ant,每隔一秒高亮顯示網(wǎng)絡(luò)鏈接數(shù)的變化
watch -n 1 -d 'pstree | grep http',每隔一秒高亮顯示http鏈接數(shù)的變化
Linux常用命令三、文件相關(guān)
vi
vi file
按i鍵,進入編輯模式
按esc鍵,進入命令模式
:w 保存文件但不退出vi
:w file 將修改另外保存到file中,不退出vi
:w! 強制保存,不推出vi
:wq 保存文件并退出vi
:wq! 強制保存文件,并退出vi
q: 不保存文件,退出vi
:q! 不保存文件,強制退出vi
:e! 放棄所有修改,從上次保存文件開始再編輯
chmod
change mode,變更文件或目錄的讀、寫、運行權(quán)限
chmod [-cfvR] [--help] [--version] mode file...
mode:權(quán)限設(shè)定字串,格式如下 : [ugoa...][[+-=][rw xX ]...][,...]
u 表示該檔案的擁有者,g 表示與該檔案的擁有者屬于同一個群體(group)者,o 表示其他以外的人,a 表示這三者皆是
+ 表示增加權(quán)限、- 表示取消權(quán)限、= 表示唯一設(shè)定權(quán)限。
r 表示可讀取,w 表示可寫入,x 表示可執(zhí)行,X 表示只有當該檔案是個子目錄或者該檔案已經(jīng)被設(shè)定過為可執(zhí)行。
chmod也可以用數(shù)字來表示權(quán)限,語法為:chmod abc file,如chmod 777 file
其中a,b,c各為一個數(shù)字,分別表示User、Group、及Other的權(quán)限。 r=4,w=2,x=1
chmod 777 file,等同于 chmod a=rwx file
chmod ug=rwx,o=x file,等同于 chmod 771 file
chmod 4755 filename,可使此程序具有root的權(quán)限
ls -l 可以查看列出當前用戶的文件權(quán)限
zip
zip -r filename.zip filesdir
zip -r test.zip ./_把當前所有文件壓縮到test.zip
zip -r test.zip test,把test文件所有文件及目錄,要是到test.zip
zip -d test.zip test.txt,刪除壓縮文件中test.txt文件
zip -m test.zip ./test.txt,向壓縮文件中test.zip中添加test.txt文件
zip -r test.zip file1 file2 file3 filesdir,處理多個文件和目錄,空格隔開
unzip
unzip zip-file,解壓到當前目錄
unzip -d dst-dir zip-file,解壓到指定的目錄,-d后為指定目錄
unzip -n zip-file,不覆蓋已經(jīng)存在的文件,-n為不要覆蓋原有的文件
unzip -n -d dst-dir zip-file,解壓到指定的目錄,不覆蓋已經(jīng)原有的文件
unzip -o -d dst-dir zip-file,-o不必先詢問用戶覆蓋原有文件
unzip -l zip-file,僅查看壓縮文件內(nèi)所包含的文件
tar
tar cvf test.tar test,把test下所有文件和目錄做備份tar czvf test.tar.gz test,把test下所有文件和目錄做備份并進行壓縮tar xzvf test.tar.gz,把這個備份文件還原并解壓縮tar tvf test.tar | more,查看備份文件的內(nèi)容,并以分屏方式顯示在 顯示器 上
tar czvf test.tar.gz test --exclude=test/svn,備份壓縮并排除目錄
touch
下面注釋你參考下吧,因為wr這個命令沒見過,不知道干啥的,可能只是記錄后面執(zhí)行的命令
#!/bin/sh
# 輸出1
echo "1"
# mv是移動,把 S99start_app.sh 移動到 /etc/init.d
wr mv S99start_app.sh /etc/init.d
# chmod 是 修改權(quán)限的, x是執(zhí)行, 意思是給文件加上執(zhí)行權(quán)限
wr chmod + x /etc/init.d/S99start_app.sh
# sleep 是等待, 等待1秒
sleep 1
echo "2"
# cd 是切換目錄, 意思是切換到/opt/curl/lib 目錄
cd /opt/curl/lib
# ln 是建立連接的意思,-s是軟連接,大致相當于快捷方式,意思是建立一個libcurl.so.4.5.0連接叫 libcurl.so 下同
ln - s libcurl.so.4.5.0 libcurl.so
ln - s libcurl.so.4.5.0 libcurl.so.4
sleep 1
echo "3"
cd / opt
# chmod 上面說了是修改權(quán)限,-R是對目標目錄以及子目錄所有文件,這個意思是ppp文件夾和ppp文件夾下的所有文件都加上執(zhí)行權(quán)限
chmod + x - R ppp
sleep 1
# exit 是退出的意思,就是退出當前腳本
exit 0
1、cd命令
這是一個非?;荆彩谴蠹医?jīng)常需要使用的命令,它用于切換當前目錄,它的參數(shù)是要切換到的目錄的路徑,可以是絕對路徑,也可以是相對路徑。如:
cd
/root/Docements # 切換到目錄/root/Docements
cd ./path #
切換到當前目錄下的path目錄中,“.”表示當前目錄
cd ../path #
切換到上層目錄中的path目錄中,“..”表示上一層目錄
2、ls命令
這是一個非常有用的查看文件與目錄的命令,list之意,它的參數(shù)非常多,下面就列出一些我常用的參數(shù)吧,如下:
-l
:列出長數(shù)據(jù)串,包含文件的屬性與權(quán)限數(shù)據(jù)等
-a
:列出全部的文件,連同隱藏文件(開頭為.的文件)一起列出來(常用)
-d
:僅列出目錄本身,而不是列出目錄的文件數(shù)據(jù)
-h
:將文件容量以較易讀的方式(GB,kB等)列出來
-R
:連同子目錄的內(nèi)容一起列出(遞歸列出),等于該目錄下的所有文件都會顯示出來
注:這些參數(shù)也可以組合使用,下面舉兩個例子:
ls -l
#以長數(shù)據(jù)串的形式列出當前目錄下的數(shù)據(jù)文件和目錄
ls -lR
#以長數(shù)據(jù)串的形式列出當前目錄下的所有文件
3、grep命令
該命令常用于分析一行的信息,若當中有我們所需要的信息,就將該行顯示出來,該命令通常與管道命令一起使用,用于對一些命令的輸出進行篩選加工等等,它的簡單語法為
grep [-acinv]
[--color=auto] '查找字符串' filename
它的常用參數(shù)如下:
-a
:將binary文件以text文件的方式查找數(shù)據(jù)
-c
:計算找到‘查找字符串’的次數(shù)
-i
:忽略大小寫的區(qū)別,即把大小寫視為相同
-v
:反向選擇,即顯示出沒有‘查找字符串’內(nèi)容的那一行
# 例如:
#
取出文件/etc/man.config中包含MANPATH的行,并把找到的關(guān)鍵字加上顏色
grep --color=auto
'MANPATH' /etc/man.config
# 把ls
-l的輸出中包含字母file(不區(qū)分大小寫)的內(nèi)容輸出
ls -l | grep -i
file
4、find命令
find是一個基于查找的功能非常強大的命令,相對而言,它的使用也相對較為復雜,參數(shù)也比較多,所以在這里將給把它們分類列出,它的基本語法如下:
find [PATH]
[option] [action]
# 與時間有關(guān)的參數(shù):
-mtime n :
n為數(shù)字,意思為在n天之前的“一天內(nèi)”被更改過的文件;
-mtime +n :
列出在n天之前(不含n天本身)被更改過的文件名;
-mtime -n :
列出在n天之內(nèi)(含n天本身)被更改過的文件名;
-newer file :
列出比file還要新的文件名
# 例如:
find /root -mtime
0 # 在當前目錄下查找今天之內(nèi)有改動的文件
# 與用戶或用戶組名有關(guān)的參數(shù):
-user name :
列出文件所有者為name的文件
-group name :
列出文件所屬用戶組為name的文件
-uid n :
列出文件所有者為用戶ID為n的文件
-gid n :
列出文件所屬用戶組為用戶組ID為n的文件
# 例如:
find
/home/ljianhui -user ljianhui # 在目錄/home/ljianhui中找出所有者為ljianhui的文件
# 與文件權(quán)限及名稱有關(guān)的參數(shù):
-name filename
:找出文件名為filename的文件
-size [+-]SIZE
:找出比SIZE還要大(+)或?。?)的文件
-tpye TYPE
:查找文件的類型為TYPE的文件,TYPE的值主要有:一般文件(f)、設(shè)備文件(b、c)、
目錄(d)、連接文件(l)、socket(s)、FIFO管道文件(p);
-perm mode
:查找文件權(quán)限剛好等于mode的文件,mode用數(shù)字表示,如0755;
-perm -mode
:查找文件權(quán)限必須要全部包括mode權(quán)限的文件,mode用數(shù)字表示
-perm +mode
:查找文件權(quán)限包含任一mode的權(quán)限的文件,mode用數(shù)字表示
# 例如:
find / -name
passwd # 查找文件名為passwd的文件
find . -perm 0755
# 查找當前目錄中文件權(quán)限的0755的文件
find . -size +12k
# 查找當前目錄中大于12KB的文件,注意c表示byte
5、cp命令
該命令用于復制文件,copy之意,它還可以把多個文件一次性地復制到一個目錄下,它的常用參數(shù)如下:
-a :將文件的特性一起復制
-p
:連同文件的屬性一起復制,而非使用默認方式,與-a相似,常用于備份
-i
:若目標文件已經(jīng)存在時,在覆蓋時會先詢問操作的進行
-r
:遞歸持續(xù)復制,用于目錄的復制行為
-u
:目標文件與源文件有差異時才會復制
例如 :
cp -a file1 file2
#連同文件的所有特性把文件file1復制成文件file2
cp file1 file2
file3 dir #把文件file1、file2、file3復制到目錄dir中
6、mv命令
該命令用于移動文件、目錄或更名,move之意,它的常用參數(shù)如下:
-f
:force強制的意思,如果目標文件已經(jīng)存在,不會詢問而直接覆蓋
-i
:若目標文件已經(jīng)存在,就會詢問是否覆蓋
-u
:若目標文件已經(jīng)存在,且比目標文件新,才會更新
注:該命令可以把一個文件或多個文件一次移動一個文件夾中,但是最后一個目標文件一定要是“目錄”。
例如:
mv file1 file2
file3 dir # 把文件file1、file2、file3移動到目錄dir中
mv file1 file2 #
把文件file1重命名為file2
7、rm命令
該命令用于刪除文件或目錄,remove之間,它的常用參數(shù)如下:
-f
:就是force的意思,忽略不存在的文件,不會出現(xiàn)警告消息
-i
:互動模式,在刪除前會詢問用戶是否操作
-r
:遞歸刪除,最常用于目錄刪除,它是一個非常危險的參數(shù)
例如:
rm -i file #
刪除文件file,在刪除之前會詢問是否進行該操作
rm -fr dir #
強制刪除目錄dir中的所有文件
8、ps命令
該命令用于將某個時間點的進程運行情況選取下來并輸出,process之意,它的常用參數(shù)如下:
-A :所有的進程均顯示出來
-a
:不與terminal有關(guān)的所有進程
-u :有效用戶的相關(guān)進程
-x
:一般與a參數(shù)一起使用,可列出較完整的信息
-l
:較長,較詳細地將PID的信息列出
其實我們只要記住ps一般使用的命令參數(shù)搭配即可,它們并不多,如下:
ps aux #
查看系統(tǒng)所有的進程數(shù)據(jù)
ps ax #
查看不與terminal有關(guān)的所有進程
ps -lA #
查看系統(tǒng)所有的進程數(shù)據(jù)
ps axjf #
查看連同一部分進程樹狀態(tài)
9、kill命令
該命令用于向某個工作(%jobnumber)或者是某個PID(數(shù)字)傳送一個信號,它通常與ps和jobs命令一起使用,它的基本語法如下:
kill -signal PID
signal的常用參數(shù)如下:
注:最前面的數(shù)字為信號的代號,使用時可以用代號代替相應的信號。
1:SIGHUP,啟動被終止的進程
2:SIGINT,相當于輸入ctrl+c,中斷一個程序的進行
9:SIGKILL,強制中斷一個進程的進行
15:SIGTERM,以正常的結(jié)束進程方式來終止進程
17:SIGSTOP,相當于輸入ctrl+z,暫停一個進程的進行
例如:
#
以正常的結(jié)束進程方式來終于第一個后臺工作,可用jobs命令查看后臺中的第一個工作進程
kill -SIGTERM
%1
#
重新改動進程ID為PID的進程,PID可用ps命令通過管道命令加上grep命令進行篩選獲得
kill -SIGHUP PID
10、killall命令
該命令用于向一個命令啟動的進程發(fā)送一個信號,它的一般語法如下:
killall [-iIe]
[command name]
它的參數(shù)如下:
-i
:交互式的意思,若需要刪除時,會詢問用戶
-e :表示后面接的command
name要一致,但command name不能超過15個字符
-I :命令名稱忽略大小寫
# 例如:
killall -SIGHUP
syslogd # 重新啟動syslogd
11、file命令
該命令用于判斷接在file命令后的文件的基本數(shù)據(jù),因為在Linux下文件的類型并不是以后綴為分的,所以這個命令對我們來說就很有用了,它的用法非常簡單,基本語法如下:
file filename
#例如:
file ./test
12、tar命令
該命令用于對文件進行打包,默認情況并不會壓縮,如果指定了相應的參數(shù),它還會調(diào)用相應的壓縮程序(如gzip和bzip等)進行壓縮和解壓。它的常用參數(shù)如下:
-c :新建打包文件
-t
:查看打包文件的內(nèi)容含有哪些文件名
-x
:解打包或解壓縮的功能,可以搭配-C(大寫)指定解壓的目錄,注意-c,-t,-x不能同時出現(xiàn)在同一條命令中
-j
:通過bzip2的支持進行壓縮/解壓縮
-z
:通過gzip的支持進行壓縮/解壓縮
-v
:在壓縮/解壓縮過程中,將正在處理的文件名顯示出來
-f filename
:filename為要處理的文件
-C dir
:指定壓縮/解壓縮的目錄dir
上面的解說可以已經(jīng)讓你暈過去了,但是通常我們只需要記住下面三條命令即可:
壓縮:tar -jcv -f
filename.tar.bz2 要被處理的文件或目錄名稱
查詢:tar -jtv -f
filename.tar.bz2
解壓:tar -jxv -f
filename.tar.bz2 -C 欲解壓縮的目錄
注:文件名并不定要以后綴tar.bz2結(jié)尾,這里主要是為了說明使用的壓縮程序為bzip2
13、cat命令
該命令用于查看文本文件的內(nèi)容,后接要查看的文件名,通??捎霉艿琅cmore和less一起使用,從而可以一頁頁地查看數(shù)據(jù)。例如:
cat text | less #
查看text文件中的內(nèi)容
# 注:這條命令也可以使用less
text來代替
14、chgrp命令
該命令用于改變文件所屬用戶組,它的使用非常簡單,它的基本用法如下:
chgrp [-R]
dirname/filename
-R
:進行遞歸的持續(xù)對所有文件和子目錄更改
# 例如:
chgrp users -R
./dir # 遞歸地把dir目錄下中的所有文件和子目錄下所有文件的用戶組修改為users
15、chown命令
該命令用于改變文件的所有者,與chgrp命令的使用方法相同,只是修改的文件屬性不同,不再詳述。
16、chmod命令
該命令用于改變文件的權(quán)限,一般的用法如下:
chmod [-R] xyz
文件或目錄
-R:進行遞歸的持續(xù)更改,即連同子目錄下的所有文件都會更改
同時,chmod還可以使用u(user)、g(group)、o(other)、a(all)和+(加入)、-(刪除)、=(設(shè)置)跟rwx搭配來對文件的權(quán)限進行更改。
# 例如:
chmod 0755 file #
把file的文件權(quán)限改變?yōu)?rxwr-xr-x
chmod g+w file #
向file的文件權(quán)限中加入用戶組可寫權(quán)限
18、vim命令
該命令主要用于文本編輯,它接一個或多個文件名作為參數(shù),如果文件存在就打開,如果文件不存在就以該文件名創(chuàng)建一個文件。vim是一個非常好用的文本編輯器,它里面有很多非常好用的命令,在這里不再多說。你可以從這里下載vim常用操作的詳細說明。
19、gcc命令
對于一個用Linux開發(fā)C程序的人來說,這個命令就非常重要了,它用于把C語言的源程序文件,編譯成可執(zhí)行程序,由于g++的很多參數(shù)跟它非常相似,所以這里只介紹gcc的參數(shù),它的常用參數(shù)如下:
-o
:output之意,用于指定生成一個可執(zhí)行文件的文件名
-c
:用于把源文件生成目標文件(.o),并阻止編譯器創(chuàng)建一個完整的程序
-I :增加編譯時搜索頭文件的路徑
-L
:增加編譯時搜索靜態(tài)連接庫的路徑
-S :把源文件生成匯編代碼文件
-lm:表示標準庫的目錄中名為libm.a的函數(shù)庫
-lpthread
:連接NPTL實現(xiàn)的線程庫
-std=
:用于指定把使用的C語言的版本
# 例如:
#
把源文件test.c按照c99標準編譯成可執(zhí)行程序test
gcc -o test
test.c -lm -std=c99
#把源文件test.c轉(zhuǎn)換為相應的匯編程序源文件test.s
gcc -S test.c
20、time命令
該命令用于測算一個命令(即程序)的執(zhí)行時間。它的使用非常簡單,就像平時輸入命令一樣,不過在命令的前面加入一個time即可,例如:
time ./process
time ps aux
在程序或命令運行結(jié)束后,在最后輸出了三個時間,它們分別是:
user:用戶CPU時間,命令執(zhí)行完成花費的用戶CPU時間,即命令在用戶態(tài)中執(zhí)行時間總和;
system:系統(tǒng)CPU時間,命令執(zhí)行完成花費的系統(tǒng)CPU時間,即命令在核心態(tài)中執(zhí)行時間總和;
real:實際時間,從command命令行開始執(zhí)行到運行終止的消逝時間;
來自 ;