歡迎您光臨本站 註冊首頁

linux文件許可權以及目錄結構

←手機掃碼閱讀     火星人 @ 2014-03-08 , reply:0

一切皆文件.
通過配置文件保存程序的配置信息,而配置文件通常是純文本文件.
嚴格區分大小寫,不以文件名後綴判斷文件類型

如何登陸linux:
工作目錄,主目錄

linux只有一個根目錄.
終端中輸入pwd 顯示當前的工作目錄,cd :change directory 切換目錄
cd name 切換至name用戶;
cd - 切換至剛才的用戶(返回鍵)
管理員:#
用戶:$
echo $ SHELL 顯示當前shell是什麼
選項用於定義命令的執行方式,使用 - 來引導,短選項通常只有一個字元,使用一個橫線引導,例: ls -l
長選項通常是一個完整意義的單詞或組合,使用兩橫線引導,例:--help
短選項可以組合 長選項不可以組合; 例:-l -a = -al


參數:
ctrl c鍵使用取消命令的執行
在一個命令行執行多條命令,使用 ; 隔開命令,例
ls -alh /root ; ls -alh /usr

命令的分類:內部命令;外部命令
內部命令 :隸屬於某個已經打開的shell程序的命令
外部命令 : 在系統某個路徑下存在與命令名稱對用的可執行文件的命令,例which ls

用type commond 用於區別命令是否為外部和內部,例type ls

ls --list
ls /root -alh

如何獲得命令幫助:
外部命令獲取幫助: --help
內部命令獲取幫助:help command 例 help ls
查看命令手冊:man command 例 man ls
查看命令的信息頁:info command

命令自身附帶的文檔:/usr/share/doc

redhat documentation
google
如何使用man查看命令手冊:
man 【chapter】 <command>
chapter章節:按命令類型歸類,8個章節:
用戶命令;
系統調用;


庫調用;
特殊文件說明;
文件格式(通常指配置文件);
遊戲;
雜項;
管理命令;


whatis command 例 whatis ls 然後 man 1(章節) ls

man 1 ls
man 1 man

makewhatis(生成whatis命令)


man -M /root/某文件

FILES 用來說明此命令的配置文件

EXAMPLES 提供使用樣例

翻屏:
space 鍵
enter 鍵
G 跳至文件尾
1G跳至文件首

字元串搜索:
/ keyword n/N :從游標所在處向後搜索
?keyword :從游標所在處向前搜索

命令使用格式中字元的意義:
【】:可選
<>:必選
... :可以有多個
a|b|c :多選一
{}:分段

只顯示時間:date %T 或者 date %H/%M/%S
只顯示日期:date %F/D 或者date %Y/%m/%s
全部顯示:date
修改日期和時間:date -s '2011/01/05 12:12'
單獨修改日期:date -s 2011/05/01 可能會修改時間歸零
單獨修改時間:date -s 12:12


修改語言:export LANG= en

kbase.redhat.com 紅帽官網的知識庫


ls -alh 顯示詳細信息
-h 顯示文件大小信息
-l 以列表顯示信息
-a 顯示所有文件,包括隱藏文件
ls -ld 顯示目錄本身的信息 而不顯示目錄內子目錄的信息

ls -R 顯示本身目錄連同子目錄的所有文件內容一塊顯示


文件許可權組成:文件所有者許可權 所有者所屬的組許可權 其他用戶的許可權 文件被硬連接次數 文件所有者 所有者所屬的組 文件大小(位元組) 文件最近一次被修改的時間 文件名稱
例:-rw-rxrwx 2 root root 1234 feb 2 2012 wangzhen.txt

linux 文件類型:
d表示目錄文件;


l表示連接文件(軟連接);
- 表示普通文件;
特殊文件:
c表示字元設備文件;
b表示塊設備文件;(例硬碟)
p表示管道文件
s表示套接字文件

stat 文件名 可知文件的詳細時間戳;

file 文件的路徑 可以判斷文件的內容類型

file /root/Desktop/wangzhen/wangzhen.txt 可以判斷文件的內容類型
文件類型為:ASCII text
(ASCII碼的純文本文件)


linux需要遵循FHS:文件層次標準!

linux目錄結構:
一級子目錄:
/bin,可執行的二進位文件,非管理類的命令,普通用戶和管理員均可使用的命令;
/sbin,管理類的命令,通常只有管理員才能使用;
/lib,庫文件;
/etc,配置文件;
/etc/sysconfig,服務額外配置文件及網路設備配置文件
/etc/init.d,服務的管理腳本存放位置
/usr,系統資源;
   /usr/bin
   /usr/sbin
   /usr/etc
   /usr/lib
/usr/include,頭文件
   /usr/local(第三方文件)
     /usr/local/bin
/usr/local/sbin
/usr/local/etc
/usr/local/lib

/boot,引導文件,系統啟動,kernel,bootloader(grub)

/dev ,設備文件所在目錄;例/dev/dvd;
/home/username,
/root
/lost found,類似與臨時文件的目錄;
/media,掛載點,掛載攜帶型設備,例u盤
例/media/cdrom;
/mnt,掛載點,掛載穩定的文件
/tmp 臨時文件,但是一般用戶不可刪除
/misc,雜項;
/opt,可選的,有些第三方文件把這個目錄當成默認安裝位置,例如Nessus,Oracle
/proc,偽目錄,裡面的文件是假的,不存在的文件,是在內存中的文件,系統啟動后才會產生.內存中的內核相關信息映射!!


