sed命令精講
cat工作原理
cat命令只想文件,把文件打開后,將文件中所有內容一次性讀到內存中,從內存里一次性輸出到屏幕上,此時可能存在內存裝不下的情況,因此cat命令只能查看小文件內容,不能讀取大文件,對於大文件來說是“禁用”的。
==================================================
sed命令=====增刪改查
增
在第5行上面增加一行
# sed '5i xxxxxx' test
在第5行下面增加一行
# sed '5a xxxxx' test
在第5行行首增加xxxxxxxx
# sed '5s#^#xxxxxxxxxx#' test
在第5行行尾增加xxxxxxxx
# sed '5s#$#xxxxxxxxx#' test
多行行首增加xxxxxx
# sed '5,10s#^#xxxxxxxx#' test
多行行尾增加xxxxxxx
# sed '5,$s#$#xxxxxxxx#' test
刪
刪除全部行
# sed 'd' test
刪除第二行
# sed '2d' test
刪除最后一行
# sed '$d' test
刪除第2-5行
# sed '2,5d' test
刪除第2行和第5行
# sed '2d;5d' test
替換
將a替換為b(只替換一次)
# sed 's#a#b#' test
將a全部替換為b
# sed 's#a#b#g' test
在源文件,將a全部替換為b
# sed -i 's#a#b#g' test
在源文件,將a全部替換為b,並對源文件進行備份
# sed -i.bak 's#a#b#g' test
查找
全部不輸出
# sed -n '' test
只輸出x字符
# sed -n '/x /' test
輸出20-30行內容
# sed -n '20,30p' test
輸出第20行和第30行
# sed -n '20p;30p' test
輸出最后一行
# sed -n '$p' test
輸出第2行到含a的行
# sed -n '2,/a/p' test
輸出含a的行到含b的行
# sed -n '/a/,/b/p' test
輸出含a或yy的行
# sed -n '/a|yy/p' test
========================
顯示行號
顯示3-5行行號及內容
# sed -n '3,5{p;=}' test | xargs -n2 ####‘=’顯示行號####
===========================
多行追加
在第二行上面追加兩行文本
sed '2a 1234\n2345' test
sed的反向引用
用sed命令抓ip地址
# ifconfig eth0 | sed -n '2p' | sed-r 's#.*addr:(.*)Bcast.*#\1#'
***********查看程序開機自啟動 chkconfig命令**************
五個服務必須開啟
network 網絡服務
crond 定時任務
sshd 遠程連接服務
sysstat 系統工具包
rsyslog 日志服務
**************************************************************
批量關閉3模式下的開機自啟動
# chkconfig | grep -v "sshd|crond|network|sysstat|rsyslog" | grep "3:on" | sed -r 's#(.*)0:.*#chkconfig \1 off#' | bash
批量命名文件
# find -type f -name "*_finished.jpg" | sed -r 's#^(.*)_finished(.*)#mv \0 \1\2#' | bash
seq命令
格式:seq 起始值 公差 結束值