/bin中 - 用戶二進制文件
包含二進制可執行文件。
在單用戶模式下,你需要使用的常見Linux命令都位於此目錄下。系統的所有用戶使用的命令都設在這裏。
例如:ps、ls、ping、grep、cp
/sbin目錄 - 系統二進制文件
就像/bin,/sbin同樣也包含二進制可執行文件。
但是,在這個目錄下的linux命令通常由系統管理員使用,對系統進行維護。例如:iptables、reboot、fdisk、ifconfig、swapon命令
/opt - 可選的附加應用程序
opt代表可選的。
包含從個別廠商的附加應用程序。
附加應用程序應該安裝在/opt/或者/opt/的子目錄下。
/mnt - 掛載目錄
臨時安裝目錄,系統管理員可以掛載文件系統。
ls –a 顯示當前目錄中的所有文件,包含隱藏文件
ls -al
echo "~~" > e.txt 輸出到e.txt
pwd 顯示當前目錄
cat 打印文件內容 可以多次打印
cat t.txt t1.txt t2.txt
cat t.txt t1.txt t2.txt >sub.txt 輸出到一個文件中
./本目錄
cat ./*.txt >sub.txt 將目錄下的所有合併爲一個
head 命令與 tail 相對
less 分頁輸出 空格鍵分頁
">" 是輸出到文件中, 如果文件存在, 則原來的內容被清空, 不存在則創建文件, 比如
ls > filelist.txt
">>"是把輸出追加到文件中, 如果文件存在, 追加到末尾, 不存在則創建文件
file temp.txt查看文件類型
例如,如下所示,Temp.txt 文件類型爲text,編碼爲UTF-8 Unicode
ch(改變)mod 777 x.txt
ch(改變)own(所有者) root x.txt
管道符號,是unix功能強大的一個地方,符號是一條豎線:"|",
用法: command 1 | command 2 他的功能是把第一個命令command 1執行的結果作爲command 2的輸入傳給command 2,
例如:
ls -l | more
該命令列出當前目錄中的任何文檔,並把輸出送給more命令作爲輸入,more命令分頁顯示文件列表。
又如 rpm -aq | less
假設last -n 5的輸出如下
[root@www ~]# last -n 5 <==僅取出前五行
root pts/1 192.168.1.100 Tue Feb 10 11:21 still logged in
root pts/1 192.168.1.100 Tue Feb 10 00:46 - 02:28 (01:41)
root pts/1 192.168.1.100 Mon Feb 9 11:41 - 18:30 (06:48)
dmtsai pts/1 192.168.1.100 Mon Feb 9 11:41 - 11:41 (00:00)
root tty1 Fri Sep 5 14:09 - 14:10 (00:01)
如果只是顯示最近登錄的5個帳號
#last -n 5 | awk '{print $1}'
root
root
root
dmtsai
root
awk工作流程是這樣的:讀入有'\n'換行符分割的一條記錄,然後將記錄按指定的域分隔符劃分域,填充域,$0則表示所有域,$1表示第一個域,$n表示第n個域。默認域分隔符是"空白鍵" 或 "[tab]鍵",所以$1表示登錄用戶,$3表示登錄用戶ip,以此類推。
Linux下查找文件的命令有兩個;locate 和 find
首先說下locate,locate這個命令是對其生成的數據庫進行遍歷(生成數據庫的命令:updatedb),這一特性決定了用locate查找文件速度很快,但是locate命令只能對文件進行模糊匹配,在精確度上來說差了點,簡單介紹下它的兩個選項:
#locate
-i //查找文件的時候不區分大小寫 比如:locate –i passwd
-n //只顯示查找結果的前N行 比如:locate -n 5 passwd
下面重點說下find,find在不指定查找目錄的情況下是對整個系統進行遍歷查找
使用格式 : find [指定查找目錄] [查找規則] [查找完後執行的action]
這裏要注意的是目錄之間要用空格分開
[查找規則]
(1)根據文件名查找
# -name //根據文件名查找(精確查找)
# -iname //根據文件名查找,但是不區分大小寫
這裏另外介紹下文件名通配的知識
*表示 通配任意的字符
?表示 通配任意的單個字符
[ ] 表示 通配括號裏面的任意一個字符
(2),根據文件所屬用戶和組來查找文件
# -user //根據屬主來查找文件
# -group //根據屬組來查找文件
(3),根據uid 和 gid來查找用戶
#find /tmp -uid 500 //查找uid是500 的文件
#find /tmp -gid 1000 // 查找gid是1000的文件
(4),-a and -o and –not的使用
# -a 連接兩個不同的條件(兩個條件必須同時滿足)
wc命令用來打印文件的文本行數、單詞數、字節數等(print the number of newlines, words, and bytes in files)。在Windows的Word中有個“字數統計”的工具,可以幫我們把選中範圍的字數、字符數統計出來。Linux下的wc命令可以實現這個 功能。使用vi打開文件的時候,底下的信息也會顯示行數和字節數。
常用參數
格式:wc -l <file>
打印指定文件的文本行數。(l=小寫L)
以下參數可組合使用。
參數:-c, --bytes[喝小酒的網摘]http://blog.hehehehehe.cn/a/17301.htm
打印字節數(print the byte counts)
參數:-m, --chars
打印字符數(print the character counts)
參數:-l, --lines
打印行數(print the newline counts)
參數:-L, --max-line-length
打印最長行的長度(print the length of the longest line)
參數:-w, --words
打印單詞數(print the word counts)
使用示例
示例一
[root@jfht ~]# wc /etc/passwd
46 66 2027 /etc/passwd
行數 單詞數 字節數 文件名
[root@jfht ~]#
[root@jfht ~]# wc -l /etc/passwd
46 /etc/passwd
[root@jfht ~]# wc -cmlwL /etc/passwd
46 66 2027 2027 74 /etc/passwd
[root@jfht ~]# wc -cmlLw /etc/passwd
46 66 2027 2027 74 /etc/passwd
[root@jfht ~]# wc -wcmlL /etc/passwd
46 66 2027 2027 74 /etc/passwd
[root@jfht ~]#
//統計行數
xargs 本身雖然沒有多大用處,但在和其他命令相結合時,他的功能非常強大。
下面是另一個示例,我們希望計算這些文件中的行數:
file * | grep ASCII | cut -d":" -f1 | xargs wc -l