一、複製文件夾
在Linux系統中,使用cp命令可以複製文件,也可以複製文件夾。複製文件夾的命令格式如下:
cp -r source_folder destination_folder
其中,-r表示遞歸複製,source_folder為源文件夾的路徑,destination_folder為目標文件夾的路徑。
例如,要將/home/user1/test文件夾複製到/home/user2目錄下,可以使用以下命令:
cp -r /home/user1/test /home/user2
在執行命令時,如果目標文件夾已經存在,則會將源文件夾複製到目標文件夾下面,成為目標文件夾下的一個子文件夾。
二、複製文件夾並保留屬性
有時候,不僅需要複製文件夾的內容,還需要保留文件夾的屬性,比如許可權、擁有者、時間戳等。這時可以使用rsync命令。
rsync是一個非常強大的文件同步工具,可以通過網路、本地文件系統等多種方式進行文件傳輸和備份。對於文件夾複製,rsync命令的格式如下:
rsync -avz source_folder/ destination_folder/
其中,-a表示以歸檔的方式複製文件夾,-v表示顯示詳細信息,-z表示進行壓縮傳輸。source_folder和destination_folder分別為源文件夾和目標文件夾的路徑。
例如,要將/home/user1/test文件夾複製到/home/user2目錄下,並保留所有屬性,可以使用以下命令:
rsync -avz /home/user1/test/ /home/user2/
三、複製文件夾並排除指定文件
有時候,在複製文件夾時需要排除一些指定的文件或文件夾。這時可以使用rsync命令的–exclude選項。
rsync的–exclude選項可以指定要排除的文件或文件夾的名稱或通配符。其格式如下:
rsync -avz --exclude 'file1' --exclude 'file2' source_folder/ destination_folder/
其中,–exclude選項可以指定多個需要排除的文件或文件夾,每個文件或文件夾之間用空格分隔。file1和file2是需要排除的文件或文件夾名稱。
例如,要將/home/user1/test文件夾複製到/home/user2目錄下,但不複製所有以.log和.backup結尾的文件,可以使用以下命令:
rsync -avz --exclude '*.log' --exclude '*.backup' /home/user1/test/ /home/user2/
四、結語
Linux系統中有多種方法可以複製文件夾,不同的方法適用於不同的場景。以上介紹了常用的三種文件夾複製方法,包括基本複製、保留屬性的複製、排除指定文件的複製。了解這些常用方法可以提高Linux文件操作的效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/197991.html