格式說明:
操作
概念
指令
說明及舉例
五
索引節點
原資料儲存在inode table表中
每個檔案或目錄都有一個獨立的inode number(節點編号在一個分區中是唯一的,每個分區都有自己的inode table)
ls -i 檢視節點編号
硬連結
ln f1 dir/f11 為f1檔案建立硬連結并放到dir檔案夾下,名稱為f11.跨裝置跨分區不能建立。
連結數=檔案名字的數量,為一個檔案建立多個硬連結相當于給一個檔案取了多個名字,修改任何一個檔案都等于全部修改,删除其中一個硬連結,隻相當于删除了這檔案的名字之一
目錄不能建立硬連結
軟連接配接(符号連結)
ln -s f2 f2kuaijiefangshi 為f2檔案建立軟連接配接f2kuaijiefangsh
給檔案建立軟連接配接,相當于給檔案建立快捷方式,寫軟連結的時候,檔案的路徑必須寫清楚(相對于軟連接配接的路徑,而不是目前工作目錄的路徑),軟連接配接的路徑無所謂
inode表結構
前12個是資料塊,每個存4k,第13個是指針快,不直接指向資料塊,可存4kx1024=4M檔案;第14個是二重指針塊,後面跟兩個指針塊,可存4kx1024x024=4G檔案,以此類推.
df -i 查詢每個分區最大節點數及已用節點數量
節點号消耗完也會提示磁盤空間滿了
練習:解釋cp rm mv指令的系統背景動作
file指令
flie -f +文檔 把想檢視的檔案目錄寫到文檔裡,可以都檢視
标準輸入和輸出
标準輸出、錯誤
标準預設輸出在目前視窗,标準輸出錯誤也在目前視窗
重定向
ls > /dev/pts/0 在pts0視窗上顯示
ls > /testdir/ls.log 讓輸出内容重定向到ls.log檔案中(沒有這個檔案會建立,如果存在會覆寫)
ls >> /testdir/ls.log 将資訊寫到ls.log檔案中,保留原有内容
>是重定向标準輸出的正确結果的; >=1>
2>是重定向錯誤資訊的
ls /dev /ddd > /tesedir/dui.log 2> /testdir/cuo.log 将指令中正确資訊寫到dui.log ,錯誤資訊寫到cuo.log
ls /dev /ddd &> /tesedir/all.log 把指令中所有标準輸出都寫到all.log裡
以上指令是覆寫
以下指令是累加
ls /dev /ddd >> /tesedir/dui.log 2>> /testdir/cuo.log 将指令中正确資訊寫到dui.log ,錯誤資訊寫到cuo.log
ls /dev /ddd &>> /tesedir/all.log 把指令中所有标準輸出都寫到all.log裡
多條指令重定向:用括号把多條指令括起來
标注輸入重定向
cat < f1 将f1裡的資訊輸出
cat < f1 > f2 将f1裡的資訊輸出到f2裡
cat f1 f2 > f3 将f1 f2的内容輸出到f3裡
mail -s hello wang 回車後寫内容,結束按.
wang 使用者 輸入mail
mail -s hello wang < f1.txt 将f1.txt中内容作為正文發送
多行重定向
cat <<E >f1 直到打結束的E 才重定向到f1中 (<<+關鍵字開始。再出現獨立的一行關鍵字結束)
tr指令
轉換和删除字元
tr 'a-z' 'A-Z' 将所有輸入的小寫字母轉換成大寫字母
tr 'a-z' 'A-Z' < f1 将f1 檔案中所有小寫字母轉換為大寫
r 'a-z' 'A-Z' < f1 > f2 将f1 檔案中所有小寫字母轉換為大寫并存到f2中(f1中内容不變)
tr 'abc' 'xyz'
tr 'abc' 'xy'
tr 'ab' 'xyz'
tr -c 'a-z' 取反
tr -d 'abc' 有a/b/c的都幹掉
tr -d -c 'abc' 'xxx' < f1 将檔案f1 中的除了abc以外的字元都換成xxx
tr -s ‘x’ 合并重複的x為1個
tr -d '\n' < f1 将f1檔案中的換行都幹掉
tr ' ' '\n' <f1 将f1檔案中的空格轉換城換行
mail -s help root <<end
Hello,I am
the system version is here,please help me to check it,thanks!
whoami
end
< /etc/issue
管道
管道接收的是标準輸出,不能是标準錯誤
練習用管道讀文檔發郵件
ls /err |& tr 'a-z' 'A-Z' 不管前面是否是錯誤,都處理(|&=2>&1)
ls |tee f2 将ls輸出内容存到f2檔案,但是前台也顯示
重定向輸出資訊不想看的話最後加 /dev/null
使用者、組和權限
組的類别
使用者的主要組-主組
使用者必須屬于一個且隻有一個主組
組名同使用者名,且僅包含,,,
Linux中預設建立一個使用者wang,就會建立一個wang組,組裡隻有wang一個
檢視指令 id
Linux使用者群組的配置檔案
/etc/passwd
/etc/shadow
例:m:$6$8BhKzFY7Pl02tuZK$M9ppDJCf6Y8sSx/kFGbmG6Mat/Z2JE.OJ6Mao.izesjpwW0t5MiFxxrtzwLrAwfP6/xvlZ7MG8Y4LeGIAd6Me0:17001:0:99999:7:::
$6=sha512加密算法 $1=md5加密算法 後面兩個$中間的玩意($8BhKzFY7Pl02tuZK$)是加的延,目的是即使相同密碼加密後也看不出來是相同 ;17001代表時間,後面的0表示随時可以改密碼,改成3就是3天以後才能改。後面難道99999代表有效期,7代表提前7天通知;倒數第二個可以填個數,代表此賬号的有效期,到時間自動鎖定,格式也是類似17001天。
轉載于:https://blog.51cto.com/11907399/1832974