1. 程式人生 > >shell 基本語法注意點

shell 基本語法注意點

1. $ *和$ @區別

相同點:都是引用所有引數。

不同點:只有在雙引號中體現出來。假設在指令碼執行時寫了三個引數1,2,3 ,,則“*”等價於“1 2 3”(傳遞了一個引數),而“@” “等價於”1“”2“”3“(傳遞了三個引數)。

#!/bin/bash
for i in "$*"
do
    echo "$i"
done

foo i in "[email protected]"
do
    echo "$i"
done

123

1

2

3

2.陣列

2.1陣列的下標從0開始

my_array=(A B "C" D)

echo "第一個元素為: ${my_array[0]}"
echo "第二個元素為: ${my_array[1]}"
echo "第三個元素為: ${my_array[2]}"
echo "第四個元素為: ${my_array[3]}"




res:
第一個元素為: A
第二個元素為: B
第三個元素為: C
第四個元素為: D

2.2獲取陣列中的所有元素

my_array[0]=A
my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "陣列的元素為: ${my_array[*]}"
echo "陣列的元素為: ${my_array[@]}"


res:
陣列的元素為: A B C D
陣列的元素為: A B C D

2.3獲取陣列的長度(和字串長度求取一致)

my_array[1]=B
my_array[2]=C
my_array[3]=D

echo "陣列元素個數為: ${#my_array[*]}"
echo "陣列元素個數為: ${#my_array[@]}"

res:
陣列元素個數為: 4
陣列元素個數為: 4

3.運算子操作

+ - *,/%完整的表示式要被“包含,且變數之間需要加空格,乘號(*)前邊必須加反斜槓(\)才能實現乘法運算;

a=10
b=20

val=`expr $a + $b`
val=`expr $a \* $b`

4.字串運算

5.檔案操作

6.函式引數

7.重定向輸入輸出

0標準輸入

1標準輸出

2錯誤輸出

將正確輸出錯誤輸出都丟棄:sh test.sh> / dev / null 2>&1等同於sh test.sh&> / dev / null

8.檔案包含

. filename   # 注意點號(.)和檔名中間有一空格

或

source filename

相關推薦

shell 基本語法注意

1. $ *和$ @區別 相同點:都是引用所有引數。 不同點:只有在雙引號中體現出來。假設在指令碼執行時寫了三個引數1,2,3 ,,則“*”等價於“1 2 3”(傳遞了一個引數),而“@” “等價於”1“”2“”3“(傳遞了三個引數)。 #!/bin/bash for

shell基本語法

數學 多少 oca day nth nta 就是 引用 能夠 shell是一種腳本語言,可以使用邏輯判斷、循環等語法可以自定義函數、shell是系統命令的集合shell腳本可以實現自動化運維,能夠大大增加我們的運維效率 shell腳本結構 腳本開頭以#! /bin/bash

mysql資料庫基本操作注意

對於一個初學資料庫的人來說,最主要的還是要掌握DQL資料庫查詢語言和DML資料操作語言。 這裡主要對DQL進行簡單的總結,實質就是學習的筆記。 資料查詢語言基本的語句結構為select * from table_name; 1. 條件語句where關建字,支援多種運算子 比較運

Go 語法注意

1.當識別符號(包括常量、變數、型別、函式名、結構欄位等等)以一個大寫字母開頭,如:Group1,那麼使用這種形式的識別符號的物件就可以被外部包的程式碼所使用(客戶端程式需要先匯入這個包),這被稱為匯出(像面嚮物件語言中的 public);識別符號如果以小寫字母

lua環境 + lua語法注意

lua安裝 sudo apt-get install lua5.2 hello world程式 方法1:命令列輸入lua -i進入互動程式設計介面,輸入print("hello world."),回車 方法2:寫lua指令碼,如helloworld.lua,檔案內容為prin

yaml語法注意——空格

spring boot預設使用yml檔案作為配置檔案,yml語法因為其簡介並且表現力強而得到諸多專案的使用,但是初學yml語法還是會趟一些坑,比如空格的使用; idea中對yml也是支援的,對於一個正常的配置項會顯示為藍色 如果將name和baba之間的空格去掉,就不會顯示藍色

bash語法注意

