6.2 管道命令
6.3 shell script
6.4 kill
7.運維知識
7.1.2 檢視磁碟讀寫效能
7.1.3 檢視cpu個數、核數、執行緒數
以下三種方式:
以下兩種方式
netstat -anlp | grep 3306
ntpdate asia.pool.ntp.org
注:1.username與password是windows下的使用者名稱和密碼;
2.ip是windows的ip;
3.test是專案名,需要在windows下開啟共享,並且開啟可讀寫許可權
6.1.1 操作命令6.1.2 檢視檔案命令6.1.3 修改許可權命令(-r表示遞迴)1.檔案所有者 : chown -r 所有者/所有者:使用者組 file/dir
2.檔案使用者組 : chgrp -r 使用者組 file/dir
3.檔案許可權 : chmod -r u=rwx,g=rx,o=rx 檔案(user/group/other)
chmod -r 777 檔案 (r:4 w:2 x:1)
chmod a+x/a-x 檔案(a指all,+指新增許可權,-指減去許可權)
6.1.4 解壓tar [-z|-j|-j] [xv] [-f 既有的 tar 檔名] [-c 目錄] <==解壓縮
cut
cut -d 「分隔字元」 -f field filename(field取數字,表示選取第幾段)
cut -c 字元區間 filename(取出固定字元區間,用於排列整齊的訊息)
grep
grep [-cinv] [–color=auto] 『搜尋字串』 filename
-c:顯示字串出現的次數;-i:忽略大小寫;-n:顯示行號;-v:反選
wcwc -lwm filename
-l:行數;-w:字數(word);-m:位元組數
uniq
uniq [-ic]
-i :忽略大小寫字元的不同; -c :進行計數
sort
sort -t 『:』 -k 3 -n -r
(以第3區段排序,-n表示以數字來排序,-r表示反向排序)
tee雙重重定向( 會同時將資料流分送到檔案與螢幕)
split(將大檔案分成幾個小檔案)
split -bl filename perfix
-b:按照檔案大小分割槽,可以加b,k,m等單位;-l:按照行數分割槽
perfix指小檔案的檔名字首,如***aa,***ab
xargs
xargs -epn command
-e:end of file;-p:每次執行命令時詢問;-n:每次執行幾個引數
注:很多指令其實並不支援管道命令,因此我們可以透過 xargs 來提供該指令引用 standard input 之用
6.3.1 執行方式
6.3.2 判斷式1.test
2.[ ]
注:1.判斷檔案型別
-e(是否存在)/-f/-d/-l/(是否為檔案/目錄/鏈結)..
2.判斷檔案許可權
-r/-w/-x/..
3.判斷兩檔案之間的比較
-nt/-ot(判斷哪個新或舊)/-ef(是否指向相同inode)
4.整數之間的判斷
-eq/-ne(相等/不等)-gt/-lt(>/<)-ge/-le(>=/<=)
5.判斷字串
-z/-n(是否為空/不空) ==/!=
6.多重判定
-a/-o/!
6.3.3 預設引數6.3.4 if條件語句if [ 條件判斷式 ]; then
//todo
elif [條件判斷式]; then
//todo
else
//todo
fi
6.3.5 利用 case … esac 判斷case $變數 in
"1")
//todo
;;"2")
//todo
;;*)
//todo
;;esac
6.3.6 迴圈語句while [ ]
do//todo
done
until [ ]
do //todo
done
for var in con1 con2 con3 ...
do//todo
done
for ((i=0;i<4;i++))
do//todo
done
6.3.7 區別$(), $(()),${},(())
1.$()與``都是用來執行命令,其執行結果再用於外部命令
2.$與$var一樣,都是獲取變數的值
3.$(())用來整數運算;還可以將其它進製轉換成十進位制,如$((2#110))
4.(())可以重新定義變數值,如((a++))
6.3.8 變數內容的刪除,取代和替換
1.變數內容的刪除
1.$ 與$
2.$ 與$
注:#與%表示選取的部分(如*/和/*)最短的那個,##與%%表示選取的部分最長的那個;#與##表示刪除選取部分及前面的內容,%與%%表示刪除選取部分及後面的內容
2.變數內容的取代
$ ==>第乙個舊字串會被新字串取代
$ ==>全部的舊字串會被新字串取代
3.變數內容的替換
變數設定方式
str沒有設定
str為空字串
str不為空時
var=$
var=expr
var為空
var=$
var=$
var=expr
var=expr
var=$
4.取子串
$==>從var中從0開始,取4個字元。
先找到要殺死程序的id,然後kill -s 9
找到程序id
ps ef |grep firefox
ps aux |grep firefox
pgrep firefox
pgrep firefox | xargs kill -s 9
kill -s 9pgrep firefox
pkill -9 firefox
killall -9 firefox(如果給出的程序名不完整,killall會報錯)
7.1.1 檢視cpu及io狀態
iostat -d -k -t 1 10
-d: 只檢視io的狀態
-k: 單位為kb
-t: 顯示時間
1: 間隔時間
10:重新整理次數
-c: 只顯示cpu的情況,與-d只能出現乙個
vmstat
top
hdparm
Vlan相關知識雜記
劃分vlan的目的 很多人還真就以為劃分vlan的目的就是為了隔離不同vlan不讓他們互訪 其實這是非常多人的誤區,當然這可以通過acl做到,但並不是劃分vlan的目的,這個最多可以理解成這是劃分vlan之後的一種應用並不是最終目的 其實劃分vlan的目的就兩個 1.提高安全性 舉個例子 沒有劃分v...
spark相關知識雜記
工作中經常用到hadoop和spark的相關操作,大資料的知識點很多,想要全部掌握爛熟於心很困難,將一些比較重要或經常忘記的點記錄一下 1.saprk與hadoop的關係 hadoop是乙個完善的大資料生態系統,包含了底層的檔案系統hdfs,計算引擎mapreduce,大資料查詢引擎hive,實時流...
程式設計雜記 事務相關
原子性 一致性 隔離性 永續性 隔離性 多個使用者併發訪問資料庫時,乙個使用者的事務不可以被其他使用者的事務所干擾,多個併發事務之間,資料要相互隔離。如果不考慮事務的隔離性將會導致 髒讀 不可重複讀 幻讀 髒讀 乙個事務讀取了另乙個事務改寫但還未提交的資料,如果這些資料被回滾,則讀到的資料是無效的。...