1. 程式人生 > >Shell指令碼的一些操作和知識

Shell指令碼的一些操作和知識

迴圈語句:
Bash Shell中主要提供了三種迴圈方式:for、while和until。
一,for迴圈
for迴圈的運作方式,是講序列的元素意義取出,依序放入指定的變數中,然後重複執行含括的命令區域(在do和done 之間),直到所有元素取盡為止。
其中,序列是一些字串的組合,彼此用$IFS所定義的分隔符(如空格符)隔開,這些字串稱為欄位。
for的語法結構如下:
1.

//第一種
for 變數 in 序列 
do
   執行命令 
done
//第二種
for ((語句; 判斷語句;語句))
do
    //
done

while迴圈的語法:

while
條件測試 do 執行命令 done

三、until迴圈
while迴圈的條件測試是測真值,until迴圈則是測假值。
until迴圈的語法:

until 條件測試 
do
 執行命令 
done


位置引數和特殊變數
有很多特殊變數是被Shell自動賦值的,總結⼀下,常用的位置引數
和特殊變數

$0
相當於C語言main函式的argv[0]

12…
這些稱為位置引數(Positional Parameter),相當於C語言main函式 的argv[1]、argv[2]…

$#
相當於C語言main函式的argc - 1,注意這裡的#後面不表示註釋

@

1" "$2” …,例如可以用在for迴圈中的in後面。

$?
上一條命令的Exit Status

