一、建立目錄/datalinux
Make directory 建立目錄的命令mkdir filename,例子以下:運維
建立單個目錄linux運維
[root@oldboy ~]# mkdir /dataspa
遞歸建立多個目錄blog
[root@oldboy ~]# mkdir /data/oldboy/a/b排序
二、顯示/data目錄的信息,例子以下:遞歸
ls 顯示文件和目錄內容ip
-l long type 長格式顯示 –d顯示目錄的屬性信息 –h 以{K,G,M}格式顯示rem
-t 以文件的時間排序 –r倒序排列 –a顯示當前目錄的全部文件包括隱藏文件,所有顯示字符串
[root@oldboy /]# ls -ldh data/
drwxr-xr-x. 2 root root 4.0K Mar 25 11:50 data/
三、建立文件oldboy.txt,例子以下:
Touch建立空白文件,touch命令的主要做用是用來修改文件的時間戳
時間戳:(stat filename 查看文件的時間戳)
access查看文件內容的時間
modify 往文件中添加或者刪除文件的時間
change 改變文件權限書的修改時間
[root@oldboy data]# touch oldboy.txt
圖一
[root@oldboy data]# echo "I am studying linux." >> oldboy.txt
批量建立文件
[root@oldboy data]# touch test/stu{1..1000}
四、清屏,清除當前窗口的全部正在顯示的內容
[root@oldboy data]# clear
五、顯示oldboy.txt文件的內容
Cat 顯示文件的內容
[root@oldboy data]# cat oldboy.txt
I am studying linux.
>> 表明輸出重定向(追加到現有文件內容的後面不會清除已有的文件內容)
<< 表明輸入重定向(追加輸入重定向,後面跟上字符串)
[root@oldboy data]# cat >> a.txt << EOF #通常會在寫腳本中經常使用
> My name is guohua!
> My ages is 20!
> My sex man!
> EOF
[root@oldboy data]# cat a.txt
My name is guohua!
My ages is 20!
My sex man!
六、絕對路徑與相對路徑區別
圖二
(1)絕對路徑:一切都從/根目錄開始進行查找,稱之爲絕對路徑;例子以下:
[root@oldboy ~]# cd /etc/sysconfig/network-scripts/
(2)相對路徑:一切不從/根目錄開始的路徑稱之爲相對路徑;例子以下:
[root@oldboy network-scripts]# cat ../network
[root@oldboy data]# cd test/
七、xargs 從標準輸入中進行分組
從b.txt文件中輸入每行按兩個字段排序
[root@oldboy data]# xargs -n 2 < b.txt
1 2
3 4
5 6
7 8
9 10
11 12
13 14
15 16
17 18
19 20
八、cut按必定的規則提取文件中的內容
提取b.txt文件中的第一個字段,以空格爲分割
-d 分割符 –f 字段提取第一列 –c 按字符提取 –b按字節提取
[root@oldboy data]# cut -d ' ' -f1 b.txt
1
5
9
13
17
九、重定向特殊符號
圖三
>或>> filename 2>&1 等於 &>
2>&1表明輸出正確重定向作什麼操做輸出錯誤重定向就作什麼操做,例子以下:
[root@oldboy data]# echo "welcome to beijng." >> oldboy.txt 2>&1
[root@oldboy data]# cho "welcome to beijng." >> oldboy.txt 2>&1
至關於
[root@oldboy data]# echo "Welcome to guangzhou."&>> b.txt
輸出正確重定向與輸出錯誤重定向共同指向同一個文件a.txt
[root@oldboy data]# echo "welcome to shanghai." > a.txt 2> a.txt
十、cp拷貝文件與目錄
-r 遞歸複製(目錄)-p複製文件保持原有全部的屬性信息,非系統默認的信息
-a 至關於-pdr -d複製軟連接文件,而非源文件
[root@oldboy data]# cp oldboy.txt /tmp/
[root@oldboy data]# ls -l /tmp/
total 4
-rw-r--r--. 1 root root 70 Mar 25 16:59 oldboy.txt
-rw-------. 1 root root 0 Mar 24 21:34 yum.log
遞歸複製例子:
[root@oldboy data]# cp -r ../data/ /tmp/
保持源文件的全部屬性
[root@oldboy data]# cp -pr ../data/ /tmp/
連接文件拷貝
[root@oldboy data]# cp -d b.txt.bak /tmp/
[root@oldboy data]# ls -l /tmp/
total 8
lrwxrwxrwx. 1 root root 5 Mar 25 17:05 b.txt.bak -> b.txt
drwxr-xr-x. 3 root root 4096 Mar 25 14:52 data
-rw-r--r--. 1 root root 70 Mar 25 16:59 oldboy.txt
-rw-------. 1 root root 0 Mar 24 21:34 yum.log
拷貝-a 至關於-pdr例子
[root@oldboy /]# cp -a /data/ /tmp/
十一、mv(move)移動文件或者目錄到別的目錄
移動/data目錄到/root目錄下
[root@oldboy ~]# mv /data /root/
若是文件在同一目錄下,則進行文件的重命名操做
[root@oldboy data]# mv a.txt.bak a.txt1
十二、rm(remove)刪除文件或者目錄
刪除文件,例子以下:
[root@oldboy data]# rm oldboy.txt
rm: remove regular file `oldboy.txt'? y
遞歸刪除目錄下的文件,-r 遞歸刪除 –f 強制刪除
[root@oldboy /]# rm -rf /tmp/data/
1三、find查找文件、目錄等內容
查找類型爲文件f(file),-name文件名字 –print打印輸出
[root@oldboy data]# find . -type f -name "a.txt"
./a.txt
[root@oldboy data]# find . -type f -name "a.txt" -print
./a.txt
查找文件爲oldboy.txt
[root@oldboy data]# find /data/ -type f -name "oldboy.txt"
/data/oldboy.txt
刪除oldboy.txt
[root@oldboy data]# find /data/ -type f -name "oldboy.txt" -exec rm {} \;
重命名oldboy.txt.bak爲oldboy.txt
[root@oldboy data]# find /data/ -type f -name "oldboy.txt.bak" -exec mv {} oldboy.txt \;
查找全部以.Txt結尾的文件,按一行排列
[root@oldboy data]# find /data/ -type f -name "*.txt" | xargs
/data/b.txt /data/oldboy.txt /data/a.txt
查找全部以.Txt結尾的文件,按兩行排列
[root@oldboy data]# find /data/ -type f -name "*.txt" | xargs -n 2
/data/b.txt /data/oldboy.txt
/data/a.txt
查找全部以.Txt結尾的文件,按兩行排列並刪除
[root@oldboy data]# find /data/ -type f -name "*.txt" | xargs rm –f
[root@oldboy data]# rm –f /data/b.txt /data/oldboy.txt /data/a.txt
Moditify time時間段分析:
-mtime + num表明num天之前的數據
-mtime num 表明 第num天的數據
-mtime – num表明最近num天的數據
查找/var/log目錄,類型爲文件f(file) ,名稱爲*.log結尾,修改時間爲1天之前的文件
[root@oldboy log]# find /var/log/ -type f -name "*.log" -mtime +1 | xargs
查找/var/log目錄,類型爲文件f(file) ,名稱爲*.log結尾,修改時間爲第1天的文件
[root@oldboy log]# find /var/log/ -type f -name "*.log" -mtime 1 | xargs
查找/var/log目錄,類型爲文件f(file) ,名稱爲*.log結尾,修改時間爲最近1天的文件
[root@oldboy log]# find /var/log/ -type f -name "*.log" -mtime -1 | xargs
/var/log/audit/audit.log /var/log/anaconda.ifcfg.log /var/log/anaconda.program.log /var/log/prelink/prelink.log /var/log/dracut.log /var/log/anaconda.log /var/log/anaconda.yum.log /var/log/anaconda.storage.log /var/log/yum.log /var/log/boot.log
刪除/var/log目錄,類型爲文件f(file) ,名稱爲*.log結尾,修改時間爲最近1天的文件
[root@oldboy log]# find /var/log/ -type f -name "*.log" -mtime -1 | xargs rm –f
查看最近1天以.log結尾的文件是否還存在
[root@oldboy log]# ls -l
total 660
-rw-------. 1 root root 145729 Mar 24 21:42 anaconda.syslog
-rw-------. 1 root root 35064 Mar 24 21:42 anaconda.xlog
drwxr-x---. 2 root root 4096 Mar 25 18:18 audit
-rw-------. 1 root utmp 384 Mar 24 22:22 btmp
drwxr-xr-x. 2 root root 4096 Mar 24 22:23 ConsoleKit
-rw-------. 1 root root 9172 Mar 25 18:10 cron
-rw-r--r--. 1 root root 89640 Mar 25 09:30 dmesg
-rw-r--r--. 1 root root 89640 Mar 24 22:22 dmesg.old
-rw-r--r--. 1 root root 146000 Mar 25 17:55 lastlog
-rw-------. 1 root root 640 Mar 25 09:31 maillog
-rw-------. 1 root root 206021 Mar 25 10:32 messages
drwxr-xr-x. 2 ntp ntp 4096 Nov 24 2013 ntpstats
drwxr-xr-x. 2 root root 4096 Mar 25 18:18 prelink
drwxr-xr-x. 2 root root 4096 Mar 25 09:30 sa
-rw-------. 1 root root 4376 Mar 25 17:55 secure
-rw-------. 1 root root 0 Mar 24 21:39 spooler
-rw-------. 1 root root 0 Mar 24 21:37 tallylog
-rw-rw-r--. 1 root utmp 18048 Mar 25 17:55 wtmp