1. 程式人生 > >Linux基礎之(一)檔案的建立

Linux基礎之(一)檔案的建立

在GUI的桌面環境中,建立檔案是很簡單的,例如Windows平臺中,大多數情況下只需要點選右鍵,就可以新建文字文件等各類檔案。在終端中建立檔案,大體有這麼三種方式,使用touch命令進行建立,使用文字編輯器進行建立,使用重定向符號進行建立,接下來就演示如何使用這三種方式進行檔案的建立。

1、使用touch命令進行檔案建立

touch命令最初的作用是對檔案的“訪問時間”或“修改時間”進行修改,當touch命令指定的檔案並不存在時,touch命令會新建一個指定名稱的檔案。命令使用方法如下:

對於不存在的檔案,touch命令將建立該檔案

#使用touch命令建立檔案
[email protected]
:~$ touch tedu.txt #可見檔案建立成功 [email protected]:~$ ls -l total 0 -rw-rw-rw- 1 os os 0 Sep 26 11:32 tedu.txt #注意該檔案的修改時間為11:32分

對於已經存在的檔案,touch命令將修改該檔案的訪問時間

[email protected]:~$ touch tedu.txt
[email protected]:~$ ls -l
total 0
#注意,時間已經更改為15:00分
-rw-rw-rw- 1 os os 0 Sep 26 15:00 tedu.txt

2、使用文字編輯器進行檔案建立

Linux發行版中,終端環境下大多帶有一個或多個文字編輯器,比如vi、vim、nano等文字編輯器,GUI的桌面環境中也會帶有一些文字編輯器,比如Ubuntu的Gedit等編輯器 大多數檔案其實都是文字文件,所以使用文字編輯器進行檔案建立,是一種比較常用的檔案建立方式,需要認真掌握。此處以nano編輯器進行演示如何使用nano進行檔案的建立。

使用nano編輯器建立檔案

#執行nano命令,並在該命令後接想要建立的檔名稱
#之後會進入nano編輯器的環境,進行文字編寫
[email protected]:~$ nano tedu_nano.txt
  GNU nano 2.5.3          File: tedu_nano.txt                          
  使用nano文字編輯器建立檔案


^G Get Help   ^O Write Out  ^W Where Is   ^K Cut Text   ^J Justify
^X Exit       ^R Read File  ^\ Replace    ^U Uncut Text ^T To Spell
#修改檔案內容之後使用快捷鍵ctrl+x退出編輯器
#此時會提示檔案是否儲存,輸入Y表示儲存,輸入N表示不儲存,此處輸入Y後回車
  GNU nano 2.5.3          File: tedu_nano.txt                Modified

使用nano文字編輯器建立的檔案


Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?            
 Y Yes
 N No           ^C Cancel

#之後會詢問檔名,由於開啟nano編輯器時已經指定檔名,所以此處直接回車就完成了檔案的船建立
  GNU nano 2.5.3          File: tedu_nano.txt                Modified
使用nano文字編輯器建立的檔案


File Name to Write: tedu_nano.txt
^G Get Help   M-D DOS FormatM-A Append    M-B Backup File
^C Cancel     M-M Mac FormatM-P Prepend   ^T To Files
#使用ls命令檢視當前資料夾下的內容,可以看到tedu_nano檔案已經建立成功
[email protected]
:~$ ls tedu_nano.txt tedu.txt

使用vi/vim文字編輯器建立檔案

#執行vi命令,並在該命令後接想要建立的檔名稱
#如果原來存在該檔案則直接開啟,如果不存在將會建立給檔案並開啟
#之後會進入vi編輯器的環境,進行文字編寫
[email protected]:/wys$ vi a.txt

                         
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
~                                                                      
"a.txt" [New File]
#i 切換到輸入模式,以輸入字元。
#x 刪除當前游標所在處的字元。
#: 切換到底線命令模式,以在最底一行輸入命令。
#進入a.txt檔案後,按 a 或 i 進入編輯模式
#編輯完檔案後按 Esc 退出編輯模式
#:q! 不儲存並退出    :wq 儲存並退出
#使用ls命令檢視當前資料夾下的內容,可以看到tedu_nano檔案已經建立成功
[email protected]:/wys$ ls
a.txt  dome  wys

在底線模式下輸入 all:列出所有選項設定情況 term:設定終端型別 list:顯示製表位(Ctrl+I)和行尾標誌($) number:顯示行號

3、使用重定向的方式進行檔案建立

重定向是終端中經常會用到的一種日誌儲存方法,通常終端中的命令執行時,會即時的將執行結果輸出到終端中,實現使用者與終端的實時互動。但是許多時候,命令輸出的資訊很多、很長,終端中並不能完整顯示,或者希望在關閉終端後依然能夠檢視該程式輸出的資訊,此時就可以使用重定向的方式,將輸出的資訊重定向到其他檔案中進行儲存。

#使用>重定向方法建立檔案
[email protected]:~$ > tedu_1.txt
[email protected]:~$ ls
tedu_1.txt  tedu_nano.txt  tedu.txt
#使用>>重定向方法建立檔案
[email protected]:~$ ls
tedu_1.txt  tedu_2.txt  tedu_nano.txt  tedu.txt

以上只是單獨使用重定向符號進行檔案的建立,更多的時候重定向符號是將命令執行的結果進行轉儲使用。

#使用ls命令輸出當前資料夾下的檔案及目錄名稱
#同時將結果重定向到tedu_3.txt檔案中
#注意,此時命令執行後並不會在終端中輸出任何資訊
[email protected]:~$ ls > tedu_3.txt
#執行ls命令,可見當前資料夾下已經建立了tedu_3.txt檔案
[email protected]:~$ ls
tedu_1.txt  tedu_2.txt  tedu_3.txt  tedu_nano.txt  tedu.txt
#使用nano編輯器開啟tedu_3.txt檔案,可以看到,輸出內容為本來應該由終端顯示的資訊
[email protected]:~$ nano tedu_3.txt
  GNU nano 2.5.3           File: tedu_3.txt                            
tedu_1.txt
tedu_2.txt
tedu_3.txt
tedu_nano.txt
tedu.txt

                           [ Read 5 lines ]
^G Get Help   ^O Write Out  ^W Where Is   ^K Cut Text   ^J Justify
^X Exit       ^R Read File  ^\ Replace    ^U Uncut Text ^T To Spell
  • “>”操作符:當目標檔案已存在時,“>”輸出的內容將覆蓋原始檔中已有的內容;
  • “>>”操作符:當目標檔案已存在時,“>>”會將新內容追加到原始檔內容的後面。

通常Linux系統中檔名中並沒有特殊要求,除NULL(“\0”)和“/”之外,所有字元都可以。但是由於Linux終端中有很多指令操作符,所以在建立新檔案時,檔名最好能夠避免一些特殊字元,如“. ? > < ; & ! [ ] { } | \ ’ `”等,這些符號在終端中都有著特殊的意義,比如“.”開標頭檔案為隱藏檔案,“|”符號為管道符。