亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 操作系統 > 正文

BASH 命令以及使用方法小結

2024-06-28 13:23:34
字體:
來源:轉載
供稿:網友
BASH 命令以及使用方法小結

最近工作中需要寫一個linux腳本,用到了很多BASH命令,為了防止以后忘記,在這里把它們一一記下來??赡軙容^亂,隨便看看就好了。如果有說的不對的地方也歡迎大家指正。

1,export VAR=...

這個命令在Shell下直接運行可以使之后運行的腳本也知道這個VAR。但是如果這個命令在腳本中運行,那么不影響腳本以外的參數。舉個例子,如果在一個腳本運行之前沒有 VAR這個環境變量,而在腳本中運行了 export VAR=3 這一命令,那么在腳本結束之后,如果運行 echo $VAR,不會有任何顯示。說明export僅在腳本中有效。

2,if ... ; then ...; else ...; fi

可以把判斷寫在不同行,這樣就不需要“;”號了。if后面跟[],中括號里面是表達式,表達式與中括號的首尾都需要留一個空格。一個例子來判斷VAR為空:

if [ -z "$VAR" ]; then echo "empty"; else echo "not empty"; fi

需要注意的是必須把$VAR的兩頭用雙引號包起來。

3,雙引號和單引號

說到雙引號,它與單引號的區別在于如果引號之間有變量,則一定要用雙引號。因為BASH不會檢測單引號中的內容,也就是說單引號之中不存在特殊字符。echo '$VAR' 的輸出就是$VAR,在單引號中使用雙引號也沒有任何問題。相反,如果在雙引號中需要打印特殊符號是就需要使用'/'來轉義。比如echo "$VAR" 會輸出空字符,而echo "/$VAR"會輸出/$VAR。

4,$()

如果需要把一個或一串命令的返回值賦給一個變量,可以用$(),然后把命令放入括號中。例如:

LINES = $(cat filename | wc -l)

5,#!/bin/sh

差點忘了這個比較重要的。這是腳本文件的第一行。用來說明該腳本是用/bin/sh來運行的。這個好像有些人面試的時候喜歡問。。。然后再腳本中注釋一行用#號。不知道有沒有可以注釋多行的。。。

6,sed 's/abc/cba/'

sed可以用來做正則表達式的搜索和替換,既可以針對文本文件,也可以針對字符串變量。這里我主要使用的是字符串變量,所以一般格式是這樣的:

TEMP=$(echo $SVAR | sed 's/.*/(regex/).*//1/')

這樣就可以在變量SVAR中找到對應regex的內容,然后把它提取出來。regex兩邊的 /( 和 /) 用來把regex對應的內容形成一個組(group),然后 /1 表示把SVAR的所有內容替換成第一組的內容,也就是regex能夠match的那一部分。如果找不到與regex對應的部分,那么返回的是SVAR的所有內容。

7,"${VAR/"substring"}" = "$VAR"

上述等式可以用來判斷一個字符串中是否存在substring。如果相等則說明不存在。因為等式左邊會返回從找到的第一個substring開始的子字符串,只有當不存在substring時才會返回原字符串。

8,curl

curl是一個非常強大的用來發送http請求的命令。我只用到了一些參數,如

-s 表示靜默運行,不顯示curl命令的速度,完成情況,錯誤等statistics

-S 通常與 -s 一起用,表示當有錯誤的時候顯示出來

-k 當需要發送https請求時,加上這個表示允許不安全請求

-X 后面跟請求方法,如POST, PUT, DELETE。如果是GET的話就不用了,因為這是默認操作

-H 后面跟頭部參數,一個curl命令可以使用多個 -H 來定義多個參數

-d 后面跟body,必須使用單引號開始和結束

所以一個curl命令可能看上去是這樣的:

curl -sS -H 'Content-Type:application/json' -d '{"name":"'$VAR'"}' http://www.where.com

需要注意的是在body中使用變量的話,需要先用一個單引號結束上一個單引號的控制范圍,再在這個變量之后用一個單引號與后面的單引號作對應。

9,定義方法

在腳本中是可以定義function的。具體形式可以是:

func(){

  ...

}

定義時不需要寫明輸入參數有哪些,因為在方法里面可以直接獲取并使用這個方法或者命令后面跟的參數。例如:

func abc 30

那么$1 就是abc,$2 就是30。如果有更多輸入參數,那么可以使用$3,$4,。。。一直下去。

方法也可以有返回值,如

func() {

  ...

  return 35

}

那么 func abc 30 運行之后,$?中存的就是35。

10, tr

可以用來把字符串中的某一個字符改成另一個字符,所以就可以用來做字符串的切分。例如有一個字符串SVAR="a,b,c"。通過命令:

arr=$(echo $SVAR | tr "," "/n")

就可以把一個字符串變成三個。

11,字符串操作

字符串尾部添加字符:SVAR=$SVAR'abc' 就可以在SVAR原本的字符串后面添加abc三個字符

字符串刪除尾部最后一個字符:SVAR=${SVAR%?}

12,case "$VAR" in

      a)

        ...

        ;;

      b)

        ...

        ;;

      *)

        ...

        ;;

  esac

