linuxcp目錄
❶ linux目錄及文件如何操作
處理目錄的常用命令
接下來我們就來看幾個常見的處理目錄的命令吧:
ls(英文全拼:list files): 列出目錄及文件名
cd(英文全拼:change directory):切換目錄
pwd(英文全拼:print work directory):顯示目前的目錄
mkdir(英文全拼:make directory):創建一個新的目錄
rmdir(英文全拼:remove directory):刪除一個空的目錄
cp(英文全拼: file): 復制文件或目錄
rm(英文全拼:remove): 刪除文件或目錄
mv(英文全拼:move file): 移動文件與目錄,或修改文件與目錄的名稱
- [root@www ~]# ls [-aAdfFhilnrRSt] 目錄名稱
- [root@www ~]# ls [--color={never,auto,always}] 目錄名稱
- [root@www ~]# ls [--full-time] 目錄名稱
-a :全部的文件,連同隱藏文件( 開頭為 . 的文件) 一起列出來(常用)
-d :僅列出目錄本身,而不是列出目錄內的文件數據(常用)
-l :長數據串列出,包含文件的屬性與許可權等等數據;(常用)
- [root@www ~]# ls -al ~
- cd [相對路徑或絕對路徑]#使用 mkdir 命令創建 runoob 目錄
- [root@www ~]# mkdir runoob
- #使用絕對路徑切換到 runoob 目錄
- [root@www ~]# cd /root/runoob/
- #使用相對路徑切換到 runoob 目錄
- [root@www ~]# cd ./runoob/
- # 表示回到自己的家目錄,亦即是 /root 這個目錄
- [root@www runoob]# cd ~
- # 表示去到目前的上一級目錄,亦即是 /root 的上一級目錄的意思;
- [root@www ~]# cd ..
- [root@www ~]# pwd [-P]
-P :顯示出確實的路徑,而非使用連結 (link) 路徑。
- [root@www ~]# pwd
- /root <== 顯示出目錄啦~
- [root@www ~]# cd /var/mail <==注意,/var/mail是一個連結檔
- [root@www mail]# pwd
- /var/mail <==列出目前的工作目錄
- [root@www mail]# pwd -P
- /var/spool/mail <==怎麼回事?有沒有加 -P 差很多~
- [root@www mail]# ls -ld /var/mail
- lrwxrwxrwx 1 root root 10 Sep 4 17:54 /var/mail -> spool/mail
- # 看到這里應該知道為啥了吧?因為 /var/mail 是連結檔,連結到 /var/spool/mail
- # 所以,加上 pwd -P 的選項後,會不以連結檔的數據顯示,而是顯示正確的完整路徑啊!
- mkdir [-mp] 目錄名稱
-m :配置文件的許可權喔!直接配置,不需要看默認許可權 (umask) 的臉色~
-p :幫助你直接將所需要的目錄(包含上一級目錄)遞歸創建起來!
- [root@www ~]# cd /tmp
- [root@www tmp]# mkdir test <==創建一名為 test 的新目錄
- [root@www tmp]# mkdir test1/test2/test3/test4
- mkdir: cannot create directory `test1/test2/test3/test4':
- No such file or directory <== 沒辦法直接創建此目錄啊!
- [root@www tmp]# mkdir -p test1/test2/test3/test4
- [root@www tmp]# mkdir -m 711 test2
- [root@www tmp]# ls -l
- drwxr-xr-x 3 root root 4096 Jul 18 12:50 test
- drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- rmdir [-p] 目錄名稱
-p :連同上一級『空的』目錄也一起刪除
- [root@www tmp]# rmdir runoob/
- [root@www tmp]# ls -l <==看看有多少目錄存在?
- drwxr-xr-x 3 root root 4096 Jul 18 12:50 test
- drwxr-xr-x 3 root root 4096 Jul 18 12:53 test1
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- [root@www tmp]# rmdir test <==可直接刪除掉,沒問題
- [root@www tmp]# rmdir test1 <==因為尚有內容,所以無法刪除!
- rmdir: `test1': Directory not empty
- [root@www tmp]# rmdir -p test1/test2/test3/test4
- [root@www tmp]# ls -l <==您看看,底下的輸出中test與test1不見了!
- drwx--x--x 2 root root 4096 Jul 18 12:54 test2
- [root@www ~]# cp [-adfilprsu] 來源檔(source) 目標檔(destination)
- [root@www ~]# cp [options] source1 source2 source3 .... directory
-a:相當於 -pdr 的意思,至於 pdr 請參考下列說明;(常用)
-d:若來源檔為連結檔的屬性(link file),則復制連結檔屬性而非文件本身;
-f:為強制(force)的意思,若目標文件已經存在且無法開啟,則移除後再嘗試一次;
-i:若目標檔(destination)已經存在時,在覆蓋時會先詢問動作的進行(常用)
-l:進行硬式連結(hard link)的連結檔創建,而非復制文件本身;
-p:連同文件的屬性一起復制過去,而非使用默認屬性(備份常用);
-r:遞歸持續復制,用於目錄的復制行為;(常用)
-s:復製成為符號連結檔 (symbolic link),亦即『捷徑』文件;
-u:若 destination 比 source 舊才升級 destination !
- [root@www ~]# cp ~/.bashrc /tmp/bashrc
- [root@www ~]# cp -i ~/.bashrc /tmp/bashrc
- cp: overwrite `/tmp/bashrc'? n <==n不覆蓋,y為覆蓋
- rm [-fir] 文件或目錄
-f :就是 force 的意思,忽略不存在的文件,不會出現警告信息;
-i :互動模式,在刪除前會詢問使用者是否動作
-r :遞歸刪除啊!最常用在目錄的刪除了!這是非常危險的選項!!!
- [root@www tmp]# rm -i bashrc
- rm: remove regular file `bashrc'? y
- [root@www ~]# mv [-fiu] source destination
- [root@www ~]# mv [options] source1 source2 source3 .... directory
-f :force 強制的意思,如果目標文件已經存在,不會詢問而直接覆蓋;
-i :若目標文件 (destination) 已經存在時,就會詢問是否覆蓋!
-u :若目標文件已經存在,且 source 比較新,才會升級 (update)
- [root@www ~]# cd /tmp
- [root@www tmp]# cp ~/.bashrc bashrc
- [root@www tmp]# mkdir mvtest
- [root@www tmp]# mv bashrc mvtest
- [root@www tmp]# mv mvtest mvtest2
cat 由第一行開始顯示文件內容
tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!
nl 顯示的時候,順道輸出行號!
more 一頁一頁的顯示文件內容
less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
head 只看頭幾行
tail 只看尾巴幾行
- cat [-AbEnTv]
-A :相當於 -vET 的整合選項,可列出一些特殊字元而不是空白而已;
-b :列出行號,僅針對非空白行做行號顯示,空白行不標行號!
-E :將結尾的斷行位元組 $ 顯示出來;
-n :列印出行號,連同空白行也會有行號,與 -b 的選項不同;
-T :將 [tab] 按鍵以 ^I 顯示出來;
-v :列出一些看不出來的特殊字元
- [root@www ~]# cat /etc/issue
- CentOS release 6.4 (Final)
- Kernel on an m
- [root@www ~]# tac /etc/issue
- Kernel on an m
- CentOS release 6.4 (Final)
- nl [-bnw] 文件
-b :指定行號指定的方式,主要有兩種:
-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);
-b t :如果有空行,空的那一行不要列出行號(默認值);-n :列出行號表示的方法,主要有三種:
-n ln :行號在熒幕的最左方顯示;
-n rn :行號在自己欄位的最右方顯示,且不加 0 ;
-n rz :行號在自己欄位的最右方顯示,且加 0 ;-w :行號欄位的佔用的位數。
- [root@www ~]# nl /etc/issue
- 1 CentOS release 6.4 (Final)
- 2 Kernel on an m
- [root@www ~]# more /etc/man_db.config
- #
- # Generated automatically from man.conf.in by the
- # configure script.
- #
- # man.conf from man-1.6d
- ....(中間省略)....
- --More--(28%) <== 重點在這一行喔!你的游標也會在這里等待你的命令
空白鍵 (space):代表向下翻一頁;
Enter :代表向下翻『一行』;
/字串 :代表在這個顯示的內容當中,向下搜尋『字串』這個關鍵字;
:f :立刻顯示出檔名以及目前顯示的行數;
q :代表立刻離開 more ,不再顯示該文件內容。
b 或 [ctrl]-b :代表往回翻頁,不過這動作只對文件有用,對管線無用。
- [root@www ~]# less /etc/man.config
- #
- # Generated automatically from man.conf.in by the
- # configure script.
- #
- # man.conf from man-1.6d
- ....(中間省略)....
- : <== 這里可以等待你輸入命令!
空白鍵 :向下翻動一頁;
[pagedown]:向下翻動一頁;
[pageup] :向上翻動一頁;
/字串 :向下搜尋『字串』的功能;
?字串 :向上搜尋『字串』的功能;
n :重復前一個搜尋 (與 / 或 ? 有關!)
N :反向的重復前一個搜尋 (與 / 或 ? 有關!)
q :離開 less 這個程序;
- head [-n number] 文件
-n :後面接數字,代表顯示幾行的意思
- [root@www ~]# head /etc/man.config
- [root@www ~]# head -n 20 /etc/man.config
- tail [-n number] 文件
-n :後面接數字,代表顯示幾行的意思
-f :表示持續偵測後面所接的檔名,要等到按下[ctrl]-c才會結束tail的偵測
你可以使用 man [命令] 來查看各個命令的使用文檔,如 :man cp。
ls (列出目錄)
在Linux系統當中, ls 命令可能是最常被運行的。
語法:
選項與參數:
將家目錄下的所有文件列出來(含屬性與隱藏檔)
cd (切換目錄)
cd是Change Directory的縮寫,這是用來變換工作目錄的命令。
語法:
接下來大家多操作幾次應該就可以很好的理解 cd 命令的。
pwd (顯示目前所在的目錄)
pwd 是 Print Working Directory 的縮寫,也就是顯示目前所在目錄的命令。
選項與參數:
實例:單純顯示出目前的工作目錄:
實例顯示出實際的工作目錄,而非連結檔本身的目錄名而已。
mkdir (創建新目錄)
如果想要創建新的目錄的話,那麼就使用mkdir (make directory)吧。
語法:
選項與參數:
實例:請到/tmp底下嘗試創建數個新目錄看看:
加了這個 -p 的選項,可以自行幫你創建多層目錄!
實例:創建許可權為 rwx--x--x 的目錄。
上面的許可權部分,如果沒有加上 -m 來強制配置屬性,系統會使用默認屬性。
如果我們使用 -m ,如上例我們給予 -m 711 來給予新的目錄 drwx--x--x 的許可權。
rmdir (刪除空的目錄)
語法:
選項與參數:
刪除 runoob 目錄
將 mkdir 實例中創建的目錄(/tmp 底下)刪除掉!
利用 -p 這個選項,立刻就可以將 test1/test2/test3/test4 一次刪除。
不過要注意的是,這個 rmdir 僅能刪除空的目錄,你可以使用 rm 命令來刪除非空目錄。
cp (復制文件或目錄)
cp 即拷貝文件和目錄。
語法:
選項與參數:
用 root 身份,將 root 目錄下的 .bashrc 復制到 /tmp 下,並命名為 bashrc
rm (移除文件或目錄)
語法:
選項與參數:
將剛剛在 cp 的實例中創建的 bashrc 刪除掉!
如果加上 -i 的選項就會主動詢問喔,避免你刪除到錯誤的檔名!
mv (移動文件與目錄,或修改名稱)
語法:
選項與參數:
復制一文件,創建一目錄,將文件移動到目錄中
將某個文件移動到某個目錄去,就是這樣做!
將剛剛的目錄名稱更名為 mvtest2
Linux 文件內容查看
Linux系統中使用以下命令來查看文件的內容:
你可以使用 man [命令]來查看各個命令的使用文檔,如 :man cp。
cat
由第一行開始顯示文件內容
語法:
選項與參數:
檢看 /etc/issue 這個文件的內容:
tac
tac與cat命令剛好相反,文件內容從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!如:
nl
顯示行號
語法:
選項與參數:
實例一:用 nl 列出 /etc/issue 的內容
more
一頁一頁翻動
在 more 這個程序的運行過程中,你有幾個按鍵可以按的:
less
一頁一頁翻動,以下實例輸出/etc/man.config文件的內容:
less運行時可以輸入的命令有:
head
取出文件前面幾行
語法:
選項與參數:
默認的情況中,顯示前面 10 行!若要顯示前 20 行,就得要這樣:
tail
取出文件後面幾行
語法:
選項與參數:
[root@www ~]# tail /etc/man.config
# 默認的情況中,顯示最後的十行!若要顯示最後的 20 行,就得要這樣:
[root@www ~]# tail -n 20 /etc/man.config
❷ linux cp命令一個目錄復制到另一個目錄
linux復制指定目錄下的全部文件到另一個目錄中
復制指定目錄下的全部文件到另一個目錄中
文件及目錄的復制是經常要用到的。linux下進行復制的命令為cp。
假設復制源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將dir1下所有文件復制到dir2下了
如果dir2目錄不存在,則可以直接使用。《Linux就該這么學》
cp -r dir1 dir2
例:cp -r /data01/sinopec/pos/. /data01/sinopec/pos-pc/
即可。
如果dir2目錄已存在,則需要使用
cp -r dir1/. dir2
如果這時使用cp -r dir1 dir2,則也會將dir1目錄復制到dir2中,明顯不符合要求。
ps:dir1、dir2改成對應的目錄路徑即可。
cp -r /home/www/xxx/statics/. /home/www/statics
❸ linux中使用cp命令如何排除一個目錄
你好:
默認linux下面的cp命令沒有這個參數。
推薦使用
rsync命令(沒有可以yum安裝),可以實現復制並排除的功能。
用法舉例:
rsync -av /oldboy /tmp --exclude=/oldboy/alex/-a表示復制的時候復制目錄
保留許可權
所有者
等等
-v顯示執行過程
--exclude表示排除
可以使用多次
--exclude-from
表示根據文件中的名單進行排除也適用於排除多個
good
luck!
❹ linux復制文件夾到指定目錄
linux怎麼拷貝文件夾到指定目錄》我們一起來了解一下吧。以復制到tmp文件為例
使用cp復制當前目錄下的文件file.txt到/tmp目錄下,
❺ linux中在復制一個目錄時cp -a 和cp -r有什麼區別
cp文件時候可以不用加參數,但是cp文件夾的時候必須加-R或-r,操作方法如下:
1、首先打開linux,使用cp的命令格式
❻ 在Linux中怎樣使用cp命令合並目錄樹
怎樣將兩個布局相似的目錄樹合並成一個新的目錄樹?
在目錄a,b和c中有一些文件,tree命令的輸出將能更好的說明:
文件布局
1. 使用cp命令創建合並:
現在我們將這兩個目錄合並成一個名為"merged"新的目錄中.完成上述操作最簡單的方式就是遞歸復制目錄,如下圖所示:
遞歸復制完成新的合並
1.1 cp命令和替換帶來的問題:
這種方式所帶來的問題是該合並目錄中所創建的文件為原文件的副本,並非原文件本身.別急, (你可能正在問自己) 如果不是原文件又有什麼問題? 要回答你的問題,考慮下你有很多大文件的情況.那種情形下,復制所有的文件可能花費數小時。
現在讓我們回到剛那問題上,且嘗試使用mv命令而不是cp命令。
企圖使用mv命令進行合並操作
這些目錄不能被合並.因此我們不能像這樣使用mv命令去合並目錄. 現在你該怎樣將原文件保存到"merged"目錄中?
❼ linux系統中 ,cp命令不能用於復制目錄但可以復制文件,能不能詳細給解釋一下
cp -rf 目錄名 目錄路徑
cp (復制檔案或目錄)
參數:
-a :相當於 -pdr 的意思;
-d :若來源文件為連結文件的屬性(link file),則復制連結文件屬性而非檔案本身;
-f :為強制 (force) 的意思,若有重復或其它疑問時,不會詢問使用者,而強制復制;
-i :若目的檔(destination)已經存在時,在覆蓋時會先詢問是否真的動作!
-l :進行硬式連結 (hard link) 的連結檔建立,而非復制檔案本身;
-p :連同檔案的屬性一起復制過去,而非使用預設屬性;
-r :遞歸持續復制,用於目錄的復制行為;
-s :復製成為符號連結文件 (symbolic link),亦即『快捷方式』檔案;
-u :若 destination 比 source 舊才更新 destination !
❽ linuxcp命令如何使用
用於復制文件或目錄。
常用參數:
-f force:強行復制文件或目錄,不管文件或目錄是否存在;
-d:復制時保留文件鏈接;
-i -interactive:覆蓋文件之前先詢問用戶;
-r:遞歸處理,將指定目錄下的文件與子目錄一並處理,若源文件或目錄的新蓋不屬於目錄或符號鏈接,則一律視為普通文件處理。
❾ linux cp命令,如何復制多個目錄下文件到 對應多個目錄下面
1、打開SecureCRT,選擇要登錄的系統IP地址, 點擊連接。