Linux基礎:【文件管理(硬連接與軟鏈接 ,ls, cp, ....)和標準Io】

文件管理:
(1):文件系統
文件系統從根目錄下開始,用「/」表示
文件名是區分大小寫的
以.開頭的文件爲隱藏文件
文件有兩類數據
元數據:metadata
數據:data
(2):文件名規則
文件名最長225個字節
藍色----目錄
綠色----可執行文件
紅色----壓縮文件
淺藍色----連接文件
灰色------其餘文件
(3):文件系統結構
/boot:引導文件存放目錄
/bin:供全部用戶使用的基本命令
/sbin :管理類基本命令
/etc :配置文件目錄
/home :普通用戶家目錄
/root :管理員夾目錄
media :便攜帶移動設備掛載點
/mnt :臨時文件系統掛載點
/dev :設備文件與特殊文件儲存位置
/opt :第三方應用程序安裝位置
/tmp :臨時文件儲存位置
(4):文件類型
— :普通文件
d :目錄文件
b :塊設備
c : 字符設備
l :符號鏈接
p :管道文件
s :套結文件
(5):顯示當前工做目錄
pwd
-p 顯示真是路徑
-l 顯示連接文件【默認】node

絕對和相對路徑
絕對路徑
以正斜槓開始完整的文件的位置路徑linux

相對路徑
不以斜槓開始指定相對於當前工做目錄或某一個目錄位置ide

ls參數和用法 【查看】
用法:ls [options] [file_or_dirs]
參數:
ls -a : 包含隱藏文件
ls -l : 顯示額外的信息
ls -ld :目錄和符號連接信息
ls -1 :文件分行顯示
ls -S :按從打到小排序
ls-t :按mtime 排序
ls -U :按目錄存放順序顯示
ls -X :按文件後續排序code

:ls -a /root【顯示root下全部文件包括隱藏文件】排序

cp常見選項【拷貝**】
參數:
-i :覆蓋前提示
-r:遞歸複製目錄及內部全部內容
-a :歸檔
-f :強制
-u只複製原比目標更新文件遞歸

例:
(1):cp /root/dang.txt /data【拷貝root下的dang.txt文件到/data下】字符串

mv經常使用選項【移動和重命名】
參數:
-i :交互式
-f 強制
例:
(1):mv /root/dang.txt /data【移動root下的dang.txt文件到/data】
(2):mv /root/dang dang.txt 【把root下dang文件更名爲dang.txt】
(3):mv /root/dang.txt /data/dang 【把root下dang.txt更名爲dang並移動到/data下】input

rm經常使用選項【刪除】
參數:
-i :交互式
-f :強制刪除
-r :遞歸
例:
(1):rm -rf / 【危險命令 禁止使用】it

mkdir 【建立目錄】
-p :可自動建立所須要的個目錄 【遞歸建立】
-v :顯示詳細信息
-m :建立目錄時直接制定權限io

例:
(1):mkdir -p data/dri1/dri2【建立data/下dri1/下dri2文件】

rmdir 【刪除空目錄】
例:
(1):rmdir data 【刪除data 這個目錄,只能刪除空目錄】

硬連接與軟鏈接區別:

1.原理上:

硬連接(hard link):A是B的硬連接(A和B都是文件名),則A的目錄項中的inode節點號與B的目錄項中的inode節點號相同,即一個inode節點對應兩個不一樣的文件名,兩個文件名指向同一個文件,A和B對文件系統來講是徹底平等的。若是刪除了其中一個,對另一個沒有影響。每增長一個文件名,inode節點上的連接數增長一,每刪除一個對應的文件名,inode節點上的連接數減一,直到爲0,inode節點和對應的數據塊被回收。注:文件和文件名是不一樣的東西,rm A刪除的只是A這個文件名,而A對應的數據塊(文件)只有在inode節點連接數減小爲0的時候纔會被系統回收。

軟連接(soft link):A是B的軟連接(A和B都是文件名),A的目錄項中的inode節點號與B的目錄項中的inode節點號不相同,A和B指向的是兩個不一樣的inode,繼而指向兩塊不一樣的數據塊。可是A的數據塊中存放的只是B的路徑名(能夠根據這個找到B的目錄項)。A和B之間是「主從」關係,若是B被刪除了,A仍然存在(由於兩個是不一樣的文件),但指向的是一個無效的連接。

2.使用限制上:

硬連接:
a.不能對目錄建立硬連接,緣由有幾種,最重要的是:文件系統不能存在連接環(目錄建立時的".."除外,這個系統能夠識別出來),存在環的後果會致使例如文件遍歷等操做的混亂(du,pwd等命令的運做原理就是基於文件硬連接,順便一提,ls -l結果的第二列也是文件的硬連接數,即inode節點的連接數)

b:不能對不一樣的文件系統建立硬連接,即兩個文件名要在相同的文件系統下。

c:不能對不存在的文件建立硬連接,由原理便可知緣由。

軟連接:
a.能夠對目錄建立軟連接,遍歷操做會忽略目錄的軟連接。

b:能夠跨文件系統

c:能夠對不存在的文件建立軟連接,由於放的只是一個字符串,至於這個字符串是否是對於一個實際的文件,就是另一回事了

3.命令

硬連接:ln 源文件 連接名

軟連接:ln -s 源文件 連接名

標準I/O

(1):標準輸入和輸出
程序:指令+數據
讀入數據 :input
輸出數據 : output
(2):linux 給程序提供三種I/O設備
1:標準輸入 -0默認接受來自鍵盤的輸入
2:標準輸出 -1 默認輸出到在終端窗口
3:標準錯誤 -2 默認輸出到終端窗口

把標準輸出重定向到文件 【>文件將會被覆蓋】
2> 把標準錯誤重定向到文件 【原有基礎內容上,追加內容】
&>把全部輸出重定向到文件 【標準輸出和標準錯誤】
&> 覆蓋重定向
&> 追加劇定向
set -C 禁止將內容覆蓋以有文件,但可追加
set +c 容許覆蓋
| file 強制覆蓋

例:標準輸出和錯誤輸出各自定向至不一樣位置
命令 > /data/data.txt 2> /data/data.txt 【表示: 命令的標準輸出重定向到/data/data.txt這個文件,命令的標準錯誤重定向到/data/data.txt這個文件】
命令 > /data/data.txt 2 >&1 【表示: 命令的標準輸出和標準錯誤所有重定向到/data/data.txt這個文件】

***註釋:以上內容僅供參考***
相關文章
相關標籤/搜索