歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> SHELL編程 >> 在shell提示下操作文件

在shell提示下操作文件

日期:2017/2/27 14:19:29   编辑:SHELL編程

你可以使用 Nautilus Konqueror 之類的圖形化文件管理器來操作文件。你還可以使用 shell 提示來操作它們,這種方法通常較快。下面的章節解釋了在 shell 提示下操作文件的方法。

14.4.1. 創建文件

你可以通過應用程序(如文本編輯器)或使用 toUCh 命令來創建新文件。這兩種方法都會創建一個空白的文件,你可以在其中添加文本或數據。要使用 touch 命令來創建文件,在 shell 提示下鍵入以下命令:

touch <文件名>

把 <文件名> 替換成你選定的名稱。如果你列舉一下目錄內容,你會看到該文件的大小為零,這是因為它是一個空文件。譬如,在 shell 提示下鍵入命令 ls -l newfile 會返回以下輸出:

-rw-rw-r-- 1 test test 0 3月 11 17:09 newfile 14.4.2. 復制文件

和許多 Linux 的功能一樣,操作文件和目錄的方法也有很多種。你還可以使用通配符(在第 13.11.5 節 中有說明)來更快地復制、移動、或刪除多個文件。

要復制文件,鍵入以下命令:

cp <源> <目標>

把 <源> 替換成你想復制的文件,把 <目標> 替換成你想保存復制文件的目錄名。

因此,要把文件 sneakers.txt 復制到你的主目錄中的 tigger/ 目錄下,轉換到你的主目錄,然後鍵入:

cp sneakers.txt tigger/

cp 命令可以使用絕對或相對路徑。我們的主目錄是 tigger 的父目錄; tigger 是主目錄之下的一個目錄。

竅門:要進一步學習相對路徑名和絕對路徑名,請參考 第 13.4 節 。

閱讀 cp 的說明書頁(在 shell 提示下鍵入 man cp )可獲得 cp 的完整選項列表。其中包括的選項有:

-i — 互動。如果文件將會覆蓋你的目標中的文件,它會提示你確認。這個選項很實用,因為它可以幫助你避免犯錯。

-r — 遞歸。與其一個一個地復制所有指定的文件和目錄,這個選項會復制整個目錄樹、子目錄及其它。

-v — 詳細。向你顯示文件的復制進度。

現在,你在 tigger 目錄中已擁有了 sneakers.txt ,再使用一次 cp -i 來把文件復制到同一位置。

cp -i sneakers.txt tigger cp: 是否覆蓋‘tigger/sneakers.txt'?

要覆蓋原來的文件,按 [Y] ,然後按 [Enter] 鍵。如果你不想覆蓋原來文件, 按 [N] ,然後按 [Enter] 鍵。

14.4.3. 移動文件

要移動文件,使用 mv 命令。關於 mv 的詳情,請參閱 mv 的說明書頁(鍵入 man mv )。

mv 的常見選項包括:

-i — 互動。如果你選擇的文件會覆蓋目標中的現存文件,它會提示你。這是一個實用的選項,因為它象 cp 中的 -i 選項一樣,會給你一個確認替換已存文件的機會。

-f — 強制。它會超越互動模式,不提示地移動文件。除非你知道自己在干什麼,這個選項很危險。在你對系統信心十足之前,請謹慎使用這個選項。




-v — 詳細。顯示文件的移動進度。

如果你想把文件從你的主目錄中移到另一個現存的目錄中,鍵入以下命令(你需要位於你的主目錄內):

mv sneakers.txt tigger

另外的方法是,用同一個命令,但使用絕對路徑,如:

mv sneakers.txt /home/newuser/sneakers.txt /home/newuser/tigger 14.4.4. 刪除文件和目錄

前面你已經學習了使用 touch 命令來創建文件,以及使用 mkdir 命令來創建目錄 tigger 。

現在,你需要學習如何刪除文件和目錄。 使用 rm 命令來刪除文件和目錄是一個直截了當的過程。詳情請參閱 rm 的說明書頁。刪除文件和目錄的選項包括:

-i — 互動。提示你確認刪除。這個選項可以幫助你避免誤刪文件。

-f — 強制。代替互動模式,不提示地刪除文件。除非你知道自己在干什麼,使用這個選項通常不是明智之舉。

-v — 詳細。顯示文件的刪除進度。

-r — 遞歸。將會刪除某個目錄及其中所有的文件和子目錄。

要使用 rm 命令來刪除文件 piglet.txt ,鍵入:

rm piglet.txt

警告:一旦文件或目錄使用 rm 命令刪除後,它就一去不復返了。

使用 -i (互動)選項會再給你一次機會來決定你是否真的想刪除該文件。

rm -i piglet.txt rm: 是否刪除一般文件‘piglet.txt'?

你還可以使用通配符“ * ”來刪除文件,不過,你必須謹慎而為,因為它很容易刪除你並不想刪除的文件。

要使用通配符來刪除文件,可以鍵入:

rm pig*

上面的命令會刪除目錄中所有起首為 pig 字母的文件。

你還可以使用 rm 命令來刪除多個文件。 例如:

rm piglet.txt sneakers.txt

你可以使用 rmdir 來刪除目錄( 如: rmdir foo ),但是目錄必須是空目錄。要使用 rm 來刪除目錄,你必須指定 -r 選項。

譬如,如果你想遞歸地刪除目錄 tigger ,你可以鍵入:

rm -r tigger

如果你想組合選項,例如強制一種遞歸的刪除,你可以鍵入:

rm -rf tigger

另一個比使用 rm 更安全的刪除目錄的命令是 rmdir 命令。這個命令不允許你使用遞歸刪除,因此不能刪除包含文件的目錄。

警告:rm 命令可以刪除你的整個文件系統!如果你登錄為根用戶,然後鍵入這個簡單命令: rm -rf / ,你的麻煩就大了;這個命令會遞歸地刪除你的系統上的一切。



閱讀 rmdir 的說明書頁( man rmdir )來獲取關於這個命令的詳細信息。





Copyright © Linux教程網 All Rights Reserved