国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發(fā)設計 > 正文

Linux文件管理

2019-11-14 11:54:08
字體:
來源:轉載
供稿:網友
linux中的所有數據都被保存在文件中,所有的文件被分配到不同的目錄。目錄是一種類似于樹的結構,稱為文件系統(tǒng)。當你使用Linux時,大部分時間都會和文件打交道,通過本節(jié)可以了解基本的文件操作,如創(chuàng)建文件、刪除文件、復制文件、重命名文件以及為文件創(chuàng)建鏈接等。在Linux中,有三種基本的文件類型:

1) 普通文件

普通文件是以字節(jié)為單位的數據流,包括文本文件、源碼文件、可執(zhí)行文件等。文本和二進制對Linux來說并無區(qū)別,對普通文件的解釋由處理該文件的應用程序進行。

2) 目錄

目錄可以包含普通文件和特殊文件,目錄相當于Windows和Mac OS中的文件夾。

3) 設備文件

有些教程中稱特殊文件,是一個含義。Linux 與外部設備(例如光驅,打印機,終端,modern等)是通過一種被稱為設備文件的文件來進行通信。Linux 輸入輸出到外部設備的方式和輸入輸出到一個文件的方式是相同的。Linux 和一個外部設備通訊之前,這個設備必須首先要有一個設備文件存在。例如,每一個終端都有自己的設備文件來供 Linux 寫數據(出現在終端屏幕上)和讀取數據(用戶通過鍵盤輸入)。設備文件和普通文件不一樣,設備文件中并不包含任何數據。設備文件有兩種類型:字符設備文件和塊設備文件。字符設備文件以字母"c"開頭。字符設備文件向設備傳送數據時,一次傳送一個字符。典型的通過字符傳送數據的設備有終端、打印機、繪圖儀、modern等。字符設備文件有時也被稱為"raw"設備文件。塊設備文件以字母"b"開頭。塊設備文件向設備傳送數據時,先從內存中的buffer中讀或寫數據,而不是直接傳送數據到物理磁盤。磁盤和CD-ROMS既可以使用字符設備文件也可以使用塊設備文件。

查看文件

查看當前目錄下的文件和目錄可以使用 ls 命令,例如:
$lsbin        hosts  lib     res.03ch07       hw1    pub     test_resultsch07.bak   hw2    res.01  usersdocs       hw3    res.02  work通過 ls 命令的 -l 選項,你可以獲取更多文件信息,例如:
$ls -ltotal 1962188drwxrwxr-x  2 amrood amrood      4096 Dec 25 09:59 uml-rw-rw-r--  1 amrood amrood      5341 Dec 25 08:38 uml.jpgdrwxr-xr-x  2 amrood amrood      4096 Feb 15  2006 univdrwxr-xr-x  2 root   root        4096 Dec  9  2007 urlspedia-rw-r--r--  1 root   root      276480 Dec  9  2007 urlspedia.tardrwxr-xr-x  8 root   root        4096 Nov 25  2007 usrdrwxr-xr-x  2    200    300      4096 Nov 25  2007 webthumb-1.01-rwxr-xr-x  1 root   root        3192 Nov 25  2007 webthumb.php-rw-rw-r--  1 amrood amrood     20480 Nov 25  2007 webthumb.tar-rw-rw-r--  1 amrood amrood      5654 Aug  9  2007 yourfile.mid-rw-rw-r--  1 amrood amrood    166255 Aug  9  2007 yourfile.swfdrwxr-xr-x 11 amrood amrood      4096 May 29  2007 zlib-1.2.3$每一列的含義如下:第一列:文件類型。第二列:表示文件個數。如果是文件,那么就是1;如果是目錄,那么就是該目錄中文件的數目。第三列:文件的所有者,即文件的創(chuàng)建者。第四列:文件所有者所在的用戶組。在Linux中,每個用戶都隸屬于一個用戶組。第五列:文件大小(以字節(jié)計)。第六列:文件被創(chuàng)建或上次被修改的時間。第七列:文件名或目錄名。注意:每一個目錄都有一個指向它本身的子目錄"." 和指向它上級目錄的子目錄"..",所以對于一個空目錄,第二列應該為 2。通過 ls -l 列出的文件,每一行都是以 a、d、- 或 l 開頭,這些字符表示文件類型:
前綴描述
-普通文件。如文本文件、二進制可執(zhí)行文件、源代碼等。
b塊設備文件。硬盤可以使用塊設備文件。
c字符設備文件。硬盤也可以使用字符設備文件。
d目錄文件。目錄可以包含文件和其他目錄。
l符號鏈接(軟鏈接)。可以鏈接任何普通文件,類似于 Windows 中的快捷方式。
p具名管道。管道是進程間的一種通信機制。
s用于進程間通信的套接字。
提示:通俗的講軟連接就是windows的快捷方式,原來文件刪了,快捷方式雖然在但是不起作用了。

元字符

元字符是具有特殊含義的字符。* 和 ? 都是元字符:* 可以匹配 0 個或多個任意字符;? 匹配一個字符。例如
$ls ch*.doc可以顯示所有以 ch 開頭,以 .doc 結尾的文件:
ch01-1.doc   ch010.doc  ch02.doc    ch03-2.docch04-1.doc   ch040.doc  ch05.doc    ch06-2.docch01-2.doc ch02-1.doc c這里,* 匹配任意一個字符。如果你希望顯示所有以 .doc 結尾的文件,可以使用
$ls *.doc。

