鍍金池/ 教程/ Linux/ UNIX 文件管理
UNIX 文件權(quán)限/訪問(wèn)模式
UNIX 系統(tǒng)性能
UNIX 管道和過(guò)濾器
UNIX 進(jìn)程管理
Shell 內(nèi)置數(shù)學(xué)函數(shù)
UNIX 環(huán)境
UNIX 文件管理
Unix
UNIX 網(wǎng)絡(luò)實(shí)用工具
UNIX 系統(tǒng)日志
UNIX 目錄管理
vi編輯器教程
Unix 基本工具(打印,電子郵件)
UNIX 用戶管理
UNIX 信號(hào)和陷阱
Unix 正則表達(dá)式SED
Unix 文件系統(tǒng)基礎(chǔ)
Unix是什么?
Unix 有用命令

UNIX 文件管理

UNIX中的所有數(shù)據(jù)被組織成文件。所有文件被組織成目錄。這些目錄被組織成一個(gè)樹形結(jié)構(gòu),稱為文件系統(tǒng)。

當(dāng)使用UNIX工作以這種或那種方式,大部分的時(shí)間花在工作的文件。本教程將教你如何創(chuàng)建和刪除文件,復(fù)制和重命名,創(chuàng)建鏈接到它們等。

在UNIX中,有三種基本類型的文件:

  1. 普通文件: 普通文件在系統(tǒng)上的文件包含數(shù)據(jù),文字,或程序指令。在本教程中,以操作普通的文件為例。

  2. 目錄: 目錄特別及普通文件存儲(chǔ)。對(duì)于用戶熟悉Windows或Mac OS,UNIX目錄相當(dāng)于文件夾。

  3. 特殊文件: 一些特殊的文件提供訪問(wèn)硬件,如硬盤,CD-ROM驅(qū)動(dòng)器,調(diào)制解調(diào)器和以太網(wǎng)適配器。其他特殊文件是類似的別名或快捷鍵,使您能夠訪問(wèn)一個(gè)單一的文件使用不同的名稱。

文件列表:

要列出存儲(chǔ)在當(dāng)前目錄中的文件和目錄。使用下面的命令:

$ls

下面是上述命令的示例輸出:

$ls

bin        hosts  lib     res.03
ch07       hw1    pub     test_results
ch07.bak   hw2    res.01  users
docs       hw3    res.02  work

ls命令支持,這將有助于獲得更多的信息有關(guān)所列出的文件使用-1選項(xiàng):

$ls -l
total 1962188

drwxrwxr-x  2 amrood amrood      4096 Dec 25 09:59 uml
-rw-rw-r--  1 amrood amrood      5341 Dec 25 08:38 uml.jpg
drwxr-xr-x  2 amrood amrood      4096 Feb 15  2006 univ
drwxr-xr-x  2 root   root        4096 Dec  9  2007 urlspedia
-rw-r--r--  1 root   root      276480 Dec  9  2007 urlspedia.tar
drwxr-xr-x  8 root   root        4096 Nov 25  2007 usr
drwxr-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.swf
drwxr-xr-x 11 amrood amrood      4096 May 29  2007 zlib-1.2.3
$

這里是所有列出的列信息:

  1. 第一列:表示授予該文件的文件類型和權(quán)限。下面是描述所有類型的文件。

  2. 第二列:代表所采取的內(nèi)存塊的文件或目錄的數(shù)量。

  3. 第三欄:表示文件所有者。是誰(shuí)創(chuàng)建了這個(gè)文件的Unix用戶。

  4. 第四列:代表組的所有者。每個(gè)Unix用戶將有關(guān)聯(lián)的組。

  5. 第五欄:表示文件大?。ㄒ宰止?jié)為單位)。

  6. 第六欄:表示當(dāng)這個(gè)文件被創(chuàng)建或修改的最后一次的日期和時(shí)間。

  7. 第七欄:表示文件名或目錄名。

在 ls -l清單的例子,每一個(gè)文件的行開始d, -,或l。這些字符表示的文件類型列出。 