/sys,比如磁碟這樣的存貯設備或者某些匯流排型的設備的驅動相關的信息.
/srv,服務運行中的中間文件,臨時文件存放位置.
/var,可變的,資料庫文件、日誌文件、郵件文件存放位置.
/var/log
/var/run
/var/mail

文件和目錄管理的相關命令:
pwd
cd
ls
創建一個空白文件:touch、vi、vim;
touch參數:
-a
-m
-t【cc】MMDDhhmm.ss
-c
vi 文件名稱
vim 文件名稱

stat 文件名,顯示文件的時間戳詳細信息;

Access:訪問時間
Modify:最近一次修改<內容改變>時間
change:最后一次改變文件的屬性發生改變時間

[root@station60 ~]# man touch
[root@station60 ~]# touch /root/Desktop/wangzhen/wangzhen.txt
[root@station60 ~]# stat /root/Desktop/wangzhen/wangzhen.txt
File: `/root/Desktop/wangzhen/wangzhen.txt'
Size: 9 Blocks: 16 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 1666469 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-01-02 02:54:52.000000000 0800
Modify: 2011-01-02 02:54:52.000000000 0800
Change: 2011-01-02 02:54:52.000000000 0800

複製文件:
目標是目錄,則複製后是源文件;
目標是文件:
cp /root/wangzhen.txt /root/Desktop/wangzhen/wz
複製文件wangzhen.txt 並且重命名為wz.txt
-f ,強制force
-i ,互動式詢問操作
-p,連同源文件屬性一同複製(備份常用)
-r,持續複製子目錄
-a

-a=-pdr


su:switch user,切換用戶
su -l username(完全切換)
su - username(完全切換)
su(半切換,保留原來用戶的信息和環境)


返回原來用戶,用exit

創建目錄:
mkdir 目錄名稱
-p 先創建指定目錄的父目錄再創建子目錄,例cp -p /root/x/y/z,xyz均沒有則先創建x、后y、后z,不加參數-p則無法創建這樣的目錄

-v 顯示創建的命令行展開(顯示創建過程)
/root/{a,b}= /root/a,/root/b

/root/{a,b}/c= /root/a/c, /root/b/c

/root/{a/c,b}=/root/a/c , /root/b

/root/{a,b}_{d,c}=/root/{a,d},/root/{a,c},/root/{b,a},/root/{b,c}

例子:創建一個iso//bin;iso//sbin;iso//var/log;iso//var/run;iso//etc/rc.d;iso//etc/rc.d/init.d;`iso//etc/repos.d;


[root@station60 wangzhen]# mkdir -pv iso/{/bin,/sbin,/var/log,/var/run,/etc/rc.d/init.d,/etc/repos.d}
mkdir: created directory `iso'
mkdir: created directory `iso//bin'
mkdir: created directory `iso//sbin'
mkdir: created directory `iso//var'
mkdir: created directory `iso//var/log'
mkdir: created directory `iso//var/run'
mkdir: created directory `iso//etc'
mkdir: created directory `iso//etc/rc.d'
mkdir: created directory `iso//etc/rc.d/init.d'
mkdir: created directory `iso//etc/repos.d'


刪除目錄:
rmdir:刪除一個空目錄;

rmdir -r:刪除目錄連同裡面文件刪除命令;

rmdir -f:強制 刪除不交互;

移動文件或者目錄:
mv /root/wangzhen.text /root/wz 即使用mv重命名

-f 強制移動
-i 互動式操作

命令替換作業:
創建一個以當前日期為文件後綴名的文件,形如myfile-2012-01-02.txt
(調用命令用反引號·或者用單引號‘’或者用$ ())

touch myfile-·date %F-%T·

touch myfile-$(date %H-%M-%S).txt

globing: 文件名通配

查找以myfile開頭的文件


*,?
*號用於匹配任意長度的任意字元
?號用於匹配任意單個字元

[]取給定範圍內的任意字元,myfile[abc]=myfilea myfileb myfilec
[^]取定給定範圍以外的任意單個字元
[:lower:]取定所有小寫字母任意字元
[:upper:]取定所有大寫字母任意字元
[:alpha:]取定所有大小寫字母任意字元
[:digit:]取定所有數字任意字元
[:alnum:]既有數字也有字母
[:punct:]取定所有標點符號的任意字元


命令歷史:
history

清楚命令歷史:
history -c 清楚所有命令
history -n 3 顯示最近的3條命令
history -w
history -a
history -d 3 刪除第三條命令
history -c -d 3 刪除從第3條命令開始以後的命令

echo $HISTSIZE 查看緩衝區內的所能存儲的命令條數
echo $HISTFILESIZE 查看~/.bash_history 內的命令條數

!n 即執行history中的第n條命令
!string(某字元命令) 執行最近一次某字元開頭的命令
!! 重複執行上一條命令
先按ESC再按.號 應用上一條命令的最后一個參數
alt . 應用上一條命令的最后一個參數
例如:ls -al/root/wangzhen,按下這兩個快捷鍵會引用/root/wangzhen這個參數;

HISTCONTROL=
export HISTCONTROL=
ignorespace  忽略以空格開頭的命令 
ignoredups    忽略重複命令
ignoreboth     忽略這兩個命令,即這兩條命令都生效


如果想查看一個命令的幫助信息 先要看他是不是內置命令,調用type command,若是內置命令command is a shell builtin,則用command --help查看命令幫助;為外置命令則用man command!

本文出自 「Linux交流」 博客,請務必保留此出處http://wz102.blog.51cto.com/3588520/772996


[火星人 ] linux文件許可權以及目錄結構已經有633次圍觀

http://coctec.com/docs/linux/show-post-46974.html