1. 程式人生 > >【Linux學習二】檔案系統

【Linux學習二】檔案系統

環境
  虛擬機器:VMware 10
  Linux版本:CentOS-6.5-x86_64
  客戶端:Xshell4
  FTP:Xftp4

一、檔案系統 一切皆檔案
Filesystem Hierarchy Standard(檔案系統層次化標準)
/boot: 系統啟動相關的檔案,如核心、initrd,以及grub(bootloader)
/dev: 裝置檔案
/etc:配置檔案
/home:使用者的家目錄,每一個使用者的家目錄通常預設為/home/USERNAME
/root:管理員的家目錄;
/lib:庫檔案
/media:掛載點目錄,移動裝置(比如行動硬碟)
/mnt:掛載點目錄,額外的臨時檔案系統(比如DVD)
/opt:可選目錄,第三方程式的安裝目錄
/proc:偽檔案系統,核心對映檔案 (0-標準輸入 1-標準輸出 2-標準錯誤輸出)
/sys:偽檔案系統,跟硬體裝置相關的屬性對映檔案
/tmp:臨時檔案, /var/tmp
/var:可變化的檔案
/bin: 可執行檔案, 使用者命令
/sbin:管理命令
/usr:如果不指定軟體的安裝目錄 會自動安裝到該目錄
/selinux和/lost+found 不用管 平常不要動就可

二、常用磁碟操作命令
df:顯示磁碟使用情況,可以檢視空間使用率
du:顯示檔案系統使用情況,檢視某個檔案或者資料夾的大小

[[email protected] /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 97G 819M 91G 1% /
tmpfs 495M 0 495M 0% /dev/shm
/dev/sda1 194M 28M 157M 15% /boot
/dev/sr0 398M 398M 0 100% /mnt

[[email protected] /]# cd tmp
[[email protected]
ode1 tmp]#
du -h 4.0K ./.ICE-unix 8.0K .

 

掛載檔案:將CD裝置裡的ISO檔案掛載到檔案系統
mount /dev/cdrom /mnt

[[email protected] /]# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only
[[email protected] /]# cd /mnt
[[email protected] mnt]# ls
CentOS_BuildTag GPL Packages RPM
-GPG-KEY-CentOS-6 RPM-GPG-KEY-CentOS-Testing-6 EFI images RELEASE-NOTES-en-US.html RPM-GPG-KEY-CentOS-Debug-6 TRANS.TBL EULA isolinux repodata RPM-GPG-KEY-CentOS-Security-6

 

ls:顯示目錄,可以檢視多個目錄,先展示最上層的目錄,同級的按照目錄名排序
ls -l
從左到右依次展示
(1)檔案型別:
-:普通檔案 (f)
d: 目錄檔案
b: 塊裝置檔案 (block) 可以切割
c: 字元裝置檔案 (character) 不可切割
l: 符號連結檔案(symbolic link file)
p: 命令管道檔案(pipe)
s: 套接字檔案(socket)
(2)檔案許可權:9位,每3位一組,3組 許可權(U,G,O)每一組:rwx(讀,寫,執行), r--
(3)檔案硬連結的次數
(4)檔案的屬主(owner)
(5)檔案的屬組(group)
(6)檔案大小(size),單位是位元組
(7)時間戳(timestamp):最近一次被修改的時間
(8)目錄或者檔名


樹形展示目錄,tree
yum install tree -y

cd:切換工作目錄
pwd:顯示當前工作目錄
mkdir:建立目錄 -p可以建立多層目錄 {}建立多個目錄

[email protected] src]# mkdir -p a/b/c
[[email protected] src]# tree
.
└── a
└── b
└── c

3 directories, 0 files

[[email protected] src]# mkdir a/{x,y}dir
[[email protected] src]# tree
.
└── a
├── b
│   └── c
├── xdir
└── ydir

5 directories, 0 files

 

