十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
Linux操作系統(tǒng)是基于UNIX操作系統(tǒng)發(fā)展而來(lái)的一種克隆系統(tǒng),它誕生于1991 年的 [Linux桌面] 10 月5 日(這是第一次正式向外公布的時(shí)間)。以后借助于Internet網(wǎng)絡(luò),并通過(guò)全世界各地計(jì)算機(jī)愛(ài)好者的共同努力,已成為今天世界上使用最多的一種UNIX 類操作系統(tǒng),并且使用人數(shù)還在迅猛增長(zhǎng)。

linux命令是對(duì)Linux系統(tǒng)進(jìn)行管理的命令。對(duì)于Linux系統(tǒng)來(lái)說(shuō),無(wú)論是中央處理器、內(nèi)存、磁盤驅(qū)動(dòng)器、鍵盤、鼠標(biāo),還是用戶等都是文件,Linux系統(tǒng)管理的命令是它正常運(yùn)行的核心,與之前的DOS命令類似。linux命令在系統(tǒng)中有兩種類型:內(nèi)置Shell命令和Linux命令。
[root@mysql nginx]# cat access.log | awk 'substr($9,1,3)>200'
#查看訪問(wèn)日志中,過(guò)濾非200狀態(tài)碼的日志請(qǐng)求
# substr($4,20) :表示從第四個(gè)字段里的第20個(gè)字符開(kāi)始,一直到設(shè)定的分隔符 結(jié)束
# substr($4,1,3) :表示從第四個(gè)字段里的第1個(gè)字符開(kāi)始,截取3個(gè)字符結(jié)束
# substr($4,3,6) : 表示從第四個(gè)字段里的第3個(gè)字符開(kāi)始,截取6個(gè)字符結(jié)束getopts指定參數(shù),獲取值。同樣還有一個(gè)作用類似的選項(xiàng)getopt,可以自行百度查看其區(qū)別。
[root@mysql nginx]# vim test.sh #腳本內(nèi)容如下
#!/bin/bash
while getopts “:h:p:” optname;do
case “$optname” in
“h”)
host_ip=$OPTARG
;;
“p”)
host_port=$OPTARG
;;
“?” )
echo “不知道此選項(xiàng)”
;;
“:”)
echo “此選項(xiàng)沒(méi)有值”
;;
“*”)
echo “錯(cuò)誤信息”
;;
esac
done
echo "IP是${host_ip},端口是${host_port}"
#執(zhí)行效果如下
[root@mysql nginx]# sh test.sh -h 192.168.20.2 -p 3306
IP是192.168.20.2,端口是3306
[root@mysql nginx]# sh a.sh -p 22 -h 192.168.20.3
IP是192.168.20.3,端口是22在上面的腳本中,while后面的getopts關(guān)鍵字是必須的,引號(hào)中的h、p是可選自定義的,對(duì)應(yīng)的是命令行-h、-p等指定的選項(xiàng),optname也是自定義的,只要和case語(yǔ)句后引用的變量名稱對(duì)應(yīng)即可。在case語(yǔ)句下,需要給哪些選項(xiàng)賦值,則寫多少就行,一般和getopts后面指定的選項(xiàng)對(duì)應(yīng)。
[root@mysql ~]# fgrep -c "hello" test.txt #顯示hello字符在test.txt文件中匹配行的數(shù)目
[root@mysql ~]# fgrep -l "hello" test.txt #顯示匹配hello的文件名[root@mysql ~]# pkill -kill -t pts/1 #斷掉連接當(dāng)前終端的用戶大多數(shù)時(shí)候都是在腳本所在的目錄下執(zhí)行腳本,在腳本中使用pwd指令就可以獲得所在路徑,下面的語(yǔ)法是當(dāng)沒(méi)有在腳本所在路徑執(zhí)行腳本時(shí),獲取腳本所在路徑的語(yǔ)法。
cur_dir=$(cd $(dirname ${BASH_SOURCE[0]}); pwd)# 字背景顏色范圍:30—–37
echo -e "\033[30m 黑色字 \033[0m"
echo -e "\033[31m 紅色字 \033[0m"
echo -e "\033[32m 綠色字 \033[0m"
echo -e "\033[33m 黃色字 \033[0m"
echo -e "\033[34m 藍(lán)色字 \033[0m"
echo -e "\033[35m 紫色字 \033[0m"
echo -e "\033[36m 天藍(lán)字 \033[0m"
echo -e "\033[37m 白色字 \033[0m"
# 字背景顏色范圍:40—–47
echo -e "\033[40;37m 黑底白字 \033[0m"
echo -e "\033[41;37m 紅底白字 \033[0m"
echo -e "\033[42;37m 綠底白字 \033[0m"
echo -e "\033[43;37m 黃底白字 \033[0m"
echo -e "\033[44;37m 藍(lán)底白字 \033[0m"
echo -e "\033[45;37m 紫底白字 \033[0m"
echo -e "\033[46;37m 天藍(lán)底白字 \033[0m"
echo -e "\033[47;30m 白底黑字 \033[0m"
# 最后控制選項(xiàng)
\33[0m 關(guān)閉所有屬性
\33[1m 設(shè)置高亮度
\33[4m 下劃線
\33[5m 閃爍
\33[7m 反顯
\33[8m 消隱
\33[30m — \33[37m 設(shè)置前景色
\33[40m — \33[47m 設(shè)置背景色
\33[nA 光標(biāo)上移n行
\33[nB 光標(biāo)下移n行
\33[nC 光標(biāo)右移n行
\33[nD 光標(biāo)左移n行
\33[y;xH設(shè)置光標(biāo)位置
\33[2J 清屏
\33[K 清除從光標(biāo)到行尾的內(nèi)容
\33[s 保存光標(biāo)位置
\33[u 恢復(fù)光標(biāo)位置
\33[?25l 隱藏光標(biāo)
\33[?25h 顯示光標(biāo)nslookup www.baidu.com | sed -n -e '4,$p' | awk '/Address/{print $2}'testinfo="python,java,php"
for i in $testinfo;do
echo $testinfo | tr ',' '\n' #將逗號(hào)隔開(kāi),\n換行
done
#結(jié)果輸出:
python
java
php# 使用-拼接
testinfo="python,java,php";for i in $testinfo;do echo $testinfo | tr ',' '-'; done
python-java-phpss -tan state time-wait | wc -l[root@mysql ~]# date +%Y.%m.%d-%H:%M:%S
2020.01.03-22:47:46
[root@mysql ~]# date '+%F %T'
2020-01-03 22:47:50[root@mysql ~]# date -d '-30 minutes' "+%F %T" #獲取三十分鐘前的時(shí)間
2020-01-03 22:20:56
[root@mysql ~]# date -d yesterday "+%F %T" #獲取前一天的時(shí)間
2020-01-02 22:51:45ip addr | grep inet | egrep -v '(127.0.0.1|inet6|docker)' | awk '{print $2}' | tr -d "addr:" | head -n 1 | cut -d / -f1namei -om /var/log/messages另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。