Linux循序漸進(09)(轉)
Linux循序漸進(09)(轉)[@more@] 第十課(六) 檔案的複製、刪除和移動命令 cp命令 該命令的功能是將給出的檔案或目錄複製到另一檔案或目錄中,就如同DOS下的copy命令一樣,功能非常強大。 語法: cp [選項] 原始檔或目錄 目標檔案或目錄 說明:該命令把指定的原始檔複製到目標檔案或把多個原始檔複製到目標目錄中。 該命令的各選項含義如下: - a 該選項通常在複製目錄時使用。它保留連結、檔案屬性,並遞迴地複製目錄,其作用等於dpR選項的組合。 - d 複製時保留連結。 - f 刪除已經存在的目標檔案而不提示。 - i 和f選項相反,在覆蓋目標檔案之前將給出提示要求使用者確認。回答y時目標檔案將被覆蓋,是互動式複製。 - p 此時cp除複製原始檔的內容外,還將把其修改時間和訪問許可權也複製到新檔案中。 - r 若給出的原始檔是一目錄檔案,此時cp將遞迴複製該目錄下所有的子目錄和檔案。此時目標檔案必須為一個目錄名。 - l 不作複製,只是連結檔案。 需要說明的是,為防止使用者在不經意的情況下用cp命令破壞另一個檔案,如使用者指定的目標檔名是一個已存在的檔名,用cp命令複製檔案後,這個檔案就會被新複製的原始檔覆蓋,因此,建議使用者在使用cp命令複製檔案時,最好使用i選項。 $ cp - i exam1.c /usr/wang/shiyan1.c 該命令將檔案exam1.c複製到/usr/wang 這個目錄下,並改名為 shiyan1.c。若不希望重新命名,可以使用下面的命令: $ cp exam1.c /usr/ wang/ $ cp - r /usr/xu/ /usr/liu/ 將/usr/xu目錄中的所有檔案及其子目錄複製到目錄/usr/liu中。 mv命令 使用者可以使用mv命令來為檔案或目錄改名或將檔案由一個目錄移入另一個目錄中。該命令如同DOS下的ren和move的組合。 語法:mv [選項] 原始檔或目錄 目標檔案或目錄 說明:視mv命令中第二個引數型別的不同(是目標檔案還是目標目錄),mv命令將檔案重新命名或將其移至一個新的目錄中。當第二個引數型別是檔案時, mv命令完成檔案重新命名,此時,原始檔只能有一個(也可以是源目錄名),它將所給的原始檔或目錄重新命名為給定的目標檔名。當第二個引數是已存在的目錄名稱時,原始檔或目錄引數可以有多個,mv命令將各引數指定的原始檔均移至目標目錄中。在跨檔案系統移動檔案時,mv先複製,再將原有檔案刪除,而鏈至該檔案的連結也將丟失。 命令中各選項的含義為: - I 互動方式操作。如果mv操作將導致對已存在的目標檔案的覆蓋,此時系統詢問是否重寫,要求使用者回答y或n,這樣可以避免誤覆蓋檔案。 - f 禁止互動操作。在mv操作要覆蓋某已有的目標檔案時不給任何指示,指定此選項後,i選項將不再起作用。 如果所給目標檔案(不是目錄)已存在,此時該檔案的內容將被新檔案覆蓋。為防止使用者在不經意的情況下用mv命令破壞另一個檔案,建議使用者在使用mv命令移動檔案時,最好使用i選項。 需要注意的是,mv與cp的結果不同。mv好象檔案“搬家”,檔案個數並末增加,而cp對檔案進行復制,檔案個數增加了。 例1:將/usr/xu中的所有檔案移到當前目錄(用“.”表示)中: $ mv /usr/xu/ * . 例2:將檔案wch.txt重新命名為wjz.doc $ mv wch.txt wjz.doc rm命令 在linux中建立檔案很容易,系統中隨時會有檔案變得過時且毫無用處。使用者可以用rm命令將其刪除。該命令的功能為刪除一個目錄中的一個或多個檔案或目錄,它也可以將某個目錄及其下的所有檔案及子目錄均刪除。對於連結檔案,只是刪除了連結,原有檔案均保持不變。 rm命令的一般形式為: rm [選項] 檔案… 如果沒有使用- r選項,則rm不會刪除目錄。 該命令的各選項含義如下: - f 忽略不存在的檔案,從不給出提示。 - r 指示rm將引數中列出的全部目錄和子目錄均遞迴地刪除。 - i 進行互動式刪除。 使用rm命令要格外小心。因為一旦一個檔案被刪除,它是不能被恢復的。例如,使用者在輸入cp,mv或其他命令時,不小心誤輸入了rm命令,當使用者按了Enter鍵並認識到自己的錯誤時,已經太晚了,檔案已經沒有了。為了防止此種情況的發生,可以使用rm命令中的 i選項來確認要刪除的每個檔案。如果使用者輸入y,檔案將被刪除。如果輸入任何其他東西,檔案將被保留。在下一個例子中,使用者要刪除檔案test和 example。然後會被要求對每個檔案進行確認。使用者最終決定刪除example檔案,保留test檔案。 $ rm - ii test example Remove test ?n Remove example ?y 第十課(七) 檔案連結命令ln命令 該命令在檔案之間建立連結。這種操作實際上是給系統中已有的某個檔案指定另外一個可用於訪問它的名稱。對於這個新的檔名,我們可以為之指定不同的訪問許可權,以控制對資訊的共享和安全性的問題。 如果連結指向目錄,使用者就可以利用該連結直接進入被連結的目錄而不用打一大堆的路徑名。而且,即使我們刪除這個連結,也不會破壞原來的目錄。 語法:ln [選項] 目標 [連結名] ln [選項] 目標 目錄 連結有兩種,一種被稱為硬連結(Hard Link),另一種被稱為符號連結(Symbolic Link)。建立硬連結時,連結檔案和被連結檔案必須位於同一個檔案系統中,並且不能建立指向目錄的硬連結。而對符號連結,則不存在這個問題。預設情況下,ln產生硬連結。 在硬連結的情況下,引數中的“目標”被連結至[連結名]。如果[連結名]是一個目錄名,系統將在該目錄之下建立一個或多個與“目標”同名的連結檔案,連結檔案和被連結檔案的內容完全相同。如果[連結名]為一個檔案,使用者將被告知該檔案已存在且不進行連結。如果指定了多個“目標”引數,那麼最後一個引數必須為目錄。 如果給ln命令加上- s選項,則建立符號連結。如果[連結名]已經存在但不是目錄,將不做連結。[連結名]可以是任何一個檔名(可包含路徑),也可以是一個目錄,並且允許它與“目標”不在同一個檔案系統中。如果[連結名]是一個已經存在的目錄,系統將在該目錄下建立一個或多個與“目標”同名的檔案,此新建的檔案實際上是指向原“目標”的符號連結檔案。 例:$ ln - s lunch /home/xu 使用者為當前目錄下的檔案lunch建立了一個符號連結/home/xu。本文由TurboLinux公司提供
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-938946/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 循序漸進linux(二)Linux
- 循序漸進學加密加密
- 務實發展,循序漸進
- 循序漸進理解TypeScript型別模式TypeScript型別模式
- 循序漸進DIY一個react(二)React
- 循序漸進DIY一個react(四)React
- 循序漸進DIY一個react(三)React
- 循序漸進DIY一個react(一)React
- Matplotlib學習筆記2 - 循序漸進筆記
- 【Python語法】循序漸進理解閉包Python
- 循序漸進掌握遞迴正規表示式遞迴
- 循序漸進的用js實現一個bind()JS
- 循序漸進 Redis 分散式鎖(以及何時不用它)Redis分散式
- 使用C#的後端Web API:循序漸進教程後端WebAPI
- 自動化響應要循序漸進 不能一蹴而就
- 《程式設計的原則》重新發明車輪感悟之循序漸進程式設計
- 循序漸進學.Net Core Web Api開發系列【14】:異常處理WebAPI
- 循序漸進學.Net Core Web Api開發系列【4】:前端訪問WebApiWebAPI前端
- 循序漸進!開展零信任建設時應做好的16項準備
- [翻譯]測試人員成為業務分析師的循序漸進指南
- 循序漸進學.Net Core Web Api開發系列【9】:常用的資料庫操作WebAPI資料庫
- 解密prompt系列34. RLHF之訓練另闢蹊徑:循序漸進 & 青出於藍解密
- 循序漸進nginx(二):反向代理、負載均衡、快取服務、靜態資源訪問Nginx負載快取
- 循序漸進VUE+Element 前端應用開發(18)--- 功能點管理及許可權控制Vue前端
- 循序漸進體驗玩法和故事,從《八方旅人》談遊戲關卡設計遊戲
- GraphQL 漸進學習 09-graphql-apollo-client-vue-客戶端開發clientVue客戶端
- 推薦《循序漸進Linux基礎知識伺服器搭建系統管理效能調優叢集應用》附下載連結Linux伺服器
- WePack —— 助力企業漸進式 DevOps 轉型dev
- 漸進均分性(AEP)
- vuex 漸進式教程Vue
- 循序漸進nginx(三):日誌管理、http限流、https配置,http_rewrite模組,第三方模組安裝,結語NginxHTTP
- 09Linux基礎命令Linux
- Linux(09):網路卡繫結Linux
- 漸進深入理解NginxNginx
- vuex 漸進式教程(一)Vue
- Java進階09 事件響應Java事件
- 漸進式渲染是什麼?
- Redis 漸進叢集介紹Redis
- 09-Python之路---函式進階Python函式