目录管理,创建、删除、移动目录,创建、删除、移动文件
生活随笔
收集整理的這篇文章主要介紹了
目录管理,创建、删除、移动目录,创建、删除、移动文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天我就來介紹一下linux的目錄管理 linux的目錄結構: 在linux中,所有的目錄都是由根目錄開始的,其他目錄和文件都是由根目錄衍生出來的,再一個一個分支下來,就形成的倒置的樹狀結構。所有的目錄和文件都是嚴格區分大小寫的。 一些目錄的表示: / ?根目錄 ~ ?用戶家目錄 . ?當前目錄 .. 當前目錄的上級目錄 相對路徑與絕對路徑 相對路徑:是以當前所處的位置開始 絕對路徑:是從根開始 我們在用戶家目錄下使用ls -a ,會出現一些以"."開頭的文件。這些以"."開頭的文件表示的是隱藏文件。 為了規范文件放置的目錄,就出現了所謂的Filesystem Hierarchy Standard(FHS)標準。根據FHS的官方文件指出,其主要目的是希望讓用戶可以了解到已安裝軟件通常放置于哪個目錄下,所以也希望獨立的軟件開發商、操作系統的制作者以及想要維護系統的用戶,都能夠遵循FHS的標準。FHS的重點在于規范每個特定的目錄下應該要放置什么樣子的數據而已。 我們來看一下常見的一級目錄: [root@www?~]#?ls?/? bin???dev??home??lost+found??misc??mydata??opt???root??selinux??sys??usr? boot??etc??lib???media???????mnt???net?????proc??sbin??srv??????tmp??var? /bin:放置的是二進制命令 /sbin:存放的是管理類命令 /boot:引導目錄,放置開機會使用到的文件,包括Linux內核文件以及開機菜單與開機所需要的配置文件。 /dev:設備文件目錄,特殊文件目錄 /etc:配置文件目錄 /home:普通用戶家目錄,對于root用戶其家目錄為/root /lib:庫文件(被其他程序/bin,/sbin所調用) /media,/mnt:額外文件系統的掛載目錄,就是用來與根目錄關聯起來的過程。 /misc:備用目錄 /opt:可選目錄,第三方軟件安裝目錄 /proc:偽目錄,內核映射 ?(可以和內核打交道) /srv:服務器使用過程中產生的臨時目錄 /sys:內核中硬件信息的映射 /tmp:臨時文件目錄 (每隔30天清理一次) /usr:第三方軟件,而外管理信息,幫助文件 /var:用戶的郵件隊列,打印隊列,臨時的緩沖地址。經常發生變化。 -------------------------------------------------------------- 命令的使用格式: #command [options] [arguments] options:轉換命令執行方式 ------------------------- 切換目錄的命令:cd (change directory) cd :切換回當前用戶的家目錄 cd ~:同上 cd ~用戶名:進入該用戶的家目錄 cd .. :切換到當前目錄的上級目錄 cd ../.. :切換到當前目錄的上級目錄的上級目錄 cd - :與上一個目錄之間進行切換 顯示當前目錄:pwd (printing working directory) 例子: [root@www?~]#?pwd? /root? [root@www?~]#?cd?/etc/sysconfig? [root@www?sysconfig]#?pwd? /etc/sysconfig? [root@www?sysconfig]#?cd?..? [root@www?etc]#?cd?-? /etc/sysconfig? [root@www?sysconfig]#?cd?../..? [root@www?/]#?pwd? /? [root@www?/]#?cd?? [root@www?~]#?pwd? /root? [root@www?~]#?cd?~? [root@www?~]#?pwd? /root? [root@www?~]#? ------------------------------------------------- ls:顯示文件的文件名與相關屬性 -l :顯示詳細信息 -a :全部信息 -h :以人們易讀的方式顯示 -A :不顯示"."和".." -d :只顯示目錄自身的屬性,而不是目錄中文件和子目錄 -r :逆序顯示 -R :遞歸顯示 例如: [root@www?~]#?ls?-al?/? total?162? drwxr-xr-x??24?root?root??4096?Sep?27?15:57?.? drwxr-xr-x??24?root?root??4096?Sep?27?15:57?..? -rw-r--r--???1?root?root?????0?Sep?27?12:47?.autofsck? drwxr-xr-x???2?root?root??4096?Sep?27?14:01?bin? drwxr-xr-x???4?root?root??1024?Aug?25?23:55?boot? drwxr-xr-x??13?root?root??4100?Sep?27?19:48?dev? drwxr-xr-x??92?root?root?12288?Sep?27?19:55?etc? drwxr-xr-x???7?root?root??4096?Sep?27?17:39?home? drwxr-xr-x??13?root?root??4096?Sep?27?14:35?lib? drwx------???2?root?root?16384?Aug?26?07:32?lost+found? drwxr-xr-x???2?root?root??4096?Aug??8??2008?media? drwxr-xr-x???2?root?root?????0?Sep?27?12:48?misc? drwxr-xr-x???2?root?root??4096?Aug??8??2008?mnt? drwxr-xr-x???4?root?root??4096?Sep?27?16:00?mydata? drwxr-xr-x???2?root?root?????0?Sep?27?12:48?net? drwxr-xr-x???2?root?root??4096?Aug??8??2008?opt? dr-xr-xr-x?238?root?root?????0?Sep?27?12:46?proc? drwxr-x---??18?root?root??4096?Oct?13?11:38?root? drwxr-xr-x???2?root?root?12288?Sep?27?14:01?sbin? drwxr-xr-x???4?root?root?????0?Sep?27?12:46?selinux? drwxr-xr-x???2?root?root??4096?Aug??8??2008?srv? drwxr-xr-x??11?root?root?????0?Sep?27?12:46?sys? drwxrwxrwt???8?root?root??4096?Oct?13?10:31?tmp? drwxr-xr-x??18?root?root??4096?Sep?27?17:53?usr? drwxr-xr-x??22?root?root??4096?Sep?27?14:51?var? ------------------------------------------------ 創建目錄:mkdir mkdir 目錄名 -p 如果父目錄不存在,則先創建父目錄 -v 顯示創建過程 例: [root@www?~]#?mkdir?/knight/test? mkdir:?cannot?create?directory?`/knight/test':?No?such?file?or?directory? /knight不存在,要想創建/knight/test,你可以先創建/knight,在創建test目錄,否則就需要加上選項了。 例如: [root@www?~]#?mkdir?-pv?/knight/test? mkdir:?created?directory?`/knight'? mkdir:?created?directory?`/knight/test'? 也可以同時創建多個目錄 例如: [root@www?~]#?mkdir?a?b?c?d? [root@www?~]#?ls? a????????????????c????????install.log?????????nginx? anaconda-ks.cfg??d????????install.log.syslog??test.txt? b????????????????Desktop?? 刪除目錄 rmdir 目錄名,只能刪除空目錄 例: [root@www?~]#?rmdir?/knight/test/? 移動目錄或文件,重命名 mv 源文件 目標文件 例如: [root@www?~]#?mv?a?b?c?d? [root@www?~]#?ls? anaconda-ks.cfg??install.log?????????nginx? d????????????????install.log.syslog??test.txt? Desktop?? 我們可以進入到d目錄中看一下 [root@www?~]#?cd?d? [root@www?d]#?ls? a??b??c? mv命令也可以重命名 例如: [root@www?~]#?mv?d?test? [root@www?~]#?ls? anaconda-ks.cfg??install.log.syslog??test? Desktop??????????mbox????????????????test.txt? install.log??????nginx???? 我把d目錄改名為test了。 ------------------------------------------- 當你使用ls -l時,你會看到第一位有的是"-",有的是"d",有的是"l"等。那這些究竟表示什么?這些表示的是文件的類型。 文件的類型: 1普通文件 (-) 2目錄文件 (d) 3符號鏈接文件 (l) 4設備文件? 塊設備(b),能夠隨機存取 字符設備(c),線性設備,串行的 5套接字文件(s) 6命令管道文件(p) 每一行第一個空格后面的數字表示的是被硬鏈接的次數,對于新創建的普通文件而言是1次,對于新創建的目錄是2次。 普通文件的創建 創建一個空文件:touch 文件名 其實touch的主要作用是修改文件的時間標簽 這里要提到元數據,所謂元數據就是描述文件屬性的,不屬于文件內容的一部分。 查看元數據信息:stat [root@www?~]#?touch?knight? [root@www?~]#?stat?knight? ??File:?`knight'? ??Size:?0???????????Blocks:?8??????????IO?Block:?4096???regular?empty?file? Device:?fd00h/64768d????Inode:?66926???????Links:?1? Access:?(0644/-rw-r--r--)??Uid:?(????0/????root)???Gid:?(????0/????root)? Access:?2011-10-13?11:51:35.000000000?+0800? Modify:?2011-10-13?11:51:35.000000000?+0800? Change:?2011-10-13?11:51:35.000000000?+0800? Access:最近一次被訪問的時間 Modify:修改文件內容的時間 Change:改變文件屬性的時間 使用touch命令修改元數據信息 我們來修改一下修改文件內容的時間,時間格式為年月日時分.秒 [root@www?~]#?touch?-m?-t?1110011001.00?knight? 我們再來查看一下knight文件的元數據信息 [root@www?~]#?stat?knight? ??File:?`knight'? ??Size:?0???????????Blocks:?8??????????IO?Block:?4096???regular?empty?file? Device:?fd00h/64768d????Inode:?66926???????Links:?1? Access:?(0644/-rw-r--r--)??Uid:?(????0/????root)???Gid:?(????0/????root)? Access:?2011-10-13?11:51:35.000000000?+0800? Modify:?2011-10-01?10:01:00.000000000?+0800? Change:?2011-10-13?11:53:02.000000000?+0800? ------------------------------------------------ 刪除文件:rm rm 文件名 -i 刪除前詢問 -r 刪除目錄 -f 強制刪除 例如: [root@www?~]#?ls? anaconda-ks.cfg??install.log.syslog??nginx?????wordpress-3.0.4-zh_CN.zip? Desktop??????????knight??????????????test? install.log??????mbox????????????????test.txt? [root@www?~]#?rm?-rf?test? [root@www?~]#?ls? anaconda-ks.cfg??install.log.syslog??nginx? Desktop??????????knight??????????????test.txt? install.log??????mbox????????????????wordpress-3.0.4-zh_CN.zip? 復制文件:cp cp 源文件 目標文件 例如: [root@www?~]#?cp?/etc/inittab?./? 查看一下 [root@www?~]#?ls? anaconda-ks.cfg??install.log?????????mbox??????wordpress-3.0.4-zh_CN.zip? Desktop??????????install.log.syslog??nginx? inittab??????????knight??????????????test.txt? -r 復制目錄 -i 詢問 -p 保留原有文件的屬主,屬組 -a=-rp 例如:cp a b c d,此時最后一個必須為目錄。 該你動手實踐了。
?
轉載于:https://blog.51cto.com/nulix/687716
總結
以上是生活随笔為你收集整理的目录管理,创建、删除、移动目录,创建、删除、移动文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: zabbix常用key和自定义key的讲
- 下一篇: memcached完全剖析