在 Linux 中使用 cp 命令

cp?命令是 Linux 中一個重要的命令,你可能經常會用到它。

正如名稱所示,cp?代表?復制copy,它被用于?在 Linux 命令行中復制文件和目錄。

這是一個相對簡單的命令,只有幾個選項,但你仍有必要深入了解它。

在展示?cp?命令的實際示例之前,我更建議你先熟悉絕對路徑和相對路徑的概念,將文件從一個位置復制到另一個位置時,你需要用到它們。

Linux 中的絕對路徑和相對路徑的不同之處

1.復制單個文件

cp?命令最簡單和最常見的用途是復制文件,只需指定源文件和要“粘貼”文件的目標目錄即可。

cp 源文件 目標目錄

將單個文件從源目錄復制到目標目錄。

(將單個文件從源目錄復制到目標目錄)

2.在復制文件的同時重命名它

你將文件復制到另一個位置時可以同時進行?重命名。這有點類似于文本編輯器中的“另存為”選項。

為此,你必須在路徑中給出新的文件名。

cp 源文件 目標目錄/新文件名

在復制文件的同時重命名

(在復制文件的同時重命名)

3.復制多個文件

你還可以將多個文件復制到另一個位置。

cp 文件1 文件2 文件3 目標目錄

復制多個文件時,將目標目錄放在最后

(復制多個文件時,將目標目錄放在最后)

在這種情況下,你無法重命名文件。

你還可以使用通配符擴展,將特定后綴的文件復制到另一個位置:

cp *.txt 目標目錄

使用通配符擴展復制多個文件,比如所有 .txt 后綴的文件

使用通配符擴展復制多個文件,比如所有 .txt 后綴的文件

4.復制文件時避免覆蓋現有文件

如果你將?file1.txt?復制到一個已經存在名為?file1.txt?文件的目錄中,它會將原有的文件覆蓋掉。

如果你不希望這樣,cp?命令還提供了幾個選項來處理文件覆蓋的情況。

首先是使用選項?-i?的交互模式。在交互模式下,它會詢問是否確認或放棄覆蓋目標文件。

cp -i 源文件 目標目錄
cp:覆蓋 '目標目錄/源文件' ?

按?Y?覆蓋文件,按?N?跳過復制該文件。

覆蓋,但以交互方式詢問(內容將被覆蓋)

覆蓋,但以交互方式詢問(內容將被覆蓋)

覆蓋,但以交互方式詢問(內容不會被覆蓋)

覆蓋,但以交互方式詢問(內容不會被覆蓋)

選項?-n?代表完全取消覆蓋。使用此選項時目標文件不會被覆蓋。

cp -n 源文件 目標目錄

取消覆蓋(目錄內文件的內容未更改)

取消覆蓋(目錄內文件的內容未更改)

還有一個選項?-b,在目標目錄的文件將被覆蓋時自動為其創建備份。我猜這里?b?代表?備份backup。

cp -b 源文件 目標目錄

覆蓋文件,但在備份文件后附加了“~”。

覆蓋文件,但在備份文件后附加了“~”。

最后,還有一個“更新update”選項?-u,如果目標文件比源文件舊,或者目標文件不存在,就會被覆蓋掉。

cp -u 源文件 目標目錄

新文件會覆蓋舊文件

(新文件會覆蓋舊文件)

5.復制目錄(文件夾)

cp 命令也用來在 Linux 命令行中復制目錄。

在復制目錄時,你需要使用遞歸選項?-r

cp -r 源目錄 目標目錄

在 Linux 中使用 cp 命令復制整個目錄

在 Linux 中使用 cp 命令復制整個目錄

你還可以將多個目錄復制到另一個位置:

cp -r 目錄1 目錄2 目錄3 目標目錄

使用 cp 命令復制多個目錄

使用 cp 命令復制多個目錄

6.在復制時保留屬性

當你將文件復制到另一個位置時,它的?時間戳、文件權限?甚至所有權都會發生變化。

這是正常的行為。但在某些情況下,你可能希望在復制文件時保留其原始屬性。

要保留屬性,請使用選項?-p

cp -p 源文件 目標目錄

💡 還有一個?-a?選項用于存檔模式。它將連 ACL 也保留下來。

