linux檔案和目錄的刪除 新建 移動等操作

2022-09-09 13:00:21 字數 2752 閱讀 5343

在linux下進行切換目錄   cd

在linux下檢視當前目錄下的內容   ls、  ll、  ls -al

如何顯示當前命令所在的目錄路徑   pwd

在linux下建立目錄   mkdir

在linux下建立檔案   直接vim 編輯好之後:wq回車就可以了

在linux下刪除目錄或檔案   rm -rf

在linux下複製目錄或檔案   複製檔案   cp 原路徑 新路徑以及新名    複製資料夾  cp -r 原資料夾 新資料夾

在linux下移動目錄或檔案    mv /home/1.txt /opt/   資料夾也是一樣的做法

通過basename獲取路徑中的檔名

basename命令用於去掉檔名的目錄和字尾(strip directory and suffix from filenames),對應的dirname命令用於擷取目錄

格式:basename name

去掉name中的目錄部分。

path            dirname         basename

"/usr/lib" "/usr" "lib"

"/usr/" "/" "usr"

"usr" "." "usr"

"/" "/" "/"

"." "." "."

".." "." ".."

格式:basename name suffix

去掉name中的目錄部分和字尾suffix,如果沒有了,則輸出suffix。

[root@web ~]# basename /usr/bin/sort 

sort

[root@web ~]# dirname /usr/bin/sort 

/usr/bin

[root@web ~]#

[root@web ~]# basename /usr/include/stdio.h .h 

stdio

[root@web ~]# basename /usr/include/stdio.h stdio.h 

stdio.h

通過dirname獲取路徑中的目錄名

dirname命令可以取給定路徑的目錄部分(strip non-directory suffix from file name)。這個命令很少直接在shell命令列中使用,我一般把它用在shell指令碼中,用於取得指令碼檔案所在目錄,然後將當前目錄切換過去。根據手冊頁上說的「print  name  with  its  trailing  /component  removed; if name contains no /』s, output 『.』 (meaning the current directory).」,似乎說「取給定路徑的目錄部分」 並不能很準確的概括dirname命令的用途。linux下還有乙個命令是basename,它與dirname相反,是取得檔名稱部分。

無。[root@qzt196 ~]# dirname /usr/bin/sort 

/usr/bin

[root@qzt196 ~]# dirname stdio.h 

.[root@qzt196 ~]#

[root@qzt196 ~]# dirname /usr/bin 

/usr

[root@qzt196 ~]# dirname /usr/bin/ 

/usr

注意:此處的輸出結果,似乎有點怪。這應該看下dirname命令的源**才能解釋了。

bash**  

#!/bin/sh  

# 跳轉到指令碼所在目錄  

cd $(dirname "$0") || exit 1  

# 剩下的部分  

這個寫法我經常用到,因為有時候指令碼執行時無法確定是在哪個目錄,比如指令碼用在crontab中時。

另乙個寫法是:cd `dirname $0` 其中反引號··等同於$()。

可以用$擷取掉pathname後面的檔案部分。

[root@jfht ~]# pathname=/usr/bin/sort; echo $(dirname $pathname) $ 

/usr/bin /usr/bin

[root@jfht ~]# pathname=/usr/bin/; echo $(dirname $pathname) $ 

/usr /usr/bin

[root@jfht ~]# pathname=/usr/bin; echo $(dirname $pathname) $ 

/usr /usr

[root@jfht ~]# pathname=/usr/; echo $(dirname $pathname) $ 

/ /usr

[root@jfht ~]# pathname=/usr; echo $(dirname $pathname) $ 

/[root@jfht ~]# pathname=/; echo $(dirname $pathname) $ 

/[root@jfht ~]# pathname=stdio.h; echo $(dirname $pathname) $ 

. stdio.h

[root@jfht ~]#

linux下檔案或目錄的新建與刪除方法

一 新建目錄 1 命令 mkdir 2 格式 mkdir 目錄名或者 mkdir v 目錄名 二 刪除目錄 1 命令 rm 2 格式 rm r 目錄名 rm後一定要帶 r 選項,否則無法刪除目錄的,r的意思是遞迴刪除目錄及其下面的所有檔案或目錄 三 新建檔案 1 命令 touch 或者用vim新建乙...

刪除檔案和目錄

public class deletefileutil elseelse 刪除單個檔案 param filename 被刪除檔案的檔名 return 單個檔案刪除成功返回true,否則返回false public static boolean deletefile string filename e...

linux刪除檔案 目錄命令

名稱 rm 使用許可權 所有使用者 使用方式 rm options name.說明 刪除檔案及目錄。引數 i 刪除前逐一詢問確認。f 即使原檔案屬性設為唯讀,亦直接刪除,無需逐一確認。r 將目錄及以下之檔案亦逐一刪除。使用rm命令要小心。因為一旦檔案被刪除,它是不能被恢復的。了防止這種情況的發生,可...