Day6 文件目錄的建立與刪除

概述

  • 在windows中咱們常常用到建立文件和刪除文件,操做方法也很簡單,就是直接右鍵新建或刪除,再或者直接拖入回收站。在linux的圖形界面中,咱們也能夠進行相似的操做。那麼在命令行的界面中咱們該如何實現呢?本文就是要講這個東西。
  • 在命令行的界面下,文件都是以字符的樣子展現在咱們的面前。咱們不能直觀的去用鼠標打開某個文件夾,因此要找到一個文件,就得找到文件存放的位置。而這個文件存放的位置,咱們稱之爲文件的路徑,而在linux中路徑分爲絕對路徑和相對路徑
  • 在建立文件前,咱們須要肯定文件的位置,也就是文件的路徑,須要的路徑沒有這麼辦。這就須要用到命令來建立目錄(mkdir)了,有建立天然也就有刪除目錄(rmdir)

rmdir只能刪除空目錄,沒法刪除文件,這也正是它所侷限的地方,因此通常不怎麼用。
man命令是使用手冊,經過man指令能夠查看Linux中的指令幫助、配置文件幫助和編程幫助等信息,幾乎全部命令都能man。ps:直接按Q鍵能夠退出手冊。mysql

  • 上面的註釋裏說了rmdir的不足的地方,它不行天然有頂替他的人,那我的就是rm(刪除文件目錄)
  • ps:文章中出現的其餘命令:tree, cd, pwd, date,man,yum

相對和絕對路徑

  • 絕對路徑: 路徑的寫法是從更目錄開始的,例如/usr/local/mysql
  • 相對路徑: 路徑的寫法不是從根開始的

用法

pwd //查看當前所在路徑
cd   //變動所在目錄

cd後面只能跟目錄名字,跟了好比文件就會報錯linux

[root@localhost ~]# cd /etc/passwd
-bash: cd: /etc/passwd: 不是目錄

cd命令 (change directory)

做用:用來變動用戶所在目錄,若是後面什麼都不跟,就會直接進入當前用戶的根目錄下。sql

用法

  • cd //進入當前用戶的根目錄下
