一,習題難點
過濾用:grep
替換用:sed
取什么:awk
1饱搏,使用awk取出系統(tǒng)的IP地址非剃,思路如下:
1.我要取的IP值在哪里
2.如何縮小取值范圍(行)
3.如何精確具體內(nèi)容(列)
例如:[root@oldboy ~]# ifconfig eth0 | grep "netmask" | awk '{print $2}'
172.16.1.53
2,sed的用法
(1)替換語法:sed -n '/匹配的內(nèi)容/對匹配的內(nèi)容做什么動作' 匹配字符串
示例:sed -n '/netmask/p'
[root@oldboy ~]# ifconfig eth0 | sed -n '/netmask/p' | awk '{print $2}'
172.16.1.53
(2)后向引用
[root@oldboy ~]# ifconfig eth0 | sed -n '2p' | sed -r 's#(^.*et )(.*)(net.*$)#\2#g'
172.16.1.53
二推沸,文件屬性
例如备绽,
-rw-r--r--. 1 root root 28 3月 9 11:38 oldboy.txt
-? ? 1:文件類型?
rw-r--r--? 2:權(quán)限
1 ? 3:表示硬鏈接數(shù)?
root ? 4:這個文件的擁有人是誰? ? ? (個人)
root? ? ? 5:這個文件的擁有組是誰 ? (家庭)
28 ? 6:文件大小
3月 9 11:38 7券坞、8、9:文件創(chuàng)建或修改的時間
oldboy.txt 10:文件的名稱
三肺素,文件類型
例如
當我們用[root@oldboy ~]# ll -d /etc/hosts /tmp /bin/ls /dev/vda /dev/tty1 /etc/grub2.cfg /dev/log
-rwxr-xr-x.? 1 root root 117680 10月 31 2018 /bin/ls
srw-rw-rw-.? 1 root root? ? ? 0 11月 13 23:03 /dev/log
crw--w----.? 1 root tty? ? 4, 1 11月 13 23:04 /dev/tty1
brw-rw----.? 1 root disk 253, 0 11月 13 23:03 /dev/vda
lrwxrwxrwx.? 1 root root? ? 22 6月? 4 2019 /etc/grub2.cfg -> ../boot/grub2/grub.cfg
-rw-r--r--.? 1 root root? ? 159 6月? 4 2019 /etc/hosts
drwxrwxrwt. 11 root root? 4096 3月? 10 11:21 /tmp
命令 ll或者ls -l的時候可以查看某個目錄或者文件下的文件恨锚,如下所示
-: 表示是一個文件( 普通文件、腳本文件倍靡、壓縮文件猴伶、命令文件)
s: socket,進程與進程之間的通訊協(xié)議
c: 字符設備(終端、鍵盤)
b: 塊設備(磁盤)
l: 軟鏈接(快捷方式)
d: 表示一個目錄
判斷文件的類型有三種方式
(1)file 命令是最精確的
(2)通過后綴判斷文件類型 塌西,但是Linux不區(qū)分后綴他挎,mp4 sh zip txt log........
(3)ll 看文件類型,但是無法定位文件的類型
四捡需,軟鏈接
軟鏈接應用步驟
1.準備網(wǎng)站1.1版本代碼
[root@oldboy ~]# mkdir /data/rainbow-v1.1 -p
[root@oldboy ~]# echo "123" > /data/rainbow-v1.1/index.html
#2.創(chuàng)建軟鏈接
[root@oldboy ~]# ln -s /data/rainbow-v1.1/ /data/rainbow
[root@oldboy ~]# ll /data/
總用量 0
drwxr-xr-x. 2 root root? 6 3月? 5 12:23 dir
lrwxrwxrwx. 1 root root 19 3月? 10 12:09 rainbow -> /data/rainbow-v1.1/
drwxr-xr-x. 2 root root 24 3月? 10 12:09 rainbow-v1.1
#3.檢查網(wǎng)站程序
[root@oldboy ~]# cat /data/rainbow/index.html
123
#4.新更新一個網(wǎng)站的程序代碼
[root@oldboy ~]# mkdir /data/rainbow-v1.2
[root@oldboy ~]# echo "456" > /data/rainbow-v1.2/index.html
#5.升級
[root@oldboy ~]# rm -f /data/rainbow && ln -s /data/rainbow-v1.2/ /data/rainbow
[root@oldboy ~]# cat /data/rainbow/index.html
456
#6.回退
[root@oldboy ~]# rm -f /data/rainbow && ln -s /data/rainbow-v1.1/ /data/rainbow
[root@oldboy ~]# cat /data/rainbow/index.html
123
硬鏈接與軟鏈接區(qū)別
1) ln命令創(chuàng)建硬鏈接办桨,ln -s命令創(chuàng)建軟鏈接。
2)目錄不能創(chuàng)建硬鏈接站辉,并且硬鏈接不可以跨越分區(qū)系統(tǒng)呢撞。
3)目錄軟鏈接特別常用,并且軟鏈接支持跨越分區(qū)系統(tǒng)。
4)硬鏈接文件與源文件的inode相同庵寞,軟鏈接文件與源文件inode不同狸相。
5)刪除源文件及其硬鏈接文件,整個文件會被真正的刪除捐川。