版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
情境2管理Hn
ux系統(tǒng)的目錄和文件文件權(quán)限用戶與組-強(qiáng)調(diào)文件所有者(Owner)
-root可以充當(dāng)如何文件的所有者-組(Group)有利于安全與管理Oracle—個(gè)組Bea一個(gè)組-權(quán)限管理分為三類:文件/文件夾所有者文件所屬組其他人-無權(quán)訪問的時(shí)候,通常會(huì)顯示"Permission
denied”這樣的錯(cuò)誤信息,對(duì)于無權(quán)執(zhí)行的命令,通常顯示“Operation
not
permitted”,在圖形界面上相應(yīng)的菜單項(xiàng)會(huì)變灰從而禁止使用。4096-rwxr-xr-xicensew-rw一—,w-rw-i—文件權(quán)限M母1*4旦08-3007-0306-0606-081II6hexyhexyhexyhexyhexyhexy-文件名稱,以圓但點(diǎn)開頭的文件為隱藏文件16:30|questiorT
|14:41
snI13:34
sn~10:47
sqlserver2000788j07-03
13:16>ITOnLiaL201|08-31
17:01|
question國4802459409611hexy
I
hexyw-rw-i—w-rw-r—jrwxrwxr-xIhexy^hexy
~]SLinux下的“dir”命令I(lǐng)s[hexy如hexy
~]S
Is-1總計(jì)14064drwxrwxr~x
2drwxrwxr-x|2cli"wxr-xr-x
2]
hexy
hex^7-15
1273hexy
Ihexy
|I
3054340
0&=1
hexyhexyhexyhexyhexyhexy文件權(quán)限文件屬性-rwxrwx■一-第一個(gè)屬性代表這個(gè)文件的類型為[d
]則是目錄為[?]則是文件為[I
]則表示為鏈接文件(link
file)為[b]則表示為設(shè)備文件中可供儲(chǔ)存的接口設(shè)備為[c]則云示為設(shè)備文件中的串行端口設(shè)備,例 如鍵盤、鼠標(biāo)。文件權(quán)限文件屬性所有者
組 其他人-rwxiwx-—接下來的屬性中,三個(gè)為一組,且均為“rwx”的三個(gè)參數(shù)的組合。,其中寸[<]代表可讀,[w]代表可寫代表可執(zhí)行,[一]代表無此屬性。文件權(quán)限問題1:若有一個(gè)文件的屬性為“?rwxr-xr??”, 那么代表什么意思?答:上面的屬性代表一個(gè)文件,這個(gè)文件的所有者可讀可寫可執(zhí)行、但同群組的人僅可讀與執(zhí)行,非同群組的使用者僅可讀。文件權(quán)限問題2:如果有下面的兩個(gè)文件:-rw-r—r- 1
root
root
238
Jun
18
17:22
test.txt
-rwxr-xr~
1testl
testgroup
5238
Jun
19
10:25
ping_tsai請(qǐng)說明兩個(gè)文件的所有者與其相關(guān)的權(quán)限是什么?答:文件test.txt的所有者為root,組為root,只有root這個(gè)賬號(hào)可以存取此文件,其它人則僅能讀此文件。另一個(gè)文件
ping_tsai的所有者為testl,而組為testgroup□其中,testl
可以車I?對(duì)此文件具有可讀可寫可執(zhí)行的權(quán)力,而同組的test2,test3兩個(gè)人與testl同樣是testgroup的群組賬號(hào),則僅可讀可執(zhí)行但不能偵亦即不能修改),至于非testgoup這一個(gè)組的人則僅可以讀,不能寫也不能執(zhí)行。如何改變文件權(quán)限.改變所屬組命令:chgrp-語法:chgrp組名稱文件名稱-注意:組名稱必須已經(jīng)存在,否則會(huì)報(bào)錯(cuò)“chgrp:invalidgroup
name”-在/home/hexy/test上做實(shí)驗(yàn)看看-實(shí)驗(yàn)準(zhǔn)備:?使用root來執(zhí)行該命令使用SU命令來切換用戶?使用whoami命令查看當(dāng)前用戶?使用exit來退出會(huì)話如何改變文件權(quán)限.改變所有者命令:chown-通常用在文件拷貝之后-語法:chown[-R]賬號(hào)名稱文件chown[-R]賬號(hào)名稱:群組名稱文件?R選項(xiàng)意味著遞歸修改子目錄或者文件-注意:組名稱和帳號(hào)名稱必須已經(jīng)存在-在/home/hexy/test上做實(shí)驗(yàn)看看-實(shí)驗(yàn)準(zhǔn)備:使用root來執(zhí)行該命令如何改變文件權(quán)限.改變權(quán)限命令:chmodrwx可以分別用數(shù)字表示.
r
-->
4.
w
->
2.
x
■■>
1-rwx的組合可以用這些數(shù)字的和表示(按位或)rwx
=
4+2+1
=
7.
r-x
=
4+0+1
=
5一=0+0+0=0rwx「?x…就可以用750來表示!-語法:chmod[?R]xyz
文件其中xy
z分珈為三組rwx屬性數(shù)值的和如何改變文件權(quán)限.改變權(quán)限命令:chmod-舉例1:[hexy@hexy
test]$
Is
-I總計(jì)20-rw-rw-r-
1
hexy
hexy
0
08-31
22:11
a.txtdr-xr-xr-x
2
hexy
hexy
4096
08-31
19:08
t1drwxrwxr-x
2
hexy
hexy
4096
08-31
19:08t2
[hexy@hexy
test]$
chmod
775
t1[hexy@hexy
test]$
Is
-I總計(jì)20-rw-rw-r~
1
hexy
hexy
0
08-31
22:11
a.txtdrwxrwxr-x
2
hexy
hexy
4096
08-31
19:08
t!drwxrwxr-x
2
hexy
hexy
4096
08-31
19:08
t2[hexy@hexy
test]$-舉例2:分析"Is?l/home”的結(jié)果如何改變文件權(quán)限改變權(quán)限命令:chmod-舉例3,目錄的特殊性:
[hexy@hexy
t1]$
Is-Idrwxrwxrwx
2
hexy
hexy
4096
Aug
31
22:35
t11[hexy@hexy
t1]$
chmod
774
t11[hexy@hexy
t1]$
Is
-Idrwxrwxr-
2
hexy
hexy
4096
Aug
31
22:35
t11[hexy@hexy
t1]$
su
wwwPassword:[www@hexy
t1]$
cd
t11??>這句話能夠執(zhí)行嗎?
bash:
cd:
t11:權(quán)限不夠注意:想要?jiǎng)e人訪問你的文件冃錄,一定要有X的權(quán)限!因?yàn)闆]有x權(quán)限,那么任何命令都不能執(zhí)行,包括cd
Is等,所以也無從訪問目錄。如果只有x,沒有r會(huì)怎樣?如何改變文件權(quán)限改變權(quán)限命令:chmod-可以通過符號(hào)類型改變文件權(quán)限,因?yàn)槿讓傩苑謩e是針對(duì)user
(所有者)、group
(組)、others(其他人)的,所以就可以分別用u
g。來代表三個(gè)對(duì)象,
a代表all,chmod也可以這樣用:』U
川川入)
r
Uchmod
"1
8
"/V:(除去)iQWlE
°
=(設(shè)定)x
"十舉例(a.txt開始是-rw-rw-r-):chmod
u-r3g+x,o=w
a.txt
chmoda+r
a.txt
chmod
ua+w
a.txtLinux支持的文件系統(tǒng)與文件.文件系統(tǒng)-如果內(nèi)核不支持文件系統(tǒng),那么就無法訪問?早期的DOS訪問不了FAT32Windows98
訪問不了NTFS-Linux的正統(tǒng)文作格式是ext2/ext3,較新的Linux版本都只支持ext3,因?yàn)閑xt3具有更好的速度、町用性和數(shù)據(jù)完整性。_-Linux支持的文件格式包括VFAT
FAT/FAT32,有些發(fā)行版本也支持NTFS,査看某個(gè)Linux支持的文件系統(tǒng)可以訪問:cd
/lib/modules/"uname
-r"/kernel/fsLinux支持的文件系統(tǒng)與文件Linux文件的后綴名GUI系統(tǒng)可以通過文件后綴名(擴(kuò)展名)來選擇打開文件 的軟件,這一點(diǎn)與Windows相同Windows下面的可執(zhí)行文件是通過后綴名來定的,通常是. exe.bat.com等,Linux下面文件是否可執(zhí)行是由有無 屬性x決定的Linux下面的常見后綴名:*.sh代表批處理文件(腳本)*.pl代表Perl腳本文件*.Z,*.tar,*.tar.gz,*.zip,*.tgz
等表示各種壓縮文件.*.html網(wǎng)頁文件Linux支持的文件格式與文件種類.文件種類-如果內(nèi)核不支持文件系統(tǒng),那么就無法訪問?早期的DOS訪問不了FAT32Windows98
訪問不了NTFS-Linux的正統(tǒng)文作格式是ext2/ext3,較新的Linux版本都只支持ext3,因?yàn)閑xt3具有更好的速度、町用性和數(shù)據(jù)完整性。_-Linux支持的文件格式包括VFAT
FAT/FAT32,有些發(fā)行版本也支持NTFS,査看某個(gè)Linux支持的文件系統(tǒng)可以訪問:cd
/lib/modules/"uname
-r"/kernel/fsLinux支持的文件格式與文件種類目錄結(jié)構(gòu)(1/9)Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(2/9)-/bin這里存放例如Is,mv,rm,mkdir,rmdir,gzip,tar,telnet及ftp等等常用的執(zhí)行文件的地方,有時(shí)候這個(gè)冃錄的內(nèi)容與/usr/bin-樣(常使用鏈接文件),專門用于放置一般用戶使用的執(zhí)行程序(為得到最小的系統(tǒng)操作性所需要的命谷)。-/boot這是放置Linux內(nèi)核與啟動(dòng)相關(guān)文件的地方,這個(gè)目錄底下的vmlinuz-xxx就是Linux的Kernel□如果引導(dǎo)加載程序選擇grub的話,那么這個(gè)目錄內(nèi)還有/boot/grub這個(gè)子H
錄。Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(3/9)/dev存放與設(shè)備有關(guān)的文件,Unix/Linux系統(tǒng)均把設(shè)備當(dāng)成是文件來看待,例如/dev/fd0代表軟盤,就像Windows系統(tǒng)下的AIX,Wdev/cdrom則代表光盤。這個(gè)目錄底下的
文件通常分為兩種,分別是管理磁盤I/O的塊文件和串行設(shè)備的字符文件。-/etc系統(tǒng)在引導(dǎo)過程中需要讀取的文件均在這個(gè)目錄中,例如
LILO的參數(shù)、用戶賬號(hào)與密碼、你所要啟動(dòng)的服務(wù)項(xiàng)等都在這個(gè)目錄中。/etc/rc.d這個(gè)目錄主要存放開關(guān)機(jī)過程中用到的腳本文件。/etc/rc.d/init.d所有服務(wù)默認(rèn)的啟動(dòng)腳本文件都是放在這里。Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(4/9)-
/etc/xinetd.d這個(gè)路徑在較新的Linux
distribution當(dāng)中才有。早期的版本用來啟動(dòng)服務(wù)的文件是inetd.conf,在較新的版本中,啟動(dòng)服務(wù)已經(jīng)變成使用xinetd.conf文件。如果需要啟動(dòng)一些額外的服務(wù)的話(如CVS),需要在/etc/xinetd.d這個(gè)目錄下進(jìn)行配置。-/etc/X11與X
Windows有關(guān)的配置文件所在的目錄,如配置分辨率、刷新頻率等?!?/p>
/home這是系統(tǒng)默認(rèn)的用戶根目錄(home
directory),新增用戶時(shí)默認(rèn)會(huì)在/home下建立與用戶名同名的子目錄。Linux支持的文件格式與文件種類目錄結(jié)構(gòu)(5/9)/lib在Linux中執(zhí)行或編譯一些程序的時(shí)候,均會(huì)使用到一些函式庫(library),就在這個(gè)冃錄下。-/lost+found系統(tǒng)發(fā)生異常/錯(cuò)誤時(shí),會(huì)將一些遺失的片段放置于此日 錄下,通常這個(gè)目錄會(huì)自動(dòng)出現(xiàn)在設(shè)備目錄下。例如你 在/disk中增加一塊硬盤,那在這個(gè)目錄下就會(huì)自動(dòng)產(chǎn)生 一個(gè)這樣的目錄/disk/lost+found—
/mnt這是軟盤和光盤或者其他外部I/O設(shè)備默認(rèn)的掛載點(diǎn),通常軟盤掛在/mnt/floppy下,而光盤掛在/mnt/cdrom
Fo不過,這只是默認(rèn)情況而已,用戶完全可以控制掛載到如何喜歡的目錄。Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(6/9)/proc用于放置系統(tǒng)核心與執(zhí)行程序所需的一些信息。這個(gè)目錄將在啟動(dòng)的時(shí)候自動(dòng)的被掛上,而且該目錄底下不會(huì)占去硬盤空間!因?yàn)槔锩娑际莾?nèi)存內(nèi)的數(shù)據(jù)。-/root系統(tǒng)管理員的根目錄-/sbin放置系統(tǒng)管理常用的程序,例如:fdisk,mke2fs3fsck,mkswap,mount等。與/bin不太一樣的地方,這個(gè)目錄下的程序通常是給root等系統(tǒng)管理員使用的程序。/tmp存放臨時(shí)文件的地方,重新引導(dǎo)后刪除。/va「/tmp下面的東西在重新引導(dǎo)之后都不刪除。Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(7/9)-
/usr非常重要的一個(gè)目錄,存放應(yīng)用程序與命令,類似于Windows的“Program
Files"-/usr/include程序用到的頭文件,通常在編譯時(shí)需要。-/usr/lib應(yīng)用程序需要的函數(shù)庫。-/usr/local升級(jí)后的軟件默認(rèn)安裝目錄,通常新安裝的軟件,其執(zhí)行文件在/usr/local/bin中,原來安裝的就在/binLinux支持的文件格式與文件種類.目錄結(jié)構(gòu)(8/9)-
/usr/share/doc放置一些系統(tǒng)說明文件的地方,例如如果安裝了grub,那么其下必然有g(shù)rub相關(guān)的冃錄,從中可以找到說明文檔。操作實(shí)例:[root@hexy
doc]#cd
"find
/usr/share/doc
-name
“grub*”[root@hexy
grub-0.97]#
IsAUTHORS
ChangeLog
COPYING
menu.lst
NEWSREADME
TODO[root@hexy
grub-0.97]#more
menu.lst
輸入/OS查詢grub中關(guān)于啟動(dòng)OS/2的配置-實(shí)驗(yàn)操作Linux支持的文件格式與文件種類.目錄結(jié)構(gòu)(9/9)-
/usr/share/man放置一些程序的說明文件的地方,就是使用man的時(shí)候,會(huì)去查詢的路徑。例如你使用man
Is這個(gè)指令時(shí),就會(huì)查出/usr/share/man/man1/ls.1
,bz2
(也可能是Is.I.gz)這個(gè)說明文件的內(nèi)容。-
/usr/src放置內(nèi)核源碼的默認(rèn)目錄,在編譯內(nèi)核的時(shí)候需要-/usr/X11R6放置X
Window系統(tǒng)文件的目錄,一般包括lib和bin兩個(gè)了目錄-
/var用于存儲(chǔ)各種快速增長或者變化的東西,如所有服務(wù)的登錄文件或者錯(cuò)誤口志都放在/va「/log下,用戶未讀郵件默認(rèn)存放地點(diǎn)是/var/spool/mail路徑與目錄相對(duì)路徑與絕對(duì)路徑-絕對(duì)路徑的寫法一定以“/”開始,例如/usr/share/doc-相對(duì)路徑的寫法不從開始,例如share/doc,
./share/doc,
../usr/share/doc-兒個(gè)特殊符號(hào)?代表當(dāng)前路徑.?代表上層目錄?代表用戶根目錄-user代表user的根目錄-系統(tǒng)登錄時(shí)候,用戶會(huì)自動(dòng)跳轉(zhuǎn)到其Home目錄,root用戶的Home是/root,其他用戶user的默認(rèn)Home
冃錄是/home/user路徑與目錄.改變當(dāng)前路徑的命令:cd-語法:cd
[相對(duì)路徑或絕對(duì)路徑]-舉例:cd
..cd
../homev=二回到上一層目錄
v==相對(duì)路徑的寫法cd
/var/www/html
v==絕對(duì)路徑的寫法cd v=回到使用者的Home目錄cd?
v=回到使用者的Home目錄cd?test
<==0到test這個(gè)用戶的Home目錄-顯示當(dāng)前路徑的命令:pwd相對(duì)路徑容易混淆,可以用pwd打印絕對(duì)路徑來確認(rèn)路徑與目錄建立目錄的命令:mkdir-語法:mkdir[-mp][目錄名稱]_?m選項(xiàng)可以改變默認(rèn)的文件屬性-P選項(xiàng)用于創(chuàng)建需要的目錄結(jié)構(gòu)m和p同時(shí)使用,則僅控制最后一個(gè)目錄的屬性-實(shí)驗(yàn):mkdir
t1/a在t1下建立子目錄a,如果t1不存在則報(bào)錯(cuò),目錄屬性默認(rèn)值一般為775
(參見第四講umask)mkdir-p
a/b/c創(chuàng)建目錄樹結(jié)構(gòu),如果沒有則創(chuàng)建,有則沉默mkdir-m
770
bb新建目錄bb,屬性設(shè)置為770路徑與目錄刪除目錄的命令:rmdir-語法:rmdir[?pv][目錄名稱]-P選項(xiàng)用于刪除整個(gè)目錄結(jié)構(gòu)-V選項(xiàng)用于顯式詳細(xì)信息一定要確保目錄非空,否則要報(bào)錯(cuò)刪除非空的目錄可以用「m命令-實(shí)驗(yàn):rmdir
aa/bb/cc刪除aa/bb0錄下的子目錄cc,
aa/bb保留
rmdir-pv
aa/bb/cc刪除aa/bb/cc整個(gè)目錄樹,顯示刪除的每一個(gè)目錄路徑與目錄環(huán)境變量:PATH
(1/2)-系統(tǒng)執(zhí)行命令時(shí),會(huì)到PATH環(huán)境變量里面的所有路徑進(jìn)行理索,首先搜索到的命令被執(zhí)行,如果找不到則顯示u
command
not
found"-用echo命令打印變量的值-語法:echo
$變量名稱舉例:echo
SPATHecho
java
home
is
:
$JAVA_HOME路徑與目錄環(huán)境變量:PATH
(2/2)-解決“command
not
found"的辦法?把新的路徑加入到PATH中,例如:exportPATH=$PATH:/home/hexy/hexybin
?直接使用
命令的絕對(duì)路徑,例如:/home/hexy/hexybin/test./Is-PATH里面一般不要加入./tmp的屬性一般是777
(使用命令I(lǐng)s-Id
/tmp查看),惡意代碼容易置入如果PATH里面加入?,并且惡意代碼的名稱是Is你在/tmp
F面執(zhí)行Is命令查看文件情況中標(biāo)!文件與目錄管理顯示屬性命令:Is-語法:Is[-aABdIS][路徑…]-參數(shù)說明:a全部的文件都列出(包括隱藏文件)
A忽略當(dāng)前路徑和上級(jí)路徑B忽略備份文件(以?結(jié)尾)I
一行一個(gè)文件,包含幾乎全部屬性S以文件大小排序d只顯示目錄的屬性,而不是路徑下的文件-color=never
不要顯示顏色-color=always
均顯示顏色~color=auto
由系統(tǒng)自行判斷文件與目錄管理.顯示屬性命令:Is
-實(shí)驗(yàn)-cd-Is-Is
-al-Is
-ABI-Is
-aid
/tmp
/proc
-Is
-color=never文件與目錄管理.拷貝命令:cp-語法:cp
[?iruv][源文件][目標(biāo)文件]-參數(shù)說明:-i在文件覆蓋之前顯示確認(rèn)信息.r拷貝整個(gè)目錄結(jié)構(gòu)-u,-update:如果源文件比較新,或者是沒有目標(biāo)文件,那么才會(huì)進(jìn)行copy的動(dòng)作,可用于備份。-V顯示詳細(xì)信息告訴用戶當(dāng)前執(zhí)行的動(dòng)作文件與目錄管理.拷貝命令:cp-實(shí)驗(yàn)cp
~/test/a.txt
/tmpcp
~/test/a.txt
/tmp/b.txt
cp
-i
~/test/a.txt
/tmp/b.txtcp
-rv
-/test
/tmp
cp
-ruv~/test
/tmp
echo
aabbcc?a.txt
cp
-ruv
~/test
/tmp文件與目錄管理.刪除命令:rm-語法:-rm[?firv][文件名稱]-參數(shù)說明:-i刪除前讓用戶確認(rèn),文件刪除時(shí)這是默認(rèn)值,如果使用遞歸刪除則不是默認(rèn)值。-r遞歸刪除?f強(qiáng)制刪除,忽略掉不存在的文件,且刪除前不需要用戶確認(rèn)-V顯示當(dāng)前操作的詳細(xì)信息文件與目錄管理.刪除命令:rm-實(shí)驗(yàn):
rm
arm
arm-f
arm
-i
a.txtrm
-r
t1rm
-rvf
b-問題:如何刪除“■”開頭的文件?rm
■■
-foorm
./-foo文件與目錄管理.移動(dòng)文件命令:mv-語法:-mv
[-fiuv][源文件][目標(biāo)文件]-參數(shù)說明:?f覆蓋文件前不需要用戶確認(rèn)?i覆蓋文件前讓用戶確認(rèn)-u當(dāng)源文件比目標(biāo)文件新或者目標(biāo)文件不存在的時(shí)候才會(huì)執(zhí)行動(dòng)作--V顯示當(dāng)前操作的詳細(xì)信息文件與目錄管理.移動(dòng)文件命令:mv
-實(shí)驗(yàn):cp
a.txt
aa.txt
mvaa.txt
/tmp
mv/tmp/aa.txt
b.t2
mv
-ib.txt
/tmp/aa.txt
mv
-uv
a
/tmp小結(jié)文件屬性chgrp
chown
chmod.Linux的目錄結(jié)構(gòu)cd
pwd
mkdir
rmdirIs
cp
rm
mvvi文本編輯器.Linux/Unix下的配置文件都是文本文件.vi是使用最廣泛的編輯器vi分為三種工作模式:-一般模式-編輯模式-命令模式vi文本編輯器vi的一般模式:-以vi處理一個(gè)文件的時(shí)候,一進(jìn)入該文件就是一般模式了(vi命令啟動(dòng)后的默認(rèn)狀態(tài))。在這個(gè)模氏中,可以使用上下左右鍵來移動(dòng)光標(biāo),也可以使用刪除字符或刪除整行來處理文件內(nèi)容,也可以使用宣制、籍貼。.vi的編輯模式:-在一般模式中可以處理刪除、復(fù)制、粘貼等動(dòng)作,但是卻無法編輯。-按下i丄0,0,a,A等字母之后才會(huì)進(jìn)入編輯模式,進(jìn)入該模式后,左下方會(huì)岀現(xiàn)INSERT或pppi
笙卓樣-按下ESC就可以曲到一般模式vi文本編輯器.Vi的進(jìn)入編輯模式的命令詳解i從光標(biāo)所在位置前開始插入文本I將光標(biāo)移到當(dāng)前行行首,然后在其前插入文本a用于在當(dāng)前光標(biāo)位置之后插入文本A把光標(biāo)移到行尾,從那里開始插入文本-。在光標(biāo)所在行的屈新開一行,并將光標(biāo)置于新行行首,等待輸入文本-0在光標(biāo)所在行的上面新開一行,并將光標(biāo)置于新行行首,等待輸入文本vi文本編輯器.vi的命令模式-在一般模式當(dāng)中,輸入:或/就可以將光標(biāo)移動(dòng)到最底下那一行,從而進(jìn)入命令模式。-在這個(gè)模式當(dāng)中,可以進(jìn)行搜索、保存、退出、讀取另外一個(gè)文件、顯示行號(hào)等動(dòng)作。vi文本編輯器編輯模式輸入字符命令模式圖解vi的三種模式I
0
a號(hào)戶勺取存涓讀保顯CSECSE式模般標(biāo)換料替動(dòng)找除制貼移查刪復(fù)粘vi文本編輯器vi的舉例:輸入vi
test.txt按下i,進(jìn)入編輯模式輸入hello按卜Esc進(jìn)入一般模式輸入:wq冋車保存退出vi文本編輯器.Vi一般模式下常用命令(1/3):hj
kl用于光標(biāo)左移、下移、上移、右移[Ctrl]+[f]屏卻向前移動(dòng)一頁
[Ctrl]+[b]屏昴冋后移動(dòng)一貝0$GnG移到行的第一個(gè)字符處移到行的最后一個(gè)字符處移到文件的最后一行移動(dòng)到文件的第n行n<Enter>光標(biāo)向下移動(dòng)n行nH
光標(biāo)移到當(dāng)前屏幕的第n行行首vi文本編輯器.Vi一般模式下常用命令(2/3):
x向后刪除一個(gè)字符nx
向后刪除n個(gè)字符X
向前刪除一個(gè)字符dd刪除光標(biāo)所在的行ndd刪除光標(biāo)所在行的向后n行yy復(fù)制光標(biāo)所在行nyy復(fù)制光標(biāo)所在行的向后n行p粘貼到光標(biāo)的下一行P粘貼到光標(biāo)的上一行vi文本編輯器Vi一般模式下常用命令(3/3):/word在光標(biāo)之后査找word?word在光標(biāo)之前査找wordn
向相同的方向移動(dòng)到有wo
rd的地方N
向相反的方向移動(dòng)到有word的地方u
撤銷上次操作.重做ZZ
存盤退出ZQ
不保存退出vi文本編輯器.Vi命令模式下常用命令(1/3)::n
跳到第n行:q
退出,如果有修改沒有保存會(huì)提示:wq
存盤退出:q!
不保存退出:W
存盤:w
file:r
file將當(dāng)前編輯內(nèi)容保存到file讀取另外一個(gè)文件file的數(shù)據(jù),插入到光標(biāo)所在行的后面:f
newfile將當(dāng)前文件重命名到newfile
(別忘了保存)vi文本編輯器.Vi命令模式下常用命令(2/3)::n1,
n2s/word
1
/word2/g在第n1與n2行之間尋找wordl這個(gè)字符申,并將該字符串替換為word2:1
,$s/word1/word2/g從第一行到最后一行尋找wordl字符串,并將該字符串替換為word2
(.可以表示當(dāng)前行,$可以表示最后一行):1
,$s/word1/word2/gc從第一行到最后一行尋找W0「d1字符串,并將該字符串替換為word2e且在替換前顯示提示字符給使用者確認(rèn)。vi文本編輯器顯示行號(hào)隱藏行號(hào)第n1行到n2行的內(nèi)容移動(dòng)到n3后刪除第n1行到n2行的內(nèi)容運(yùn)行Shell命令Cmd將命令行運(yùn)行的結(jié)果寫入當(dāng)前位置將第n
1行至U
n
2行的內(nèi)容作為的輸入運(yùn)行命令,如果沒有和n2,則將整個(gè)文件作為vi命令模式下常用命令(3/3)::n1,n2
co
n3第n1行到n2行的內(nèi)容拷貝到n3后:n1,n2
m
n3:n1,n2
d:!Cmd:r
!Cmd:n1,n2
w
!CmdCmd
指定n1
輸入。:set
nu:set
nonuvi文本編輯器.vi練習(xí):-將/etc/man.config拷貝到當(dāng)前目錄,用vi打開-顯示行號(hào),并移動(dòng)到第62行查看內(nèi)容-移動(dòng)到第一行,并且向下搜尋一下man-將50至U100行之間的man改為MAN,并且一個(gè)一個(gè)挑選是否需要修改-修改完之后,突然反悔了,全部復(fù)原-復(fù)制51到60行這十行的內(nèi)容,并且貼到最后一行之后-刪除11到30行之間的20行-將這個(gè)文件另存成man.test.config-保存退出什么是Shell?想要聽音樂需要什么?_首先需要聲卡-操作系統(tǒng)的核心可以支持這個(gè)聲卡(有相應(yīng)的聲卡驅(qū)動(dòng)程序)-用戶發(fā)出播放音樂的指令必須發(fā)出指令,硬件才會(huì)工作。如果可以直接同
硬件溝通,八那么不需要內(nèi)核《否則,用戶的指
令必須先發(fā)送給內(nèi)核,然后內(nèi)核再去控制硬彳牛。
shell正是用戶烏內(nèi)核溝通的平臺(tái):-用戶可以通過shell給內(nèi)核發(fā)送指令-內(nèi)核也可以把指令執(zhí)行的過程或者結(jié)果信息發(fā)送到shell給用戶看。什么是Shell?來自第一講的圖:用戶外殼(Shell,KDE,Application)內(nèi)核(Kernel)硬件(Hardware)什么是Shell?想要聽音樂需要什么?_首先需要聲卡-操作系統(tǒng)的核心可以支持這個(gè)聲卡(有相應(yīng)的聲卡驅(qū)動(dòng)程序)-用戶發(fā)出播放音樂的指令必須發(fā)出指令,硬件才會(huì)工作。如果可以直接同
硬件溝通,八那么不需要內(nèi)核《否則,用戶的指
令必須先發(fā)送給內(nèi)核,然后內(nèi)核再去控制硬彳牛。
shell正是用戶烏內(nèi)核溝通的平臺(tái):-用戶可以通過shell給內(nèi)核發(fā)送指令-內(nèi)核也可以把指令執(zhí)行的過程或者結(jié)果信息發(fā)送到shell給用戶看。BASH
Shell早年的Unix年代,Unix發(fā)展者眾多,所以shell有 很多不同版本,例如常聽到的Bourne
Shell(sh) 、在Sun中默認(rèn)的C
ShelL商業(yè)上常用的KSHell 以及TCSH等,每一種Shell都各有其特點(diǎn)。.Linux
使用的是Bourne
Again
Shell
(簡稱bash),這個(gè)Shell是Bourne
Shell的增強(qiáng)版本,也是基
于GNU的架構(gòu)下發(fā)展出來的。BASH
Shell第一個(gè)流行的shell是由Steven
Bourne開發(fā)出
來的,為了紀(jì)念他所以就稱為Bourne
shell,或 直接簡稱為sh。另一個(gè)廣為流傳的shell是由柏克萊大學(xué)的Bill Joy設(shè)計(jì)依賴于BSD版的Unix系統(tǒng)中的shell,這 個(gè)shell的語法有點(diǎn)類似C語言,所以才得名為Cshell/*簡稱cshQo^jn
COITIBASH
shell是GNU計(jì)劃中重要的工具軟件之一,目前也是GNU操作系統(tǒng)中標(biāo)準(zhǔn)的shell,與sh兼容。BASH
ShellBASH
Shell的特點(diǎn)(1/5):-命令記憶能力
Linux可以記憶以前輸入過的命令,只要使用上下鍵就可以找到以前執(zhí)行的指令來執(zhí)行。這些命令按照先后順序記錄在用戶Home目錄下的隱藏文 件.bash_history
中.bashhistory里而記錄了上一次登錄以前執(zhí)行過的命令,本次登錄執(zhí)行的命令都保存在內(nèi)存中,只有成功注銷之后,內(nèi)存數(shù)據(jù)才會(huì)刷新到.bash_history文件中有時(shí)候.bash_history文件中記錄了你包含祎指令屮的密 碼,可能引起安全向題(如sqlplus
sys/abcdefg
as
_ sysdba),所以最好還是設(shè)置命令的記錄數(shù)量不要太±0BASH
ShellBASH
Shell的特點(diǎn)(2/5):-命令補(bǔ)全補(bǔ)全功能.如果在執(zhí)行命令的時(shí)候不想按下太多的找鍵(例如命令pcprofiledump),在輸入了pcprofile
之后,再按下[Tab]鍵的話,那么bash馬上會(huì)自動(dòng)的將后面的dump
接上來。如果有重復(fù)的命令,那么按下兩次[Tab]將會(huì)把所有 重復(fù)的命令列出來。直接在提示字符后面連按兩次<tab>鍵,則系統(tǒng)會(huì)將所有 可以使用的命令都列出來。例如,如果想要知道冃前系統(tǒng)里面,所有以b開頭的命 令呢?就是按下b之后,連按兩次<tab>就ok。BASH
ShellBASH
Shell的特點(diǎn)(3/5):-文件名稱補(bǔ)全功能.如果用vi來讀取某個(gè)文件,例如/etc/man.config這個(gè)文件,那么可以輸入vi
/etc/man之后,直接按下vtab>鍵,該文件名稱就會(huì)被自動(dòng)的補(bǔ)上。同樣,岀現(xiàn)文件多個(gè)匹配項(xiàng)時(shí),可以按下兩個(gè)TAB鍵來 顯示所有匹配項(xiàng)。這樣大大增加了指令輸入的正確率。BASH
ShellBASH
Shell的特點(diǎn)(4/5):-命令別名設(shè)置功能假如我需要知道某個(gè)日錄底下的所有文件信息(包含隱 藏文件)及所有的文件屬性,那么我就必須要輸入Is?al 這樣的指令。每次都輸入多麻煩!可以通過為自己經(jīng)常使用的命令(包括參數(shù))定義別名 來避免過多輸入。例如:alias
Im-ls-al"(注意=兩邊不要有空格)那么以后Im就等于執(zhí)行Is-al
_直接輸入alias,可以顯示目前以及定義好的所有別名BASH
ShellBASH
Shell的特點(diǎn)(5/5):-任務(wù)控制,前臺(tái)、背景控制bg
fgCtrl+ZCtrl+C-
Shell
scripts變量與變量設(shè)置變量(1/2):-假設(shè)JAVA安裝在/usr/jdk1.5下面-其他很多程序(比如應(yīng)用服務(wù)器)的執(zhí)行都需要JRE,這些服務(wù)的啟動(dòng)可能形如:/usr/jdk1.5/bin/java
com.bea.WebLogicStart/usr/jdk1.5/bin/java
com.bea.EJBContainer/usr/jdk1.5/bin/java
com.bea.WebContainer-那么假如JAVA換了其他目錄,或者要使用其他版本(如jdk1.5->jdk6.0)呢?變量與變量設(shè)置變量(2/2):-通常的做法是定義變量,如:JAVA_HOME=/usr/jdk1.5-那么其他程序都用變量,而不用絕對(duì)值,如:$JAVA_HOME/bin/java
com.bea.WebLogicStart$JAVA_HOME/bin/java
com.bea.EJBContainer$JAVA_HOME/bin/java
com.bea.WebContainer
-那么假如JAVA換了其他目錄,或者要使用其他版本(如
jdk1.5-?>jdk6.0),那么只需要修改變量的值即可:JAVA_HOME=/usr/jdk6.0變量就是特定字符串值的別名變量與變量設(shè)置顯示變量值的命令:echo-用法:echo
$variable
-例如:
echo$PATH
echo
$HOME
echo
$MAILecho
$USER
echo
$HOSTNAME
_查看所冇Linux預(yù)定義變量的命令:env變量與變量設(shè)置重要的系統(tǒng)環(huán)境變量:HISTSIZE=1000
v二二當(dāng)前命令記憶數(shù)量
HOME=/home/test
v=二登錄用戶的Home
目錄
HOSTNAME二
v二二主機(jī)名稱
HOSTTYPE=i386
v=主機(jī)CPU等級(jí)(i386,i686...)LANGUAGE=zh_CN.UTF-8
v=默認(rèn)語言,要修改它可以修改/etc/sysco
nfig/i
18
n文件
MAIL=/var/spool/mail/root<==郵祥目錄LOGNAME=root
v二二登錄帳號(hào)PWD=/root
v==當(dāng)前路徑PS1=[\u@\h
\W]$
v==命令行提示符樣式變量與變量設(shè)置顯示所有變量的命令:set-set除了會(huì)顯示出目前的環(huán)境變量之外,也會(huì)顯示出用戶自定義變量。常見的用戶自定義變量有:BASH=/bin/bash<=BASH主程序所在路徑COLORS習(xí)etc/DIR_COLORS<=使用顏色COLUMNS=100<=終端的字符列數(shù)HISTFILE=/home/vbird/.bash_history
v=歷史命令文件MAILCHECK=60
v=每隔60S檢查一次郵PPID=24572
v二當(dāng)前bash
父進(jìn)程IDUID=500 v=當(dāng)前用戶的UID$ v=當(dāng)而shell的PID?v=最后一個(gè)命令的返回值,0表示成功,否則為1變量設(shè)置規(guī)則變量設(shè)置規(guī)則(1/2)-變量與變量內(nèi)容(值)用等號(hào)連接-等號(hào)兩邊不能直接接空格符-變量名稱只能是英文字母與數(shù)字,但是數(shù)字不能是開頭字符-若有空格符可以使用雙引號(hào)或單引號(hào)來將變量內(nèi)容括起來。注意:雙引號(hào)內(nèi)的特殊字符可以保有變量特性,但是單引
號(hào)內(nèi)的特殊字符則僅為一般字符-必要時(shí)需要轉(zhuǎn)義字符“\”來將特殊符號(hào)(如回車換行,$,\,空格符,單引號(hào)等)變成一般符號(hào)變量設(shè)置規(guī)則變量設(shè)置規(guī)則(2/2)-在命令中,如果需要其他命令的執(zhí)行結(jié)果信息,可以使用"command-若該變量為擴(kuò)增變量內(nèi)容時(shí),則需以雙引號(hào)(有些版本也不用)及$變量名稱(如:”$PATH”:/home)繼續(xù)累加內(nèi)容-若該變量需要在其它子程序執(zhí)行,則需要以export
來使變量生效,如export
PATH-通常大寫字符為系統(tǒng)變量,自定義變量可以使用小寫字符,方便區(qū)別(只是建議)-取消變量的方法為:unset變量名稱變量設(shè)置規(guī)則變量設(shè)置實(shí)戰(zhàn)(1/3)12name=VBrid
V==錯(cuò)誤!變量開頭不能是數(shù)字name=VBirdv==錯(cuò)誤!等號(hào)兩邊不能直接接空格name=VBirdv=正確!echo
$name顯示VBirdname=VBird
nameV*昔!帶空格需要加上雙引號(hào)!name=HVBird
name"V二正確!name="VBird,s
name"V==正確!變量設(shè)置規(guī)則變量設(shè)置實(shí)戰(zhàn)(2/3)aa=hexy
name=$aaisme v=達(dá)不到累加的效果,name與變量aaisme同值
name="$name"ismev==正確!echo
$name
顯示VBird"s
nameismePATH="$PATH":/home/testv=正確的!echo
$PATH將多了一段PATH="$PATH:/home/testn
_v==正確!這個(gè)形式對(duì)于PATH來說也是正確的變量設(shè)置規(guī)則變量設(shè)置實(shí)戰(zhàn)(3/3)[hexy@hexy
~]$ aa="abcd"[hexy@hexy~j$
bb="$aaHaabb
[hexy@hexy?j$
cc="$aa,aabb問題:現(xiàn)在aa
bb
cc的值是多少?
abedabedaabbSaaaabb變量設(shè)置規(guī)則export
命令-讓“局部變量"變成“全局變量”,這樣shell設(shè)置的變量在其子shell中同樣有效。但是不能跨越當(dāng)前會(huì)話-舉例:name=hexy
bash v==進(jìn)入子shellv=退出子shell<==3
入子shellecho
$name
v==顯示空exitexport
name
v=導(dǎo)出bashecho
$name
v=顯示hexy命令別名與歷史設(shè)置別名的命令:alias-可以
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房產(chǎn)抵押合同協(xié)議書房產(chǎn)抵押租賃合同3篇
- 二零二五年度帶車位房產(chǎn)銷售合同3篇
- 二零二五年度廣州市居民財(cái)產(chǎn)分割離婚協(xié)議書3篇
- 二零二五年度智慧城市SaaS解決方案服務(wù)協(xié)議2篇
- 自動(dòng)控制大實(shí)驗(yàn)課程設(shè)計(jì)
- 二零二五年度開業(yè)慶典活動(dòng)互動(dòng)游戲定制合同3篇
- 二零二五年度度假村合作投資開發(fā)房地產(chǎn)項(xiàng)目合同3篇
- 二零二五年度公積金貸款二手房交易合同模板3篇
- 早教老師工作職責(zé)范圍范文(2篇)
- 二零二五年度房地產(chǎn)廣告代理權(quán)益保護(hù)協(xié)議3篇
- 哮喘吸入裝置的正確使用方法課件
- 2023年成都東部集團(tuán)有限公司招聘筆試題庫及答案解析
- 角點(diǎn)網(wǎng)格一.角點(diǎn)網(wǎng)格定義
- 聚酯合成反應(yīng)動(dòng)力學(xué)
- 自動(dòng)控制原理全套課件
- 視頻監(jiān)控室值班記錄表
- 歌曲《梁?!泛喿V完整版
- 小學(xué)語文教研組期末考試質(zhì)量分析
- 《五年級(jí)奧數(shù)總復(fù)習(xí)》精編課件
- 校園安全存在問題及對(duì)策
- 鉆井作業(yè)常見安全隱患
評(píng)論
0/150
提交評(píng)論