rm:刪除 -rf 遞迴刪除檔案和目錄
cp:拷貝 -r 拷貝目錄
mv:移動或者重新命名
ln:硬連結,對同一個檔案的引用 加引數-s建立軟連線,軟引用 刪除原始檔,軟連線失效

[[email protected] src]# ln 1.txt 2.log
[[email protected] src]# ll
total 8
-rw-r--r--. 2 root root 13 Dec 21 01:37 1.txt
-rw-r--r--. 2 root root 13 Dec 21 01:37 2.log
[[email protected] src]# ln -s 1.txt 3.txt
[[email protected] src]# ll
total 8
-rw-r--r--. 2 root root 13 Dec 21 01:37 1.txt
-rw-r--r--. 2 root root 13 Dec 21 01:37 2.log
lrwxrwxrwx. 1 root root 5 Dec 21 01:39 3.txt -> 1.txt

 

stat:檢視元資料:訪問:access,修改:modify 檔案內容發生了改變,改變:change 改變元資料

[[email protected] src]# stat 1.txt
File: `1.txt'
Size: 13 Blocks: 8 IO Block: 4096 regular file
Device: 803h/2051d    Inode: 6166307 Links: 2
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2018-12-21 01:37:26.647505856 +0800
Modify: 2018-12-21 01:37:26.647505856 +0800
Change: 2018-12-21 01:38:09.047539091 +0800

 

touch:檔案不存在則建立檔案;檔案存在則重新整理元資料資訊

 

三、文字操作命令
1.檔案檢視命令
cat 檢視全部
more 逐頁檢視,按空格鍵顯示下一頁,按 b 鍵顯示前一頁,有搜尋字串的功能 啟動時就載入整個檔案
less 使用 [pageup] [pagedown]按鍵來往前往後翻看檔案,可搜尋 不止可以向下搜,也可以向上搜
head 從前看
tail 從後看

2.管道:前一個(左邊)簡單命令的標準輸出作為後一個(右邊)簡單命令的標準輸入
(1)|
(2)xargs
命令
1、在標準輸入中讀取到的內容!
2、自己的引數理解為一個字串
模仿shell,做blank切分,第一個子字串為命令
3、將步驟1的內容做為步驟2的命令的選項引數拼接起來
4、執行得到的結果

[[email protected] src]# echo "/" | xargs ls -l
total 90
dr-xr-xr-x. 2 root root 4096 Dec 20 02:12 bin
dr-xr-xr-x. 5 root root 1024 Dec 20 02:14 boot
drwxr-xr-x. 18 root root 3700 Dec 20 19:00 dev
drwxr-xr-x. 61 root root 4096 Dec 21 00:38 etc
drwxr-xr-x. 2 root root 4096 Sep 23 2011 home
dr-xr-xr-x. 8 root root 4096 Dec 20 02:12 lib
dr-xr-xr-x. 9 root root 12288 Dec 20 02:14 lib64
drwx------. 2 root root 16384 Dec 20 02:09 lost+found
drwxr-xr-x. 2 root root 4096 Sep 23 2011 media
dr-xr-xr-x. 7 root root 4096 Nov 29 2013 mnt
drwxr-xr-x. 2 root root 4096 Sep 23 2011 opt
dr-xr-xr-x. 85 root root 0 Dec 20 19:00 proc
dr-xr-x---. 2 root root 4096 Dec 20 02:22 root
dr-xr-xr-x. 2 root root 12288 Dec 20 02:14 sbin
drwxr-xr-x. 7 root root 0 Dec 20 19:00 selinux
drwxr-xr-x. 2 root root 4096 Sep 23 2011 srv
drwxr-xr-x. 13 root root 0 Dec 20 19:00 sys
drwxrwxrwt. 3 root root 4096 Dec 21 01:17 tmp
drwxr-xr-x. 13 root root 4096 Dec 20 02:10 usr
drwxr-xr-x. 17 root root 4096 Dec 20 02:10 var