隱藏文件

隱藏文件的第一個字符為英文句號或點號(.),Linux程序(包括Shell)通常使用隱藏文件來保存配置信息。下面是一些常見的隱藏文件:.PRofile:Bourne shell (sh) 初始化腳本.kshrc:Korn shell (ksh) 初始化腳本.cshrc:C shell (csh) 初始化腳本.rhosts:Remote shell (rsh) 配置文件查看隱藏文件需要使用 ls 命令的 -a 選項:
$ ls -a.         .profile       docs     lib     test_results..        .rhosts        hosts    pub     users.emacs    bin            hw1      res.01  work.exrc     ch07           hw2      res.02.kshrc    ch07.bak       hw3      res.03$一個點號(.)表示當前目錄,兩個點號(..)表示上級目錄注意:輸入密碼時,星號(*)作為占位符,代表你輸入的字符個數。

創(chuàng)建文件

在Linux中,可以使用 vi 編輯器創(chuàng)建一個文本文件,例如:
$ vi filename上面的命令會創(chuàng)建文件 filename 并打開,按下 i 鍵即可進入編輯模式,你可以向文件中寫入內容。例如:
This is Linux file....I created it for the first time.....I'm going to save this content in this file.完成編輯后,可以按 esc 鍵退出編輯模式,也可以按組合鍵 Shift + ZZ 完全退出文件。這樣,就完成了文件的創(chuàng)建。
$ vi filename$

編輯文件

vi 編輯器可以用來編輯文件。由于篇幅限制,這里僅作簡單介紹,將在后面章節(jié)進行詳細講解。如下可以打開一個名為 filename 的文件:
$ vi filename當文件被打開后,可以按 i 鍵進入編輯模式,按照自己的方式編輯文件。如果想移動光標,必須先按 esc 鍵退出編輯模式,然后使用下面的按鍵在文件內移動光標:l 鍵向右移動h 鍵向左移動k 鍵向上移動j 鍵向下移動使用上面的按鍵,可以將光標快速定位到你想編輯的地方。定位好光標后,按 i 鍵再次進入編輯模式。編輯完成后按 esc 鍵退出編輯模式或者按組合鍵 Shift+ZZ 退出當前文件。

查看文件內容

可以使用 cat 命令來查看文件內容,下面是一個簡單的例子:
$ cat filenameThis is Linux file....I created it for the first time.....I'm going to save this content in this file.$可以通過 cat 命令的 -b 選項來顯示行號,例如:
$ cat -b filename1   This is Linux file....I created it for the first time.....2   I'm going to save this content in this file.$

統(tǒng)計單詞數目

可以使用 wc 命令來統(tǒng)計當前文件的行數、單詞數和字符數,下面是一個簡單的例子:
$ wc filename2  19 103 filename$每一列的含義如下:第一列:文件的總行數第二列:單詞數目第三列:文件的字節(jié)數,即文件的大小第四列:文件名也可以一次查看多個文件的內容,例如:
$ wc filename1 filename2 filename3

復制文件

可以使用 cp 命令來復制文件。cp 命令的基本語法如下:
$ cp source_file destination_file下面的例子將會復制 filename 文件:
$ cp filename copyfile$現在在當前目錄中會多出一個和 filename 一模一樣的 copyfile 文件。

重命名文件

重命名文件可以使用 mv 命令,語法為:
$ mv old_file new_file下面的例子將會把 filename 文件重命名為 newfile:
$ mv filename newfile$現在在當前目錄下,只有一個 newfile 文件。mv 命令其實是一個移動文件的命令,不但可以更改文件的路徑,也可以更改文件名。

刪除文件

rm命令可以刪除文件,語法為:
$ rm filename注意:刪除文件是一種危險的行為,因為文件內可能包含有用信息,建議結合 -i 選項來使用 rm 命令。下面的例子會徹底刪除一個文件:
$ rm filename$你也可以一次刪除多個文件:
$ rm filename1 filename2 filename3$

標準的Linux流

一般情況下,每個Linux程序運行時都會創(chuàng)建三個文件流(三個文件):標準輸入流(stdin):stdin的文件描述符為0,Linux程序默認從stdin讀取數據。標準輸出流(stdout):stdout 的文件描述符為1,Linux程序默認向stdout輸出數據。標準錯誤流(stderr):stderr的文件描述符為2,Linux程序會向stderr流中寫入錯誤信息。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 平利县| 左权县| 永和县| 滨海县| 东安县| 平阳县| 弋阳县| 孝感市| 鄯善县| 库车县| 西丰县| 保德县| 恩施市| 青川县| 那曲县| 加查县| 平舆县| 连江县| 内丘县| 阿克陶县| 张北县| 方城县| 彰化县| 遂宁市| 叶城县| 岢岚县| 胶南市| 漳浦县| 横山县| 大港区| 绥滨县| 长顺县| 斗六市| 新宁县| 宁明县| 休宁县| 乌审旗| 周口市| 随州市| 兰考县| 德钦县|