這個就類似C語言中的switch,對VAR中的不同內容進行不同的操作。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久亚洲成人| 伊人男人综合视频网| 亚洲三级黄色在线观看| 欧美男插女视频| 色yeye香蕉凹凸一区二区av| 国产成人中文字幕| 最近2019中文字幕mv免费看| 国产精品久久精品| 久久在线免费观看视频| 久久全国免费视频| 国产精品成av人在线视午夜片| 日产精品久久久一区二区福利| 亚洲女人天堂视频| 亚洲一区中文字幕在线观看| 亚洲第一网站免费视频| 夜夜狂射影院欧美极品| 日韩中文字幕在线播放| 久久精品99久久香蕉国产色戒| 国产丝袜一区视频在线观看| 久久最新资源网| 国产精品久久久久久久久免费看| 中文字幕视频在线免费欧美日韩综合在线看| 欧美富婆性猛交| 日韩欧美中文字幕在线播放| 色黄久久久久久| 国产精品日韩久久久久| 一个色综合导航| 亚洲欧美中文在线视频| 91夜夜未满十八勿入爽爽影院| 国产福利成人在线| 91中文在线观看| 97精品伊人久久久大香线蕉| 亚洲成av人影院在线观看| 欧美日韩中文字幕日韩欧美| 欧美一区二粉嫩精品国产一线天| 日韩精品在线观看网站| 日韩av色在线| 国产精品美女www| 国产成人拍精品视频午夜网站| 亚洲精品国精品久久99热| 亚洲精品suv精品一区二区| 91视频免费在线| 亚洲欧美制服中文字幕| 国产精品夜色7777狼人| 国产精品扒开腿做爽爽爽视频| 亚洲在线观看视频网站| 国产亚洲激情视频在线| 亚洲v日韩v综合v精品v| 亚洲国产天堂网精品网站| 色爱av美腿丝袜综合粉嫩av| 欧美中文字幕视频在线观看| 日韩欧美亚洲一二三区| 亚洲欧美日韩国产中文| 欧美精品在线观看| 欧美成人网在线| 日韩在线免费观看视频| 高清一区二区三区四区五区| 欧美电影免费观看高清完整| 中文字幕欧美专区| 88xx成人精品| 精品久久国产精品| 精品国产一区二区在线| 欧美日韩色婷婷| 超碰日本道色综合久久综合| 亚洲老头老太hd| 精品中文字幕在线2019| 国产精品三级在线| 精品福利视频导航| 国产精品自在线| 国产欧美日韩视频| 国产精品自拍偷拍视频| 亚洲天堂一区二区三区| 久久91亚洲精品中文字幕| 欧美大全免费观看电视剧大泉洋| 久久久亚洲成人| 欧美精品videosex极品1| 操日韩av在线电影| 欧美视频裸体精品| 亚洲欧美日韩中文在线制服| 亚洲视频精品在线| 久久久久久久久国产| 日韩美女免费线视频| 最近2019年日本中文免费字幕| 欧美成人四级hd版| 国模gogo一区二区大胆私拍| 久久久日本电影| 高潮白浆女日韩av免费看| 欧美色道久久88综合亚洲精品| 69**夜色精品国产69乱| 亚洲一区二区久久久| 成人黄色av免费在线观看| 久久中文字幕国产| 国产精品香蕉av| 国产成人精品久久二区二区91| 久久久中精品2020中文| 91香蕉亚洲精品| 国产91ⅴ在线精品免费观看| 亚洲人成电影在线播放| 欧美激情在线播放| 伊人伊成久久人综合网小说| 亚洲乱码国产乱码精品精天堂| 精品一区二区三区四区| 亚洲视频在线观看视频| 成人在线小视频| 日韩中文字幕在线视频播放| 在线观看欧美成人| 粗暴蹂躏中文一区二区三区| 26uuu亚洲伊人春色| 精品成人国产在线观看男人呻吟| 欧美性猛交xxxx免费看久久久| 蜜臀久久99精品久久久久久宅男| 欧美激情videos| 欧美视频第一页| 久久久精品亚洲| 毛片精品免费在线观看| 国产欧洲精品视频| 亚洲欧洲xxxx| 日韩av色在线| 亚洲色图日韩av| 色综合亚洲精品激情狠狠| 国产精品天天狠天天看| 97精品国产91久久久久久| 538国产精品一区二区在线| 韩国三级电影久久久久久| 成人日韩av在线| 日韩av第一页| 欧美高清一级大片| 91天堂在线视频| 91免费精品视频| 日韩电影免费观看中文字幕| 日韩中文字幕亚洲| 最新日韩中文字幕| 中文字幕亚洲无线码a| 91在线视频免费| 亚洲精品不卡在线| 日韩欧美国产网站| 92看片淫黄大片欧美看国产片| 不卡av电影院| 欧美亚洲成人网| 福利视频一区二区| 日韩免费电影在线观看| 红桃视频成人在线观看| 免费91在线视频| 热久久99这里有精品| 日韩中文字幕视频| 国产精品高潮在线| 久99九色视频在线观看| 欧美日韩国产精品一区二区不卡中文| 日韩69视频在线观看| 欧美亚洲日本网站| 国产午夜精品理论片a级探花| 中文字幕亚洲欧美日韩高清| 亚洲在线免费观看| 5566成人精品视频免费| 欧美精品在线网站| 亚洲欧洲成视频免费观看| 一区二区日韩精品| 欧美综合国产精品久久丁香| 国产成人精品免高潮在线观看| 在线观看视频99| 成人免费网站在线| 日韩影视在线观看| 亚洲free性xxxx护士白浆| 欧美日韩福利电影|