Linux命令-文件管理(二)git
Linux gitview命令shell
Linux gitview命令用於觀看文件的內容,它會同時顯示十六進制和ASCII格式的字碼。數據庫
語法:gitview [-bchilv][文件]vim
使用指令gitview以彩色模式觀看文件"/home/ rootlocal/demo.txt"中的內容,輸入以下命令:less
$ gitview -c /home/rootlocal/demo.txt #使用gitview指令觀看指定文件內容工具
-------------------------------------------------------------------------------------操作系統
Linux indent命令命令行
Linux indent命令用於調整C原始代碼文件的格式。設計
indent可辨識C的原始代碼文件,並加以格式化,以方便程序設計師閱讀。日誌
語法
indent [參數][源文件] 或 indent [參數][源文件][-o 目標文件]
-------------------------------------------------------------------------------------
Linux cut命令
Linux cut命令用於顯示每行從開頭算起 num1 到 num2 的文字。
語法
cut [-bn] [file]
cut [-c] [file]
cut [-df] [file]
使用說明:
cut 命令從文件的每一行剪切字節、字符和字段並將這些字節、字符和字段寫至標準輸出。
若是不指定 File 參數,cut 命令將讀取標準輸入。必須指定 -b、-c 或 -f 標誌之一。
參數:
-b :以字節爲單位進行分割。這些字節位置將忽略多字節字符邊界,除非也指定了 -n 標誌。
-c :以字符爲單位進行分割。
-d :自定義分隔符,默認爲製表符。
-f :與-d一塊兒使用,指定顯示哪一個區域。
-n :取消分割多字節字符。僅和 -b 標誌一塊兒使用。若是字符的最後一個字節落在由 -b 標誌的 List 參數指示的
範圍以內,該字符將被寫出;不然,該字符將被排除
當你執行who命令時,會輸出相似以下的內容:
$ who
rocrocket :0 2009-01-08 11:07
rocrocket pts/0 2009-01-08 11:23 (:0.0)
rocrocket pts/1 2009-01-08 14:15 (:0.0)
若是咱們想提取每一行的第3個字節,就這樣:
$ who|cut -b 3
c
c
-------------------------------------------------------------------------------------
Linux ln命令
Linux ln命令是一個很是重要命令,它的功能是爲某一個文件在另一個位置創建一個同步的連接。
當咱們須要在不一樣的目錄,用到相同的文件時,咱們不須要在每個須要的目錄下都放一個必須相同的文件,咱們只要在某個固定的目錄,放上該文件,而後在 其它的目錄下用ln命令連接(link)它就能夠,沒必要重複的佔用磁盤空間。
語法
ln [參數][源文件或目錄][目標文件或目錄]
命令功能 :
Linux文件系統中,有所謂的連接(link),咱們能夠將其視爲檔案的別名,而連接又可分爲兩種 : 硬連接(hard link)與軟連接(symbolic link),硬連接的意思是一個檔案能夠有多個名稱,而軟連接的方式則是產生一個特殊的檔案,該檔案的內容是指向另外一個檔案的位置。硬連接是存在同一個文件系統中,而軟連接卻能夠跨越不一樣的文件系統。
不管是硬連接或軟連接都不會將本來的檔案複製一份,只會佔用很是少許的磁碟空間。
軟連接:
1.軟連接,以路徑的形式存在。相似於Windows操做系統中的快捷方式
2.軟連接能夠 跨文件系統 ,硬連接不能夠
3.軟連接能夠對一個不存在的文件名進行連接
4.軟連接能夠對目錄進行連接
硬連接:
1.硬連接,以文件副本的形式存在。但不佔用實際空間。
2.不容許給目錄建立硬連接
3.硬連接只有在同一個文件系統中才能建立
給文件建立軟連接,爲log2013.log文件建立軟連接link2013,若是log2013.log丟失,link2013將失效:
ln -s log2013.log link2013
輸出:
[root@localhost test]# ll
-rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log
[root@localhost test]# ln -s log2013.log link2013
[root@localhost test]# ll
lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log
給文件建立硬連接,爲log2013.log建立硬連接ln2013,log2013.log與ln2013的各項屬性相同
ln log2013.log ln2013
輸出:
[root@localhost test]# ll
lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 1 root bin 61 11-13 06:03 log2013.log
[root@localhost test]# ln log2013.log ln2013
[root@localhost test]# ll
lrwxrwxrwx 1 root root 11 12-07 16:01 link2013 -> log2013.log
-rw-r--r-- 2 root bin 61 11-13 06:03 ln2013
-rw-r--r-- 2 root bin 61 11-13 06:03 log2013.log
-----------------------------------------------------------------------------------
Linux less命令
less 與 more 相似,但使用 less 能夠隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,並且 less 在查看以前不會加載整個文件。
語法
less [參數] 文件
查看文件
less log2013.log
瀏覽多個文件
less log2013.log log2014.log
說明:
輸入 :n後,切換到 log2014.log
輸入 :p 後,切換到log2013.log
-------------------------------------------------------------------------------------
Linux locate命令
Linux locate命令用於查找符合條件的文檔,他會去保存文檔和目錄名稱的數據庫內,查找合乎範本樣式條件的文檔或目錄。
通常狀況咱們只須要輸入 locate your_file_name 便可查找指定文件。
語法
locate [-d ][--help][--version][範本樣式...]
參數:
-d或--database= 配置locate指令使用的數據庫。locate指令預設的數據庫位於/var/lib/slocate目錄裏,文檔名爲slocate.db,您可以使用 這個參數另行指定。
--help 在線幫助。
--version 顯示版本信息。
實例
查找passwd文件,輸入如下命令:
locate passwd
附加說明
locate與find 不一樣: find 是去硬盤找,locate 只在/var/lib/slocate資料庫中找。
locate的速度比find快,它並非真的查找,而是查數據庫,通常文件數據庫在/var/lib/slocate/slocate.db中,因此locate的查找並非實時的,而是以數據庫的更新爲準,通常是系統本身維護,也能夠手工升級數據庫 ,命令爲:
locate -u
-------------------------------------------------------------------------------------
Linux lsattr命令
Linux lsattr命令用於顯示文件屬性。
用chattr執行改變文件或目錄的屬性,可執行lsattr指令查詢其屬性。
語法: lsattr [-adlRvV][文件或目錄...]
用chattr命令防止系統中某個關鍵文件被修改:
# chattr +i /etc/resolv.conf
而後用mv /etc/resolv.conf等命令操做於該文件,都是獲得Operation not permitted 的結果。
vim編輯該文件時會提示W10: Warning: Changing a readonly file錯誤。要想修改此文件就要把i屬性去掉:
chattr -i /etc/resolv.conf
使用 lsattr 命令來顯示文件屬性:
# lsattr /etc/resolv.conf
輸出結果爲:
----i-------- /etc/resolv.conf
二、讓某個文件只能往裏面追加數據,但不能刪除,適用於各類日誌文件:
# chattr +a /var/log/messages
-------------------------------------------------------------------------------------
Linux mattrib命令
Linux mattrib命令用來變動或顯示MS-DOS文件的屬性。
mattrib爲mtools工具指令,模擬MS-DOS的attrib指令,可變動MS-DOS文件的屬性。
語法
mattrib [-a|+a] [-h|+h] [-r|+r] [-s|+s] [-/] [-X] msdosfile [ msdosfiles ... ]
列出 A 槽 MSDOS 格式磁片上全部文件的屬性。
mattrib a:
除去 A 槽磁片上 msdos.sys 檔案的隱藏、系統與惟讀屬性。
mattrib -h -s -r a:msdos.sys
除去 A 槽磁片上包含子目錄下全部檔案的惟讀屬性。
mattrib -r -/ a:*.*
-------------------------------------------------------------------------------------
Linux mc命令
Linux mc命令用於提供一個菜單式的文件管理程序。
執行mc以後,將會看到菜單式的文件管理程序,共分紅4個部分。
語法
mc [-abcdfhkPstuUVx][-C <參數>][-l <文件>][-v <文件>][目錄]
-------------------------------------------------------------------------------------
Linux mdel命令
Linux mdel命令用來刪除 MSDOS 格式的檔案。
在刪除只讀以前會有提示信息產生。
將 A 槽磁片根目錄中的 autoexec.bat 刪除。
mdel a:autoexec.bat .
-------------------------------------------------------------------------------------
Linux mdir命令
Linux mdir命令用於顯示MS-DOS目錄。
mdir爲mtools工具指令,模擬MS-DOS的dir指令,可顯示MS-DOS文件系統中的目錄內容。
語法
mdir [-afwx/][目錄]
顯示a盤中的內容
$ mdir -/ a:\*
以上命令執行後,mdir將顯示指定盤"a:\"中的全部子目錄及其中的文件信息,以下所示:
Volume in drive A has no label #加載信息
Volume Serial Number is 13D2~055C
Directory for A:\ #如下爲目錄信息
./TEST <DIR> 2011-08-23 16:59
#顯示格式爲文件名,目錄大小,修改時間
AUTORUN.INF 265 2011-08-23 16:53
AUTORUN.BAT 43 2011-08-23 16:56
3 files 308 bytes #統計總大小
724 325 bytes free #剩餘空間
-------------------------------------------------------------------------------------
Linux mktemp命令
Linux mktemp命令用於創建暫存文件。
mktemp創建的一個暫存文件,供shell script使用。
語法 :mktemp [-qu][文件名參數]
參數:
-q 執行時若發生錯誤,不會顯示任何信息。
-u 暫存文件會在mktemp結束前先行刪除。
[文件名參數] 文件名參數必須是以"自訂名稱.XXXXXX"的格式。
使用mktemp 命令生成臨時文件時,文件名參數應當以"文件名.XXXX"的形式給出,mktemp 會根據文件名參數創建一個臨時文件。在命令行提示符輸入以下命令:
mktemp tmp.xxxx #生成臨時文件
使用該命令後,可以使用dir 或ls看當前目錄,獲得以下結果:
cmd@cmd-desktop:~$ mktemp tmp.xxxx #生成臨時文件 cmd@cmd-desktop:~$dir #查看當前目錄 file test testfile testfile1 tmp.3847 #生成了tmp.3847因而可知,生成的臨時文件爲tmp.3847,其中,文件名參數中的"XXXX"被4 個隨機產生的字符所取代。