bash 語法注意點 =和不能分開 如: val=expr $a + $b` [空格 *** 空格]條件判斷要有空格 如: if [ $a ==$b ] 表示式和運算子之間要有空格, $a空格 + 空格 $b寫成$a+$b不行 case..in 取值後用in, esac作為結束標記 ;;標示break a)

mongoDB學習筆記--shell基本語法(二)

mongoDB Shell: 啟動mongoDB shell(我已經把mongodb\bin加入path環境變數):mongo 由於Mongo是個javaScript Shell,通過線上檢視JavaScript的文件能獲得更多幫助。shell本身內建了幫助文件,可以通過

Shell編程】Shell基本語法

執行命令 find 命令 引號 替換 unset 腳本 comm 程序 logged in Shell 語法 ??Shell程序設計作為一種腳本語言,在Linux系統中有廣泛的應用,本文記錄了關於Shell程序設計的基礎語法知識和常用命令,方便查詢,熟練使用shell也需要

scala基本語法注意

首先我們要知道,scala的語法中"(1).to(10)"是可以寫成"1 to 10"的。在通常情況寫,這種表示式的寫法是從左到右結合的,除了用":"結尾的方法外。用":"結尾的方法屬於從右到左結合的。例如:List的"::"方法,在List中"::"的定義如下:

ES5 基本語法變數篇的注意

ES5 基本語法變數篇的注意點 JavaScript的基本語法 變數 變數概念 如果只是宣告變數而沒有賦值,則該變數的值是undefined。 var a; console.log(a) // undefined 如果變數賦值的時候,忘了寫

shell--grep命令+正則表達式+基本語法

及其 gre awk 使用 part 開頭 合集 運算符 擴展 什麽是正則 正則就是用一些具有特殊含義的符號組合到一起(稱為正則表達式)來描述字符或者字符串的方法。或者說:正則就是用來描述一類事物的規則。 在linux中,通配符是由shell解釋的,而正則表達式則是由命令解

Shell第三篇:基本語法

允許 主體 賦值 算數 export $* lar script userdel 目錄 一、什麽是shell script 二、變量 三、運算符 四、流程控制 五、函數   一、什麽是shell script   將OS命令堆積到可執行文件裏,由上至下的順序執行文本裏的

Shell 腳本編程 基本語法

名稱 ... /usr ase 失敗 htm 也有 第一個 編程 Shell 腳本編程語法: 註: 文章來源 http://www.cnblogs.com/yunquan/p/6821850.html 視頻來源:https://www.bilibili.com/video/

shell編程:基本語法

yellow lob 子進程 語言 unset 下劃線 image 因此 語法 要掌握一門語言,就要先掌握它的語法.如同C語言一般,shell也有自己的語法. 變量 按照慣例,Shell變量通常由字母加下劃線開頭,由任意長度的字母、數字、下劃線組成。有兩種類型的Shell變

shell編程-基本語法

例如 我們 值類型 元素 uptime 操作 開頭 brush art 變量的作用 等號兩邊禁空格 for 循環 #語法一 for 變量 in 值1 值2 值3.. do 程序塊兒 done # #語法二 fo

shell編程基本語法

定義 變量賦值 加減乘除 其他 表達式 不用 cname 使用 until 編寫shell腳本的時候,最前面要加上一行:#!/bin/bash,因為linux裏面不僅僅只有bash一個解析器,還有其它的,它們之間的語法會有一些不同,所以最好加上這一句話,告訴系統要用這個解析

lua 1 基本語法注意事項

筆記總結自: http://www.runoob.com/lua/lua-data-types.html   基本資料型別: 資料型別 描述 nil 這個最簡單,只有值nil屬於該類,表示一個無效值(在條件表示式中相當於false)。

Shell基礎 -- 基本語法

  本文介紹一下 shell 的語法。 一、變數   在 shell 裡,使用變數之前通常並不需要事先為他們做出宣告,需要使用的時候直接建立就行了。預設情況下,所有變數都被看做字串並以字串來儲存,即使它們被賦值為數值時也是如此。shell 和一些工具會在需要時把數值型字串轉換成對應的數值以對它們進行操作。

基本語法掌握(shell 學習第二天)

Shell 傳遞引數 執行 Shell 指令碼時,向指令碼傳遞引數,指令碼內獲取引數的格式為:$n。n 代表一個數字,1 為執行指令碼的第一個引數,2 為執行指令碼的第二個引數,以此類推…… 其中 $0 為執行的檔名 #!/bin/bash echo "