久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

shell腳本基礎(chǔ)

 忠波irlphwt1ng 2019-11-24

$? #判斷上一條命令執(zhí)行的是否成功,,成功返回0,上一條命令不成功返回非0的數(shù)字

525CEFF1B1154799A3E22D3DB611ED75.jpg

 

 

$0 #返回腳本的文件名稱  $1-$9      返回對應(yīng)的參數(shù)值  $*        返回所有的參數(shù)值是什么  $#      返回參數(shù)的個(gè)數(shù)和

26BB2F8E6BB0477CB80EC84AD375DE80.jpg

 

A3F0B82C28C742D5A3FEC43A1E6ADC97.jpg

 

 

調(diào)用變量的話 $或者a 或者 ${a}

2AC1191F9C344C5EB8639095B2B6E71E.jpg

 

 

 

 

 

常見的幾個(gè)符號(hào)

       >會(huì)覆蓋原有的內(nèi)容

 

F9053DEA467E4E8B8826F3E3E30ACB66.jpg

>>不會(huì)覆蓋原有的內(nèi)容

 

93CFEDAA6BEC4BEDB67DC18A5909E349.jpg

 

4239F425D8864AC6AA320CF85208A2A9.jpg

; #執(zhí)行多條命令

 

9364F381FF644A7CA0822CE4D7BABE1E.jpg

|              #管道符

 

E8C7EF8408E44FA7A584720AAC03EA98.jpg

&&              #前面的命令執(zhí)行成功,后面的才可以執(zhí)行

 

4D4695CAF27145BBB91CAB36D5E085AB.jpg

 

 

A59A43C9F2624E9281D0E2CE163100E2.jpg

|| #前面的命令執(zhí)行失敗,,后面的才可以執(zhí)行

5ABBF858D2504A6D9B31B54DBF7EEF6E.jpg

"" #會(huì)輸出變量值

 

66977E117F7A45B2933632875780F772.jpg

'  '     #輸出本身

66977E117F7A45B2933632875780F772.jpg

``    #輸出命令結(jié)果eg:a=`date`;echo $a

 

214B4A64B0754AFB8CA315871DE4D3B5.jpg

2>/dev/null  #錯(cuò)誤輸出到無底洞

 

 

4196E33D04CA4977972169A63EE70C44.jpg

1>/dev/null  #正確輸出到無底洞

A7C0FE44564D479BB9C7DE7F9FCBAAE8.jpg

 

 

 

 

加:expr 12 + 6

 

15A673E80725403FB091ECFCC8CE7F06.jpg

expr $a + $b

B88F6411FE3942B5ADDCED0F99A3E339.jpg

echo $[12 + 6]

16EE58C4D617438F9B533006B68DAB4F.jpg

echo $[a + b]

6EE2884C79C240A6A60A801672BB85F3.jpg

echo $((12 + 6)) echo $((a + b))

 

B41DBD25A4FB4D7ABEF25A0D40E30AAC.jpg

減:expr 12 - 6   expr $a - $b    echo $[12 - 6]  echo $[a - b]    echo $((12 - 6))  echo $((a - b))乘:expr 12 \* 6

 

23301C968E474648BA32F9DD3230DF90.jpg

expr $a \* $b

 

2E4BB08A1D4643E387483739697FB18A.jpg

 

C9041807EFE94415818E5F52C0F5794F.jpg

 

 

echo $[a * b]

 

822AEAB1EB14453BA4379B1EDD24CC34.jpg

echo $((12 * 6))

65B51DE590E04585B707976CB7EEF80B.jpg

 

echo $((a * b))

 

37E78413092B4BA9B50FAA642BDCB58B.jpg

除:expr 12 / 6   expr $a / $b    echo $((12 / 6)) echo $((a / b))    echo $[12 / 6]  echo $[a / b]   求余:expr 12 % 6   expr $a % $b      echo $((12 % 6)) echo $((a % b))      echo $[12 % 6] echo $[a % b]

 

 

F4AC4FD85F6047418A3D38B423B3B0D8.jpg

 

 

小數(shù)

A05A123A8D9E4CDB9653DF1C71DCAA7C.jpg

bc計(jì)算器 保留多少位小數(shù)可以通過scale 但是scale只對除法,取余數(shù),,乘冪 有效,,對加減沒有效。

2E87C2AC79AE431588108A9446926232.jpg

 

 

 

 echo "scale=2;(0.2+0.3)/1" | bc    #計(jì)算出0.2+0.3的和并保留倆位小數(shù),,此時(shí)bc計(jì)算器會(huì)省略掉個(gè)位數(shù)的0

3B29070678DE40D5A163C8BCFEEC070A.jpg

echo "scale=2;(1.2+1.3)/1" | bc   #計(jì)算出1.2+1.3的和并保留倆位小數(shù)

03DE89EDC42C4149BF9163C9998A1567.jpg

 

 

 

 

常見的條件判斷

l  語法:[ 判斷表達(dá)式]               ----必須有空格

文件(夾)或者路徑: -e  目標(biāo)是否存在(exist)

 

5C06D462FA944A8AA14CC1EA638E1AB6.jpg

 

37B8305858B443069F0F622D6EF5B7DF.jpg

-d  是否為路徑(directory)

BEF03F3A97E14D3E88E20E28E83289F9.jpg