🏋? 練習時間

想要練習一下?cp?命令嗎?以下是一些簡單的練習題供你嘗試。

  • 打開終端并創建一個名為?practice_cp?的目錄。
  • 現在,將?/etc/services?文件復制到這個新創建的目錄中。
  • 在?practice?目錄中對復制的?services?文件進行一些小的更改。
  • 現在,使用更新模式再次復制?/etc/services?文件。有什么變化嗎?觀察一下。
  • 查看?/var/log?目錄,并將以?mail?開頭的日志文件復制到你的聯系目錄下。
  • 現在,返回到你的家目錄,并創建一個名為?new_dir?的新目錄(好吧,我想不出更好的名字)。
  • 將?practice_cp?目錄復制到?new_dir?目錄中。

對你來說這些練習足夠用了。希望你能喜歡在這里學習 Linux 命令。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/37563.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/37563.shtml
英文地址,請注明出處:http://en.pswp.cn/news/37563.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VLLM推理流程梳理

0x0. 前言 本文在對VLLM進行解析時只關注單卡情況,忽略基于ray做分布式推理的所有代碼。 0x1. 運行流程梳理 先從使用VLLM調用opt-125M模型進行推理的腳本看起: from vllm import LLM, SamplingParams# Sample prompts. prompts ["Hello, my n…

二次封裝element-plus上傳組件,提供校驗、回顯等功能

二次封裝element-plus上傳組件 0 相關介紹1 效果展示2 組件主體3 視頻組件4 Demo 0 相關介紹 基于element-plus框架,視頻播放器使用西瓜視頻播放器組件 相關能力 提供圖片、音頻、視頻的預覽功能提供是否為空、文件類型、文件大小、文件數量、圖片寬高校驗提供圖片…

el-table實現懶加載(el-table-infinite-scroll)

2023.8.15今天我學習了用el-table對大量的數據進行懶加載。 效果如下: 1.首先安裝: npm install --save el-table-infinite-scroll2 2.全局引入: import ElTableInfiniteScroll from "el-table-infinite-scroll";// 懶加載 V…

clion2020.3配置clang-format

標題clion 啟用clang-format 文件->設置->編輯器->代碼樣式. 為了保持原有代碼風格不變,可以把原始的配置風格先導出,最好直接保存到自己的工程下,.clang-format是隱藏文件,需要用ctrlH才能看到 文件->設置->編輯…

SpringBoot復習:(45)@Component定義的bean會被@Bean定義的同名的bean覆蓋