[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /tmp/
[root@localhost tmp]# pwd
/tmp
[root@localhost tmp]# cd
[root@localhost ~]# pwd
/root
  • cd - //進入上一次所在的目錄,有點像電視遙控器上面的返回鍵
[root@localhost tmp]# cd /tmp/
[root@localhost tmp]# cd /etc/
[root@localhost etc]# cd -
/tmp                                 //祕技:反覆橫跳
[root@localhost tmp]# cd -
/etc
  • cd ~ //進入用戶的家目錄(進入/root目錄),進入主頁快捷鍵
[root@localhost home]# cd ~
[root@localhost ~]# pwd
/root
  • cd .. //進入上一級目錄.就是瀏覽網頁時候的後退鍵的感受

一個點表明當前目錄,兩個點表明當前目錄的上一級目錄編程

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# pwd 
/etc/sysconfig/network-scripts
[root@localhost network-scripts]# cd ..
[root@localhost sysconfig]# cd . //一個點哈
[root@localhost sysconfig]# pwd
/etc/sysconfig
[root@localhost sysconfig]# cd ..
[root@localhost etc]# cd ..
[root@localhost /]# //一直後退的結果就是根咯,宇宙起源~~
  • man cd //查看cd的其餘用法。經常使用的基本上就是上面說到的幾個,可是打開是英文怎麼辦。別擔憂!咱們貼心的放上了中文版的哦

http://fanyi.baidu.com/translate(很好的方法)
http://man.linuxde.net/cd(相關地址)windows

建立和刪除目錄 mkdir/rmdir

命令 mkdir (make directory)

mkdir:用於建立目錄bash

mkdir命令的-m選項,用於指定建立目錄的權限,如今不怎麼用,瞭解爲主.net

  • mkdir -p //一次建立多個目錄
[root@localhost ~]# mkdir /tmp/test/123   //不加選項就會報錯
mkdir: 沒法建立目錄"/tmp/test/123": 沒有那個文件或目錄
[root@localhost ~]# mkdir -p /tmp/test/123
[root@localhost ~]# ls /tmp/test/
123
  • mkdir -pv //建立目錄可視化
[root@localhost ~]# mkdir -vp /tmp/test/123/3/2/1
mkdir: 已建立目錄 "/tmp/test/123/3"
mkdir: 已建立目錄 "/tmp/test/123/3/2"
mkdir: 已建立目錄 "/tmp/test/123/3/2/1"
  • date //顯示時間,看看時間咯
[root@localhost ~]# date
2018年 06月 04日 星期一 19:35:37 CST

命令 rmdir (remove directory)

  • rmdir //刪除目錄且只能刪除空目錄,很侷限命令行

  • rmdir -p //級聯刪除空目錄。用於刪除空目錄,後面能夠使一個目錄,也能夠是多個目錄(用空格分隔)code

級聯刪除路徑要寫完整,即便目錄裏有目錄都是不能刪除的(非空)。這裏的級聯刪除,還好個人/tmp/裏有東西否則,直接給刪除了,真可怕呢ip

[root@localhost ~]# ls /tmp/test/123/
3
[root@localhost ~]# rmdir /tmp/test/123/
rmdir: 刪除 "/tmp/test/123/" 失敗: 目錄非空
[root@localhost ~]# rmdir -p /tmp/test/123/
rmdir: 刪除 "/tmp/test/123/" 失敗: 目錄非空
[root@localhost ~]# rmdir -p /tmp/test/123/3/2/
rmdir: 刪除目錄 "/tmp" 失敗: 設備或資源忙
[root@localhost ~]# ls /tmp/test/123/
ls: 沒法訪問/tmp/test/123/: 沒有那個文件或目錄
[root@localhost ~]# ls /tmp/test
ls: 沒法訪問/tmp/test: 沒有那個文件或目錄

rm命令

man命令能夠查他的其餘用法,這裏咱們只講最經常使用的選項

  • rm -r //刪除目錄能夠是非空目錄

會詢問哦,y是贊成;n是不一樣意

  • rm -f //強制刪除 而且不會詢問
  • rm -rfv //可以看到刪除過程
  • rm -rf //沒有輸入正確的文件名也不會報錯

rm -rf後面不能加/,要是你加了而且還輸入了,那麼就能夠跑路了,由於你把你的系統文件都刪了

[root@localhost ~]# ls /tmp/test/123/
3
[root@localhost ~]# rm /tmp/test/123/  #不加的話就會報錯
rm: 沒法刪除"/tmp/test/123/": 是一個目錄
[root@localhost ~]# rm -r /tmp/test/123/
rm:是否進入目錄"/tmp/test/123/"? y
rm:是否刪除目錄 "/tmp/test/123/3"?y
rm:是否刪除目錄 "/tmp/test/123/"?y
[root@localhost ~]# mkdir /tmp/test/123/
[root@localhost ~]# rm -f /tmp/test
rm: 沒法刪除"/tmp/test": 是一個目錄
[root@localhost ~]# rm -rf /tmp/test/
[root@localhost ~]# ls /tmp/test/
ls: 沒法訪問/tmp/test/: 沒有那個文件或目錄
#刪除時顯示過程
[root@localhost ~]# mkdir -p /tmp/test/123/3 
[root@localhost ~]# rm -rfv /tmp/test/   
已刪除目錄:"/tmp/test/123/3"
已刪除目錄:"/tmp/test/123"
已刪除目錄:"/tmp/test/"

  • tree命令 //以樹狀結構顯示文件或目錄,後面要接目錄或文件名
沒有就先安一個
[root@localhost ~]# tree
bash: tree: 未找到命令...
[root@localhost ~]# yum install tree
[root@localhost ~]# tree /tmp/test/
/tmp/test/
└── 123
    └── 3

2 directories, 0 files

http://man.linuxde.net/tree (詳解)

相關文章
相關標籤/搜索