Linux C 重新整理終端螢幕的方法
使用printf輸出終端控制字元, 移動游標:printf “\33[%d;%dH” “y""x”

以下簡單的說明:
\e[ 或 \033[ 是 CSI,用來操作螢幕的。
\e[K 表示從游標當前位置起刪除到 EOL (行尾)
\e[NX 表示將游標往X方向移動N,X = A(上) / B(下) / C(左) / D(右),\e[1A 就是把游標向上移動1行

相關推薦

Shell指令碼一些操作知識

迴圈語句: Bash Shell中主要提供了三種迴圈方式:for、while和until。 一,for迴圈 for迴圈的運作方式,是講序列的元素意義取出,依序放入指定的變數中,然後重複執行含括的命令區域(在do和done 之間),直到所有元素取盡為止

LINUX系統---初級相關操作知識

www mys apach lis -type cnblogs 管理 安裝linux系統 tomcat   LINUX系統的初級,從安裝LINUX開始,到處理簡單的運維問題、搭建各種服務、解決網路問題、緩解服務器壓力,寫簡單的shell腳本。   我們從基本的入門開始搞事情

LINUX系統---中級相關操作知識

div blog pos one 相關 inux 公司 -type 熱備   LINUX系統的中級,來搞一些LINUX安全相關的東西,還有在公司生成中長搞的集群。 RHCS集群 什麽是高可用 什麽是熱備 什麽是分布式 LINUX系統---中級相關操作和知識

[shell指令碼]條件判斷迴圈

基本語法 1、條件判斷 if [ condition1 ];then command 1 elif [ condition2 ];then command 2 else command3 fi 注意: (1)if .. fi標誌著判斷語句的開始和結束; (2)[ ]是條件判斷符,

shell指令碼:awksed

awk 和sed     cut [選項] 檔名   預設分隔符是製表符     選項:         -f 列號:    提取第幾列 &

jquery之ifream的一些操作處理

最近在做一個專案,中間有嵌套了一些ifream的東西,現在做一下整理,方便日後自己使用! 第一,在iframe中查詢父頁面元素的方法: 父頁面如下所示: <!--父頁面 --> <input type="hidden" name="id" id="id" value="

Shell指令碼 判斷使用者使用者組是否已經存在/建立使用者使用者組

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

shell一些操作擷取字串,生成隨機數,讀檔案迴圈

按指定字元擷取字串 方法一 #!/bin/bash string="fuck,you,frank" array=(${string//,/ }) for var in ${array[@]} do echo $var done 方法二 #!/bin/bash s

70個shell指令碼面試問題解答

轉載地址: 原文連結:http://linux.cn/article-5607-1.html 我們為你的面試準備選擇了 70 個你可能遇到的 shell 指令碼面試問題及解答。瞭解指令碼或至少知道基礎知識對系統管理員來說至關重要,它也有助於你在工作環境中自動完成很多工。在過去的幾年裡,我們注

shell指令碼redis操作--遍歷key儲存value

shell指令碼redis操作–遍歷key儲存value shell指令碼redis操作 指令碼分2部,redis查詢出所需要的key,然後遍歷key查詢出所有的value追加到檔案中; (**想法:**本來是要迴圈遍歷滿足條件key的結果集的,但是失敗了,所有就直接儲存到檔案中

陣列在shell指令碼操作

1.陣列定義 定義一個數組: [[email protected] ~]# a=(1 2 3 4 5 6 7 8) 列印陣列的元素(預設第一個元素) [[email protected] ~]# echo $a 1 一對括號表示是陣列,陣列元素用“空格”符

shell指令碼使用catEOF組合新增刪除檔案內容

我們經常會碰到這樣一個場景: 執行指令碼的時候,需要往一個檔案裡自動輸入N行內容。如果是少數的幾行內容,還可以用echo追加方式,但如果是很多行,那麼單純用echo追加的方式就顯得愚蠢之極了! 這個時候,就可以使用EOF結合cat命令進行行內容的追加了。 下面就對EOF的

Hadoop叢集之shell -----指令碼xcall,同步指令碼xsync(一)

xcall指令碼 #!/bin/bash [email protected] i=1 for (( i=1 ; i <= 3 ; i = $i + 1 )) ; do echo ============= hadoop0$i $param

linux shell指令碼基本操作

一些寫10次指令碼有9次會用到的操作,給自己留檔。 bin/bash 在指令碼開頭應加上如下一行: #!/bin/bash 其中”#!”是一個2位元組魔法數字,後面接的路徑名/bin/bash指定了一個解釋指令碼命令,除/bin/bash外,/b

shell指令碼的執行source

 shell命令可以事先寫入一個檔案中,使用時shell讀取檔案中的命令逐條解釋執行,這種檔案,被稱為指令碼。  執行指令碼的方法與執行其他程式一樣,如:   ./setenv.sh  #setenv.sh是當前目錄下的一個指令碼  以這種方法執行指令碼時,其中的命令是在一

shell指令碼直接執行crontab結果不一樣

問題描述: 案例1. 以前寫了個更新svn然後cp到別外一個目錄(簡稱目錄a)的指令碼,達到另外一個目錄的程式定期svn同步的效果。(當然,你可能要問為啥目錄a不裝個svn up,這個你可以先不管) 指令碼寫好後,執行沒有問題,結果放到crontab中定時跑,卻怎麼也不行

關於在hue當中調shell指令碼操作(這裡的shell 指令碼是在shell腳本當中巢狀shell指令碼操作使用source的方式)

這兩天在做資料的匯入操作,為了方便資料的匯入我們採用sqoop的方式將資料匯入。但是在表很多的情況下,在hue當中部署工作流就是一件很麻煩的事情, 然後想著能不能通過shell指令碼調shell指令碼的方式實現在一個shell腳本當中就可以實現對多個匯入操作指令碼的呼叫。 操作指令碼如下: #!/

[shell 指令碼]eval命令命令代換 ` ` $()

作用 $(cmd)和`cmd`的作用相同,在執行一條命令時,會將其中的``或者是$()中的語句命令執行一遍,再將結果加入到原命令。 echo `pwd` echo $(pwd) shell 執行該

Shell指令碼函式定義函式引數

一、Shell函式 本教程目前為止所有指令碼都是從頭到尾執行。這樣做很好,但你也許已經注意到有些指令碼段間互相重複。 shell允許將一組命令集或語句形成一個可用塊,這些塊稱為shell函式。 shell中函式的定義格式如下: 複製程式碼程式碼如下: 函式名(){     command1   

ps的基本操作知識

前端有時候也需要一些基本的ps基礎知識的。有時候需要自己去摳圖,切圖之類的小操作。 1. 矩形選框操作區域必須先選中該區域所在圖層,才可進行相應操作。 2. 裁剪工具不分圖層。 ps的常用快捷鍵(