Linux自帶有兩個(gè)文本編輯器:vi和nano。
成都創(chuàng)新互聯(lián)主營(yíng)巫山網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件定制開發(fā),巫山h5重慶小程序開發(fā)搭建,巫山網(wǎng)站營(yíng)銷推廣歡迎巫山等地區(qū)企業(yè)咨詢
使用nano編輯文件:
nano 文件名
點(diǎn)擊Ctrl-X可以退出編輯,選擇是否保存對(duì)文件的改動(dòng)。
使用vi編輯文件:
vi 文件名
vi有兩個(gè)模式:一個(gè)是編輯模式一個(gè)是命令模式。點(diǎn)擊i可以從命令模式進(jìn)入編輯模式,在點(diǎn)擊esc鍵可以重新進(jìn)入命令模式。我們一般進(jìn)入編輯模式,來進(jìn)行添加,修改,刪除。但是當(dāng)我們刪除和修改的內(nèi)容過多的時(shí)候,我們使用命令行模式,進(jìn)行修改,這樣方便,快捷,而命令行中,最常用到的是x,dd,u,p這四個(gè)命令:x:刪除當(dāng)前字符;dd:刪除當(dāng)前行;u:恢復(fù)前一步操作;p:復(fù)制之前刪除的行。
使用 Linux 系統(tǒng)自帶的全屏幕編輯程序 vi,即可編輯、修改文本文件。例如:
$vi my_program.c(使用 vi 命名編輯一個(gè) C 語言源程序)
linux 給文件改名的命令是mv命令
mv命令來為文件或目錄改名或?qū)⑽募梢粋€(gè)目錄移入另一個(gè)目錄中。該命令等同于DOS系統(tǒng)下的ren和move命令的組合。它的使用權(quán)限是所有用戶。命令詳細(xì)介紹可參考 Linux命令大全
chmod
u+s
ifconfig
給命令添加一個(gè)setuid權(quán)限就可以,這樣執(zhí)行命令時(shí),普通用戶就成了root。
在linux中,不管是root用戶還是普通用戶,都可以使用“password”命令來更改自身的密碼。但是,linux中的密碼通常是保存在“/etc/paswd”和“/etc/shadow”文件中,這兩個(gè)文件對(duì)系統(tǒng)安全至關(guān)重要,因此只有root用戶才能對(duì)其執(zhí)行讀寫操作。以管理員的身份登陸系統(tǒng),在linxu提示符下執(zhí)行“l(fā)s
/etc/passwd
/etc/shadow”命令,在返回信息中可以看到普通用戶對(duì)上述這兩個(gè)文件并沒有寫權(quán)限,因此從文件屬性的角度看,普通用戶在更改自身密碼時(shí),是無法將密碼信息寫入到上述文件中的,哪么用戶是怎樣成功的更改密碼的呢?實(shí)際上,問題的關(guān)鍵不在于密碼文件本身,而在于密碼更改命令“passwd”。在提示符下執(zhí)行命令“l(fā)s
/usr/bin/passwd”,在返回信息中的文件所有者執(zhí)行權(quán)限位上顯示“s”字樣,表示“passwd”命令具有setuid權(quán)限,其所有者為root,這樣普通用戶在執(zhí)行“passwd”命令時(shí),實(shí)際上以有效用戶root的身份來執(zhí)行的,并具有了相應(yīng)的權(quán)限,從而將新的密碼寫入到“/etc/passwd”和“/etc/shadow”文件中,當(dāng)命令執(zhí)行完畢,該用戶的身份立即消失。如何設(shè)置setuid權(quán)限呢?使用“chmod”命令即可為指定文件設(shè)置setuid權(quán)限,例如“chmod
4xxx
filename”命令,取消setuid權(quán)限的命令為“chmod
xxx
filename”。類似的,執(zhí)行“chmod
2xxx
filename”命令可以設(shè)置setuid權(quán)限,使用“chmod
xxx
filename”命令即可取消setgid權(quán)限,如果執(zhí)行“chmod
6xxx
filename”命令,即可同時(shí)為指定文件設(shè)置setuid和setgid,執(zhí)行命令“chmod
0xxx
filename”,即可同時(shí)取消指定文件的setuid和setgid權(quán)限。例如以root用戶登陸系統(tǒng),執(zhí)行“chmod
0511
/usr/bin/passwd”命令,就可以取消“passwd”命令的setuid權(quán)限,這樣普通用戶就無法修改自己的密碼了。
[root@localhost ~]# ls -l
總用量 44
-rw------. 1 ---- root ---- root --------1207 1 月14 18:18 anaconda-ks.cfg
權(quán)限--引用計(jì)數(shù) 所有者 -- 所屬組--- 大小-- 文件修改時(shí)間 文件名
ls [選項(xiàng)] [文件名或目錄名]
選項(xiàng):
-a :顯示所有文件
--color=when:支持顏色輸出
-d :顯示目錄信息,而不是目錄下的文件
-h :人性化顯示﹐按照我們習(xí)慣的顯示文件大小
-i :顯示文件的i節(jié)點(diǎn)號(hào)
-l:長(zhǎng)格式顯示
pwd 命令是查詢當(dāng)前所在的目錄的絕對(duì)路徑
選項(xiàng):
-L (默認(rèn)值)打印環(huán)境變量"$PWD"的值,可能為符號(hào)鏈接。
-P 打印當(dāng)前工作目錄的物理位置。
mkdir 是創(chuàng)建目錄的命令
選項(xiàng):
-Z:設(shè)置安全上下文,當(dāng)使用SELinux時(shí)有效;
-m或--mode:建立目錄的同時(shí)設(shè)置目錄的權(quán)限;
-p或--parents:若所要建立目錄的上層目錄目前尚未建立,則會(huì)一并建立上層目錄;
rmdir 是刪除空目錄的命令
-p: 遞歸刪除目錄
touch 是 創(chuàng)建空文件或修改文件的時(shí)間戳
[root@localhost ~]# touch [選項(xiàng)] 文件名
-a:或--time=atime或--time=access或--time=use 只更改存取時(shí)間;
-c:或--no-create 不建立任何文件;
-d:時(shí)間日期 使用指定的日期時(shí)間,而非現(xiàn)在的時(shí)間;
-f:此參數(shù)將忽略不予處理,僅負(fù)責(zé)解決BSD版本touch指令的兼容性問題;
-m:或--time=mtime或--time=modify 只更該變動(dòng)時(shí)間;
-r:參考文件或目錄 把指定文件或目錄的日期時(shí)間,統(tǒng)統(tǒng)設(shè)成和參考文件或目錄的日期時(shí)間相同;
-t:日期時(shí)間 使用指定的日期時(shí)間,而非現(xiàn)在的時(shí)間;
--help:在線幫助;
--version:顯示版本信息。
stat 是查看文件詳細(xì)信息的命令,而且可以看到文件的這三個(gè)時(shí)間戳
選項(xiàng):
-L:支持符號(hào)連接;
-f:顯示文件系統(tǒng)狀態(tài)而非文件狀態(tài);
-t:以簡(jiǎn)潔方式輸出信息;
cat 命令用來查看文件內(nèi)容
選項(xiàng):
-A: 相當(dāng)于-vET 選項(xiàng)的整合,用于列出所有隱藏符號(hào)
-E: 列出每行結(jié)尾的回車符$
-n: 顯示行號(hào)
-T: 把 Tab 鍵用^I顯示出來
-v: 列出特殊字符
more 是分屏顯示文件的命令
less 是分行顯示文件的命令
用less命令顯示文件時(shí),用PageUp鍵向上翻頁,用PageDown鍵向下翻頁。要退出less程序,應(yīng)按Q鍵。
選項(xiàng):
-e:文件內(nèi)容顯示完畢后,自動(dòng)退出;
-f:強(qiáng)制顯示文件;
-g:不加亮顯示搜索到的所有關(guān)鍵詞,僅顯示當(dāng)前顯示的關(guān)鍵字,以提高顯示速度;
-l:搜索時(shí)忽略大小寫的差異;
-N:每一行行首顯示行號(hào);
-s:將連續(xù)多個(gè)空行壓縮成一行顯示;
-S:在單行顯示較長(zhǎng)的內(nèi)容,而不換行顯示;
-x數(shù)字:將TAB字符顯示為指定個(gè)數(shù)的空格字符。
head 是用來顯示文件開頭的命令
選項(xiàng):
-c --bytes=[-]NUM 顯示前NUM字節(jié);如果NUM前有"-",那么會(huì)打印除了文件末尾的NUM字節(jié)以外的其他內(nèi)容。
-n, --lines=[-]NUM 顯示前NUM行而不是默認(rèn)的10行;如果NUM前有"-",那么會(huì)打印除了文件末尾的NUM行以外的其他行。
-q, --quiet, --silent 不打印文件名行。
-v, --verbose 總是打印文件名行。
-z, --zero-terminated 行終止符為NUL而不是換行符。
tail 是用來顯示文件末尾的命令
選項(xiàng):
-c, --bytes=NUM 輸出文件尾部的NUM(NUM為整數(shù))個(gè)字節(jié)內(nèi)容。
-f, --follow[={name|descript}] 顯示文件最新追加的內(nèi)容?!皀ame”表示以文件名的方式監(jiān)視文件的變化。
-F 與 “--follow=name --retry” 功能相同。
-n, --line=NUM 輸出文件的尾部NUM(NUM位數(shù)字)行內(nèi)容。
--pid=進(jìn)程號(hào) 與“-f”選項(xiàng)連用,當(dāng)指定的進(jìn)程號(hào)的進(jìn)程終止后,自動(dòng)退出tail命令。
-q, --quiet, --silent 當(dāng)有多個(gè)文件參數(shù)時(shí),不輸出各個(gè)文件名。
--retry 即是在tail命令啟動(dòng)時(shí),文件不可訪問或者文件稍后變得不可訪問,都始終嘗試打開文件。使用此選項(xiàng)時(shí)需要與選項(xiàng)“--follow=name”連用。
-s, --sleep-interal=秒數(shù) 與“-f”選項(xiàng)連用,指定監(jiān)視文件變化時(shí)間隔的秒數(shù)。
-v, --verbose 當(dāng)有多個(gè)文件參數(shù)時(shí),總是輸出各個(gè)文件名。
ln 是用來為文件創(chuàng)建鏈接的命令
[root@localhost ~]# ln [選項(xiàng)] 源文件 目標(biāo)文件
選項(xiàng):
-s: 建立軟鏈接文件。如果不加“-s”選項(xiàng),則建立硬鏈接文件
-f: 強(qiáng)制。如果目標(biāo)文件已經(jīng)存在,則刪除目標(biāo)文件后再建立鏈接文件
-d, -F, --directory 創(chuàng)建指向目錄的硬鏈接(只適用于超級(jí)用戶)
-f, --force 強(qiáng)行刪除任何已存在的目標(biāo)文件
-i, --interactive 覆蓋既有文件之前先詢問用戶
-L, --logical 取消引用作為軟鏈接的目標(biāo)
-n, --no-dereference 把軟鏈接的目的目錄視為一般文件
-P, --physical 直接將硬鏈接到軟鏈接
-r, --relative 創(chuàng)建相對(duì)于鏈接位置的軟鏈接
-s, --symbolic 對(duì)源文件建立軟鏈接
硬鏈接特征:
源文件和硬鏈接文件擁有相同的 Inode 和 Block
? 修改任意一個(gè)文件,另一個(gè)都改變
? 刪除任意一個(gè)文件,另一個(gè)都能使用
? 硬鏈接標(biāo)記不清,很難確認(rèn)硬鏈接文件位置,不建議使用
? 硬鏈接不能鏈接目錄
? 硬鏈接不能跨分區(qū)
軟鏈接特征:
? 軟鏈接和源文件擁有不同的 Inode 和 Block
? 兩個(gè)文件修改任意一個(gè),另一個(gè)都改變
? 刪除軟鏈接,源文件不受影響;刪除源文件,軟鏈接不能使用
? 軟鏈接沒有實(shí)際數(shù)據(jù),只保存源文件的 Inode,不論源文件多大,軟鏈接大小不變
? 軟鏈接的權(quán)限是最大權(quán)限 lrwxrwxrwx.,但是由于沒有實(shí)際數(shù)據(jù),最終訪問時(shí)需要參考源文
件權(quán)限
? 軟鏈接可以鏈接目錄
? 軟鏈接可以跨分區(qū)
? 軟鏈接特征明顯,建議使用軟連接
rm 是強(qiáng)大的刪除命令,不僅可以刪除文件,也可以刪除目錄
[root@localhost ~]# rm [選項(xiàng)] 文件或目錄
選項(xiàng):
d:直接把欲刪除的目錄的硬連接數(shù)據(jù)刪除成0,刪除該目錄;
-f:強(qiáng)制刪除文件或目錄;
-i:刪除已有文件或目錄之前先詢問用戶;
-r:遞歸處理,將指定目錄下的所有文件與子目錄一并處理;
--preserve-root:不對(duì)根目錄進(jìn)行遞歸操作;
-v:顯示指令的詳細(xì)執(zhí)行過程。
cp 是文件或目錄用于復(fù)制的命令
[root@localhost ~]# cp [選項(xiàng)] 源文件 目標(biāo)文件
選項(xiàng):
-a:此參數(shù)的效果和同時(shí)指定"-dpR"參數(shù)相同;
-d:當(dāng)復(fù)制軟鏈接時(shí),把目標(biāo)文件或目錄也建立為軟鏈接,并指向與源文件或目錄連接的原始文件或目錄;
-f:強(qiáng)行復(fù)制文件或目錄,不論目標(biāo)文件或目錄是否已存在;
-i:覆蓋既有文件之前先詢問用戶;
-l:對(duì)源文件建立硬連接,而非復(fù)制文件;
-p:保留源文件或目錄的屬性;
-r:遞歸處理,將指定目錄下的所有文件與子目錄一并處理;
-s:對(duì)源文件建立軟鏈接,而非復(fù)制文件;
-u:使用這項(xiàng)參數(shù)后只會(huì)在源文件的更改時(shí)間較目標(biāo)文件更新時(shí)或是名稱相互對(duì)應(yīng)的目標(biāo)文件并不存在時(shí),才復(fù)制文件;
-S:在備份文件時(shí),用指定的后綴“SUFFIX”代替文件的默認(rèn)后綴;
-b:覆蓋已存在的文件目標(biāo)前將目標(biāo)文件備份;
-v:詳細(xì)顯示命令執(zhí)行的操作。
mv 是用來對(duì)文件或目錄重新命名,或者將文件移動(dòng)至其他目錄
[root@localhost ~]# mv [選項(xiàng)] 源文件 目標(biāo)文件
選項(xiàng):
-b:當(dāng)文件存在時(shí),覆蓋前,為其創(chuàng)建一個(gè)備份;
-f:若目標(biāo)文件或目錄與現(xiàn)有的文件或目錄重復(fù),則直接覆蓋現(xiàn)有的文件或目錄;
-i:交互式操作,覆蓋前先行詢問用戶,如果源文件與目標(biāo)文件或目標(biāo)目錄中的文件同名,則詢問用戶是否覆蓋目標(biāo)文件。用戶輸入”y”,表示將覆蓋目標(biāo)文件;輸入”n”,表示取消對(duì)源文件的移動(dòng)。這樣可以避免誤將文件覆蓋。
--strip-trailing-slashes:刪除源文件中的斜杠“ / ”;
-S后綴:為備份文件指定后綴,而不使用默認(rèn)的后綴;
--target-directory=目錄:指定源文件要移動(dòng)到目標(biāo)目錄;
-u:當(dāng)源文件比目標(biāo)文件新或者目標(biāo)文件不存在時(shí),才執(zhí)行移動(dòng)操作。
[root@localhost ~]# ls -l install.log
-rw-r--r--. 1 root root 24772 1 月 14 18:17 install.log
第一列的權(quán)限位如果不計(jì)算最后的“.”,則共有 10 位。
第 2~4 位代表文件所有者的權(quán)限。
chmod 用來變更文件或目錄的權(quán)限
[root@localhost ~]# chmod [選項(xiàng)] 權(quán)限模式 文件名
選項(xiàng):
-c, --changes:當(dāng)文件的權(quán)限更改時(shí)輸出操作信息。
--no-preserve-root:不將'/'特殊化處理,默認(rèn)選項(xiàng)。
--preserve-root:不能在根目錄下遞歸操作。
-f, --silent, --quiet:抑制多數(shù)錯(cuò)誤消息的輸出。
-v, --verbose:無論文件是否更改了權(quán)限,一律輸出操作信息。
--reference=RFILE:使用參考文件或參考目錄RFILE的權(quán)限來設(shè)置目標(biāo)文件或目錄的權(quán)限。
-R, --recursive:對(duì)目錄以及目錄下的文件遞歸執(zhí)行更改權(quán)限操作。
用戶身份
首先,讀、寫、執(zhí)行權(quán)限對(duì)文件和目錄的作用是不同的。
目錄的可用權(quán)限其實(shí)只有以下幾個(gè)。
chown 是修改文件和目錄的所有者和所屬組的命令
[root@localhost ~]# chown [選項(xiàng)] 所有者:所屬組 文件或目錄
選項(xiàng):
-c或——changes:效果類似“-v”參數(shù),但僅回報(bào)更改的部分;
-f或--quite或——silent:不顯示錯(cuò)誤信息;
-h或--no-dereference:只對(duì)軟鏈接的文件作修改,而不更改其他任何相關(guān)文件;
-R或——recursive:遞歸處理,將指定目錄下的所有文件及子目錄一并處理;
-v或——version:顯示指令執(zhí)行過程;
--reference=參考文件或目錄:把指定文件或目錄的擁有者與所屬群組全部設(shè)成和參考文件或目錄的擁有者與所屬群組相同;
普通用戶不能修改文件的所有者,哪怕自己是這個(gè)文件的所有者也不行
普通用戶可以修改所有者是自己的文件的權(quán)限
chgrp 是修改文件和目錄的所屬組的命令
[root@phato ~]# chgrp [選項(xiàng)] 所屬組 文件或目錄
-R 遞歸式地改變指定目錄及其下的所有子目錄和文件的所屬的組
-c或——changes:效果類似“-v”參數(shù),但僅回報(bào)更改的部分;
-f或--quiet或——silent:不顯示錯(cuò)誤信息;
-h或--no-dereference:只對(duì)符號(hào)連接的文件作修改,而不是該其他任何相關(guān)文件;
-H如果命令行參數(shù)是一個(gè)通到目錄的軟鏈接,則遍歷軟鏈接
-R或——recursive:遞歸處理,將指令目錄下的所有文件及子目錄一并處理;
-L:遍歷每一個(gè)遇到的通到目錄的軟鏈接
-P:不遍歷任何符號(hào)鏈接(默認(rèn))
-v或——verbose:顯示指令執(zhí)行過程;
--reference=參考文件或目錄:把指定文件或目錄的所屬群組全部設(shè)成和參考文件或目錄的所屬群組相同;
umask 是顯示或設(shè)置創(chuàng)建文件的權(quán)限掩碼。我們需要先了解一下新建文件和目錄的默認(rèn)最大權(quán)限。
我們?cè)谶@里按照權(quán)限字母來講解 umask 權(quán)限的計(jì)算方法。我們就按照默認(rèn)的 umask 值是 022來分別計(jì)算一下新建文件和目錄的默認(rèn)權(quán)限吧。
分享文章:linux修改文命令,Linux 修改文檔
標(biāo)題鏈接:http://aaarwkj.com/article18/dsiiidp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、響應(yīng)式網(wǎng)站、定制網(wǎng)站、自適應(yīng)網(wǎng)站、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)