有同名的bean需要配置: spring.main.allow-bean-definition-overridingtrue 否則報錯。 package cn.edu.tju.component;import org.springframework.stereotype.Component;Component public class Person {private String name;private int age;{this.name "…

室溫超導是什么?有哪些應用場景?

目錄 一、應用場景:二、案例分析: 室溫超導是指在室溫下(即約 20C 至 30C)實現超導現象的材料。超導是指某些材料在低溫下電阻為零的物理現象,室溫超導材料是超導材料的一種。室溫超導現象的發現和研究是超導領域的一個…

ChatGPT在智能游戲和游戲AI中的應用如何?

ChatGPT在智能游戲和游戲AI領域具有廣泛的應用潛力,可以為游戲體驗增添智能和交互性,同時也有助于游戲開發者創造更豐富、更引人入勝的游戲內容。以下將詳細探討ChatGPT在智能游戲和游戲AI中的應用。 ## 1. 游戲角色的智能化 在角色扮演游戲&#xff0…

103.216.154.X服務器出現漏洞了有什么辦法?

服務器出現漏洞是一種嚴重的安全風險,需要及時采取措施來應對。以下是一些常見的應對措施: 及時更新補丁:確保服務器上的操作系統、應用程序和軟件都是最新版本,并及時應用相關的安全補丁,以修復已知的漏洞。 強化訪問…

OpenHarmony Meetup 廣州站 OpenHarmony正當時—技術開源

招募令 OpenHarmony Meetup 廣州站 火熱招募中,等待激情四射的開發者,線下參與OpenHarmonyMeetup線下交流 展示前沿技術、探討未來可能、讓你了解更多專屬OpenHarmony的魅力 線下參與,先到先得,僅限20個名額! 報名截止時間8月23日…

【云原生】Docker 詳解(三):Docker 鏡像管理基礎

Docker 詳解(三):Docker 鏡像管理基礎 1.鏡像的概念 鏡像可以理解為應用程序的集裝箱,而 Docker 用來裝卸集裝箱。 Docker 鏡像含有啟動容器所需要的文件系統及其內容,因此,其用于創建并啟動容器。 Dock…

-L和-rpath-link和-rpath

知識點 現代連接器在處理動態庫時將鏈接時路徑(Link-time path)和運行時路徑(Run-time path)分開,用戶可以通過-L指定連接時庫的路徑,通過-R(或-rpath)指定程序運行時庫的路徑,大大提…

Go學習-Day1

Go學習-Day1 個人博客:CSDN博客 打卡。 Go語言的核心開發團隊: Ken Thompson (C語言,B語言,Unix的發明者,牛人)Rob Pike(UTF-8發明人)Robert Griesemer(協助HotSpot編譯器,Js引擎V8) Go語言有靜態語言的…

MongoDB安裝

文章目錄 MongoDB安裝設置yum源安裝指定版本的mongodb配置文件連接MongoDB的工具MongoDBCompass MongoDB安裝 設置yum源 [rootWDQCVM sbin]# vim /etc/yum.repos.d/mongodb-org-6.0.repo [mongodb-org-6.0] nameMongoDB Repository baseurlhttps://repo.mongodb.org/yum/red…

文件預覽/下載方式:通過二進制流(Blob)下載、或者通過文件Url下載

一、 通過二進制流(Blob)下載 1 、API請求時候帶上類型 /*** 文件--下載* */ export function download(fphm) {return axios({url: "/ynpst/download-invoice?fphm" fphm,method: get,responseType: blob}) }2、文件預覽和下載 /*** 預覽…

JavaScript如何執行語句

目錄 語法/詞法分析 預編譯 解釋執行 預編譯什么時候發生 js運行三步曲 預編譯前奏 預編譯步驟 鞏固基礎練習 語法/詞法分析 按語句塊的粒度解析成抽象語法樹 ,分析該js腳本代碼塊的語法是否正確,如果出現不正確,則向外拋出一個語法錯誤&#x…

第4章:決策樹

停止 當前分支樣本均為同一類時,變成該類的葉子節點。當前分支類型不同,但是已經沒有可以用來分裂的屬性時,變成類別樣本更多的那個類別的葉子節點。當前分支為空時,變成父節點類別最多的類的葉子節點。 ID3 C4.5 Cart 過擬合 缺…

文本挖掘 day5:文本挖掘與貝葉斯網絡方法識別化學品安全風險因素

文本挖掘與貝葉斯網絡方法識別化學品安全風險因素 1. Introduction現實意義理論意義提出方法,目標 2. 材料與方法2.1 數據集2.2 數據預處理2.3 關鍵字提取2.3.1 TF-IDF2.3.2 改進的BM25——BM25WBM25BM25W 2.3.3 關鍵詞的產生(相關系數) 2.4 關聯規則分析2.5 貝葉斯…

css冒號對齊

實現后的樣式效果 實現方式 html&#xff1a; <el-col v-if"item.showInSingle ! false" :span"6" style"padding: 4px 0"><label>{{ item.label }}&#xff1a;</label><span v-if"singleData[item.prop] ! 0 &…

iOS字體像素與磅的對應關系

注意&#xff1a;低于iOS10的系統&#xff0c;顯示的字寬和字高比高于iOS10的系統小。 這就是iOS10系統發布時&#xff0c;很多app顯示的內容后面出現…&#xff0c;因而出現很多app為了適配iOS10系統而重新發布新版本。 用PS設計的iOS效果圖中&#xff0c;字體是以像素&#x…

SRM訂單管理:優化供應商關系

一、概述SRM訂單管理的概念&#xff1a; SRM訂單管理是指在供應商關系管理過程中&#xff0c;有效管理和控制訂單的創建、處理和交付。它涉及與供應商之間的溝通、合作和協調&#xff0c;旨在實現訂單的準確性、可靠性和及時性。 二、SRM訂單管理的流程&#xff1a; 1. 訂單創…