linux相關雜記

2021-08-17 12:17:54 字數 3714 閱讀 8805

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,實時流...

程式設計雜記 事務相關

原子性 一致性 隔離性 永續性 隔離性 多個使用者併發訪問資料庫時,乙個使用者的事務不可以被其他使用者的事務所干擾,多個併發事務之間,資料要相互隔離。如果不考慮事務的隔離性將會導致 髒讀 不可重複讀 幻讀 髒讀 乙個事務讀取了另乙個事務改寫但還未提交的資料,如果這些資料被回滾,則讀到的資料是無效的。...