歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux技術

Linux 第四天: (07月28日) Linux文件管理

rootfs 根目錄文件系統 root filesystem
LSB Linux Standard Base
FHS 文件系統分層結構 Filesystem Hierarchy Standard
藍色表示 目錄
綠色表示 可執行文件
紅色表示 壓縮文件
淺藍表示 鏈接文件
灰色表示 其它文件
/和NUL外, 所以字符都有效
/boot 引導文件,內核文件(vmlinuz),引導加載器(bootloader,grub)
/bin 基本命令
/sbin 管理類的基本命令
/lib 基本共享庫,內核模塊文件(/lib/modules)
/lib64 64位系統的共享庫
/etc 配置文件
/home/USERNAME 普通用戶家
/root 管理員家
/media 移動設備掛載
/mnt 臨時文件系統掛載
/dev 設備和特殊文件存儲
b block device 隨機訪問
c character device 線性訪問
/opt 第三方應用程序安裝
/srv 系統運行所用數據
/tmp 臨時文件
/usr
bin 提供系統完整功能的應用程序
sbin 空
lib 32位
lib 64位
include C程序的頭文件
share 結構化獨立的數據
local 第三方應用程序安裝
bin, sbin, lib, lib64, etc, share
/var
cache 應用程序緩存數據目錄
lib 應用程序狀態信息數據
local 為/usr/local程序存儲數據
lock 鎖文件
log 日志文件
opt 為/opt下程序存儲數據
run 運行進程數據, 存儲pid文件
spool 應用程序數據池
tmp 保存系統兩次重啟之間臨時數據
/proc 輸出內核和進程的虛擬文件系統
/sys 輸出硬件設備的虛擬文件系統
/selinux security enhanced linux 安全策略信息
strace 跟蹤進程執行時的系統調用和所接收的信號
二進制程序
/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin
庫文件
/lib
/lib64
/usr/lib
/usr/lib64
/usr/local/lib
/usr/local/lib64
配置文件
/etc
/etc/DIRECTORY
/usr/local/etc
幫助文件
/usr/share/man
/usr/share/doc
/usr/local/share/man
/usr/local/share/doc
- 普通文件
d 目錄文件
b 塊設備
c 字符設備
l 符號鏈接文件
p 管道pipe
s 套接字文件socket
centos7 目錄變化
/bin
/usr/bin
/sbin
/usr/sbin
/lib
/usr/lib
/lib64
/usr/lib6
pwd printing working directory 當前shell CWD絕對路徑
cd.. 到上一級目錄
cd 到自己主目錄
cd- 到以前的目錄 == cd $OLDPWD
ls 列出目錄內容
ls -a 包含隱藏文件
ls -l 顯示額外信息
ls -R 遞歸通過
ls -ld 目錄和符號鏈接信息
ls -1 文件分行顯示
ls -S 從大到小排序
ls -u 配合-t顯示atime排序
ls -U 不排序按存放順序顯示
* 匹配零個或多個字符
? 匹配任何單個字符
~ 當前用戶家目錄
~username 用戶家目錄
~+ 當前工作目錄
~- 前一個工作目錄
[0-9] 一個數字
[a-z] 大寫和小寫字母
[A-Z] 大寫字母
[wxc] 匹配列表中任一字符
[^wxc] 匹配列表所有之外字符
man 7 glob
[:digit:] 任意數字0-9
[:lower:] 任意小寫字母
[:upper:] 任意大寫字母
[:alpha:] 任意大小寫字母
[:alnum:] 任意數字或字母
[:space:] 空格
[:punct:] 標點符號
stat 文件狀態
atime, access time 訪問時間 讀取文件內容
mtime, modity time 修改時間 改變文件內容
ctime, change time 改變世界 改變元數據
touch -a 僅改變atime
touch -m 僅改變mtime
touch -c 如果文件不存在則不創建
touch -t STAMP [[CC]YY]MMDDhhmm[ss]
cp -i 交互式
cp -r, -R 遞歸復制
cp -a 歸檔 等於 -dR --preserv=all
cp -d --no-derefernce --preserv=links 不復制源文件只復制鏈接
--preserv[=ATTR-LIST]
mode 權限
ownership 屬主屬組
timestamp
links
xattr
context
all
-p 等同--preserv=mode,ownership,timestamp
-v --verbose
-f --force
alias 顯示所有別名
alias NAME='VALUE' 定義別名, 當前shell有效
~/.bashrc 當前用戶永久有效
/etc/bashrc 所有用戶永久有效
source /path/to/config_file
./path/to/config_file
bash進程重新讀取配置文件
unalias 撤銷別名
"\COMMAND" 執行原命令
'COMMAND' 執行原命令
/PATH/COMMAND 執行原命令
rm -i 交互式
rm -f 強制刪
rm -r 遞歸刪
rm --no-preserve-root
rm -rf /
tree -d 只顯示目錄
tree -L level 指定顯示層級數
tree -P pattern 只顯示指定匹配路徑
mkdir -p 存在於不報錯可自動建各目錄
mkdir -v 顯示詳細信息
mkdir -m MODE 直接指定權限
rmdir -p 遞歸刪空目錄
rmdir -v 顯示詳細信息
rm -r 遞歸刪除目錄樹
inode表中包含文件系統所有文件列表
一個節點包含元數據
文件類型,權限,UID,GID
連接數(指向這個文件名路徑名稱個數)
該文件的大小和不同時間戳
指向磁盤上文件的數據塊指針
其它數據
mv源文件和目標文件在同一分區,
建立新文件名對應新目錄項
刪除舊文件名對應舊目錄項
不影響inode表(除時間戳)或磁盤位置,數據不移動
mv源文件和目標文件不在同一分區
mv 相當於cp和rm
ln filename [linkname]硬鏈接
不能跨分區
連接數遞增
刪文件時rm遞減鏈接數直到0
ln -s filename [linkname]軟連接
ls -l 顯示軟鏈接
可以對目錄, 可以跨分區,
大小是指向路徑字符串長度, 不改變inode數
file -b 不顯示文件名
file -c 顯示詳細過程
file -f 列出文件類型
file -F 指定分隔符替換":"
file -i 輸出mime字符串
file -L 查看軟連接文件類型
file -z 解讀壓縮文件
file --help 顯示在線幫助
STDIN -0 標准輸入
STDOUT -1 標准輸出
STDERR -2 標准錯誤輸出
> 把STDOUT重定向到文件
2> 把STDERR重定向到文件
&> 把所有輸出重定向到文件
> 後面一般跟文件 不是跟命令
> 覆蓋文件
set -C 禁止覆蓋但可追加強制覆蓋 >|
set +C 允許覆蓋
>> 追加
2> 覆蓋重定向錯誤輸出
2>> 追加重定向錯誤輸出
COMMAND > /file.out 2>error.out 對和錯分別輸出到不同處
&> 對和錯合並覆蓋
&>> 對和錯合並追加
COMMAND &> FILE
COMMAND > FILE 2> &1 順序很重要
COMMAND >> FILE 2> &1
find /etc -name passwd 2> /dev/null
() 合並多個程序的輸出
(cal 2016; cal 2017) > all.txt
tr -c 或 --complerment 取字符補集
tr -d 或 --delete 刪除字符
tr -s 或 --squeeze-repeats 將連續重復字符以單一表示
tr -t 或 --truncate-set1 將第一字符集轉化第二字符集
tr'a-z''A-Z' < /file 小寫轉大寫
tr -d abc < /file 刪abc任一
cat > file 按ctrl +d 離開, 用文件代替鍵盤輸入
cat > file << END
<<終止詞
mail -s "subject" user << END
>xxx
>END
COMM1 | COMM2 | COMM3 管道命令
STDERR默認不能用管道轉發, 可用2>&1 或 |&
最後一個命令在當前shell的子shell中執行
組合多種工具
ls | tr'a-z''A-Z'
COMMAND | less 逐頁顯示
echo "test" | mail \ -s "test" [email protected]
COMMAND | tee FILE | COMMAND2 重定向到多目標
COMMAND >> FILE 2>&1
COMMAND |& COMMAND2
COMMAND 2>&1 | COMMAND2
Copyright © Linux教程網 All Rights Reserved