-f  是否為文件(file)

[ -e foer.sh ] || touch foer.sh  #判斷當(dāng)前目錄下是否有foer.sh這個(gè)文件,,假如沒有就創(chuàng)建出foer.sh文件

l  權(quán)限:

-r  是否有讀取權(quán)限(read)

 

7A39CBEA2A144D429C046ADE17508EF3.jpg

-w  是否有寫入權(quán)限(write)

 

6E9E5359E3444876896960E4CDE63351.jpg

-x  是否有執(zhí)行權(quán)限(excute)

8BB6BC59821542648487DB8BB4632391.jpg

[ -x 123.txt ] && echo '有執(zhí)行權(quán)限'

l  整數(shù)值(int型):

-eq 等于(equal)

 

62C35EEA25BB48ECAC31717DC6099E20.jpg

-ne 不等于(not equal) -gt 大于(greater than)

 

AACEDF5CC3FA466C8EB74351A0A0B557.jpg

-lt 小于(lesser than) -ge 大于或者等于(greater or equal) -le 小于或者等于(lesser or equal)  [ 9 -gt 8 ] && echo '大于'

l  小數(shù)(浮點(diǎn)型):

[ `echo '1.2 < 1.3' | bc` -eq 1 ] && echo '小于'

4CE59E54E4AC4CB99FD94425EC0696BB.jpg

 

l  字符串:

=    相等!=   不相等

 

6A07F48B775A49D0AE90C0E15C4FCB52.jpg

[ 'kkkkk' != 'kkkk' ] && echo '不等于'

 

 

 

E1FB374CEEA349A3BDFE360E4877C527.jpg

 

#!/bin/bash

touch $1

if [ $? -eq 0 ]

then

echo "$1 創(chuàng)建成功"

fi

Inkedbe5f9052b67143b4b5d2b4e24d8c551f_LI.jpg

 

 

 

 

 

shell腳本輸入之read命令

l  語法:read -參數(shù)

-p:給出提示符。默認(rèn)不支持"\n"換行

#!/bin/bash

read -p "請輸入密碼:"  pass

echo $pass

 

9927F4468C6C4F5C9AED89B6E5D0831D.jpg

-s:隱藏輸入的內(nèi)容

 

70034FB2C54C418F8E6943A8C5C80733.jpg

帶換行的

 

0DCF90E124974C21A9F2C59C1B16D260.jpg

-t:給出等待的時(shí)間,,超時(shí)會(huì)退出read

等待5秒

B49247513C14415FB7F50C90E17BBCDF.jpg

-n:限制讀取字符的個(gè)數(shù),,觸發(fā)到臨界值會(huì)自動(dòng)執(zhí)行

869794A185284FDAADC329598C05B1B0.jpg

 

A8F3A4F19B18466C906A014A4B40D01B.jpg

 

 

 

 

處理海量數(shù)據(jù)之grep命令

grep應(yīng)用場景:通常對數(shù)據(jù)進(jìn)行 行的提取

l  語法:grep [選項(xiàng)]...[內(nèi)容]...[file]

l   

-v  #對內(nèi)容進(jìn)行取反提取

A1CBAB50FA494C3498515546F13F59F2.jpg

-n  #對提取的內(nèi)容顯示行號(hào)

 

513A738AD9E54400811E328D9C098235.jpg

 

C7BE840F64A648169DE03299061E1F1A.jpg

-w  #精確匹配

8D8E65FD485449BCA99F8E7336FA0D20.jpg

-i  #忽略大小寫

A4FE3F30222E43E18E9E8C74861FBB8E.jpg

^  #匹配開頭行首

1F7F8AA9FBBF470D9ED00130BF75D033.jpg

-E  #正則匹配

 

101C9440AED84C80A3A6073279D7A050.jpg

 

 

l  cut應(yīng)用場景:通常對數(shù)據(jù)進(jìn)行列的提取

l  語法:cut [選項(xiàng)]...[file]

-d  #指定分割符    -f  #指定截取區(qū)域    -c  #以字符為單位進(jìn)行分割     注意:不加-d選項(xiàng),默認(rèn)為制表符,,不是空格/bin/bash   #代表可以登錄的用戶      /sbin/nologin #代表不可以登錄的用戶  -d與-f:eg:以'|'為分隔符,,截取出cut.txt的第一列跟第二列 cut -d '|' -f 1,2 cut.txt

CCE098DA55D1420C84AC220F5EDAC49B.jpg

eg:以'|'為分隔符,截取出cut.txt的第一列至第二列 cut -d '|' -f 1-2 cut.txt

 

DF234C8A0D3E4898A9A69D94A2001F85.jpg

eg:以'|'為分隔符,,截取出cut.txt的第二列到最后一列 cut -d '|' -f 2- cut.txt

2021D9EB69934221875979BCA747AE4D.jpg

-c: eg:截取/etc/passwd文件從第二個(gè)字符到第三個(gè)字符

cut -c 2-3 cut.txt

A610B6ED5C344E72A7D0111D4BB65040.jpg

 

eg:比如領(lǐng)導(dǎo)想叫你截取linux上面所有可登陸普通用戶 grep '/bin/bash' /etc/passwd | cut -d ':' -f 1 | grep -v root

3E09BE49D1E043F0A59370BDA082D4E4.jpg

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多