Prefix 描述
- Regular file, such as an ASCII text file, binary executable, or hard link.
b Block special file. Block input/output device file such as a physical hard drive.
c Character special file. Raw input/output device file such as a physical hard drive
d Directory file that contains a listing of other files and directories.
l Symbolic link file. Links on any regular file.
p Named pipe. A mechanism for interprocess communications
s Socket used for interprocess communication.

元字符:

在Unix元字符有特殊的含義。例如*和?是元字符。我們使用*匹配0個(gè)或多個(gè)字符,問(wèn)號(hào)?匹配單個(gè)字符。

示例:

$ls ch*.doc

顯示所有文件,其名稱以ch開始和結(jié)束的。doc:

ch01-1.doc   ch010.doc  ch02.doc    ch03-2.doc 
ch04-1.doc   ch040.doc  ch05.doc    ch06-2.doc
ch01-2.doc ch02-1.doc c

*元字符匹配任何字符。如果想顯示所有文件只是文件結(jié)束,那么可以使用下面的命令:

$ls *.doc

隱藏文件:

一個(gè)無(wú)形的文件是一個(gè)點(diǎn)或者句號(hào)(.)的第一個(gè)字符是。 UNIX程序(包括shell)使用這些文件來(lái)存儲(chǔ)配置信息。

隱藏文件的一些常見(jiàn)的例子包括以下文件:

  • .profile: 是Bourne shell(sh)的初始化腳本

  • .kshrc: Korn shell程序(KSH)初始化腳本

  • .cshrc: C shell(csh)的初始化腳本

  • .rhosts: 遠(yuǎn)程shell配置文件

要列出隱形文件,指定給ls-a選項(xiàng):

$ 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
$
  • 單一點(diǎn) . :這表示當(dāng)前目錄。

  • 雙點(diǎn) ..:這表示父目錄。

注:我已經(jīng)把星號(hào)(*),只是為了顯示位置,需要輸入當(dāng)前密碼和新密碼,否則系統(tǒng),它不會(huì)告訴你,當(dāng)鍵入任何字符。

創(chuàng)建文件:

可以使用vi編輯器來(lái)創(chuàng)建任何類Unix系統(tǒng)上的普通文件。只需給下面的命令:

$ vi filename

上面的命令,將打開一個(gè)給定文件名的文件。會(huì)需要按鍵來(lái)進(jìn)入編輯模式。一旦在編輯模式下,就可以開始寫內(nèi)容在文件,如下:

This is unix file....I created it for the first time.....
I'm going to save this content in this file.

一旦完成,請(qǐng)執(zhí)行以下步驟:

  • 按Esc鍵出來(lái)的編輯模式。

  • 按兩個(gè)鍵Shift+ ZZ一起完全退出來(lái)的文件。

現(xiàn)在,就可以把filemame創(chuàng)建的文件在當(dāng)前目錄中。

$ vi filename
$

編輯文件:

使用vi編輯器,可以編輯現(xiàn)有的文件。我們將覆蓋在一個(gè)單獨(dú)的教程中詳細(xì)。但總之,可以打開現(xiàn)有的文件如下:

$ vi filename

一旦文件被打開,在編輯模式下,可以使用 i 按鍵,然后,可以編輯文件。如果想在這里和那里的文件內(nèi),那么首先需要走出來(lái)的編輯模式下按ESC鍵,那么可以使用下面的鍵,將里面的一個(gè)文件:

  • l 鍵移動(dòng)到右側(cè)。

  • h 鍵移動(dòng)到左側(cè)。

  • k 鍵向上移動(dòng)在文件中。

  • j 鍵向下移動(dòng)一邊在文件中。

因此,使用上面的鍵就可以將光標(biāo)定位在任何想要的編輯。然后在編輯模式下,可以使用i鍵。編輯該文件,一旦完成后,按ESC和最后兩個(gè)鍵Shift+ ZZ一起退出的文件。

顯示文件的內(nèi)容:

可以使用cat命令來(lái)查看一個(gè)文件的??內(nèi)容。下面是一個(gè)簡(jiǎn)單的例子,看看上面創(chuàng)建的文件的內(nèi)容:

$ cat filename
This is unix file....I created it for the first time.....
I上一篇:Unix 基本工具(打印,電子郵件)下一篇:Shell 內(nèi)置數(shù)學(xué)函數(shù)