在shell 指令碼中是什麼意思

時間 2023-01-18 01:35:11

1樓:匿名使用者

$# 表示引數的數量。

再給你點我總結的其他的觀關於$的。

$? 上一條命令執行後返回的狀態。

# 引數的數量。

$* 所有引數的內容。

$$ 當前程序的程序號。

$! 後臺執行的最後一個程序號。

$0 當前執行的程序名。

shell 指令碼中$$,$#,$?分別代表什麼意思?

2樓:匿名使用者

給你個全的,你在linux環境下多試下就明白了:

$0 這個程式的執行名字。

$n 這個程式的第n個引數值,n=1..9$* 這個程式的所有引數,此選項引數可超過9個。

# 這個程式的引數個數。

$$ 這個程式的pid(指令碼執行的當前程序id號)$!執行上一個背景指令的pid(後臺執行的最後一個程序的程序id號)

$? 執行上一個指令的返回值 (顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤)

$- 顯示shell使用的當前選項,與set命令功能相同$@ 跟$*類似,但是可以當作陣列用。

3樓:小米飛貓

請仔細查閱linux下shell的特殊字元解釋。

linux shell 指令碼中, $@ 和$# 分別是什麼意思?

4樓:匿名使用者

直接看示例:

[root@localhost xly]# cat !/bin/bash

echo $#

echo $@

[root@localhost xly]# sh xly]# sh a b c

3a b c

說明:$@表示所有引數內容。

#表示所有引數的個數。

5樓:apple哲皓

linux shell 指令碼中,copy $@和$# 分別是:

$@:表示所有指令碼引數的內容。

#:表示返回所有指令碼引數的個數。

示例:編寫如下shell指令碼,儲存為!/bin/sh

echo "number:$#

echo "argume:$@

執行指令碼:./first_arg second_arg說明:給指令碼提供了兩個引數,所以$#輸出的結果是2,$@代表了引數的內容!

6樓:匿名使用者

這個指令碼分別是什麼意思?這個咱也不太清楚的,專業的人士來幫助你。

7樓:匿名使用者

$#,表示引數個數。

$@,所有引數,並且所有引數都是獨立的。

例如 command a b c d

#=4$@=a" "b" "c" "d"

$@可以用來做 for each in

8樓:文化廚子

$@:表示所有指令碼引數的內容。

#:表示返回所有指令碼引數的個數。

示例:編寫如下內shell指令碼,儲存為容!/bin/sh

echo "number:$#

echo "argume:$@

執行指令碼:./first_arg second_arg說明:給指令碼提供了兩個引數,所以$#輸出的結果是2,$@代表了引數的內容!

9樓:

$@表示所有引數。

#表示引數的個數。

shell指令碼中.是什麼意思

shell指令碼中的$*,$@和$#

10樓:匿名使用者

舉例說:

指令碼名稱叫 入參三個: 1 2 3執行 1 2 3後。

$*為"1 2 3"(一起被引號包住)

$@為"1" "2" "3"(分別被包住)$#為3(引數數量)

11樓:匿名使用者

$* 這個程式的所有引數。

# 這個程式的引數個數。

$@ 跟$*類似,但是可以當作陣列用。

12樓:丿冰雪晨丶緣丨

我沒用過$@,但是可以自己寫個指令碼測試下。

先介紹下我知道的,如下:

位置變數 :$0,$1,$2,$3,$4,$5,$6,$7,$8,$9 $0顯示執行的指令碼,$1...顯示位置引數的值。

預定義變數:

# 表示位置引數的數量。

$* 表示所有位置引數的內容。

$? 表示命令執行後返回的狀態 (執行成功 返回0 執行不成功 返回非0)

$$ 表示當前程序的程序號 希望開啟一個程序後不再開啟另一個(/proc/)

$! 表示後臺執行的最後一個程序號。

$0 表示當前的程序名。

測試指令碼如下:(位置變數只輸出到$3)

[root@xp-24-35 script]#vim

#!/bin/bash

echo '$0 ==0

echo '$1 ==1

echo '$2 ==2

echo '$3 ==3

echo '$

echo '$

echo '$

echo '$##

echo '$

執行結果1(輸入小於三個位置引數a,b)

[root@xp-24-35 script]# ./a b

$1 ==a

$2 ==b

$* a b

$@ a b#

執行結果2(剛好輸入三個位置引數)

[root@xp-24-35 script]# ./a b c

$1 ==a

$2 ==b

$3 ==c

$* a b c

$@ a b c#

執行結果3(輸入大於3個位置引數)

[root@xp-24-35 script]# ./a b c d e f

$1 ==a

$2 ==b

$3 ==c

$* a b c d e f

$@ a b c d e f#

實驗結果說明一切,忘採納,謝謝。

13樓:匿名使用者

"$@表示單獨的抄輸入引數;「

襲p1 」bai「 p2 p3」「p4 」

"$*表示將所有du的輸入引數整合為1個;"p1 p2 p3 p4"

my_fun "$zhi" 相當於把$@傳給了daomy_fun函式,因此my_fun的函式執行結果為3;

my_fun "$相當於把"$*傳給了my_fun函式,因此my_fun的函式執行結果為1;

shell指令碼中的$<是什麼意思?謝謝!

14樓:喻逸

$<,shell中沒有這樣的用法,是makefile中的用法,以下總結了makefile裡面的常用變數:

$* 不包含副檔名的目標檔名稱。

$+ 所有的依賴檔案,以空格分開,並以出現的先後為序,可能包含重複的依賴檔案。

$< 第一個依賴檔案的名稱。

$? 所有的依賴檔案,以空格分開,這些依賴檔案的修改日期比目標的建立日期晚。

$@ 目標的完整名稱。

$^ 所有的依賴檔案,以空格分開,不包含重複的依賴檔案。

$% 如果目標是歸檔成員,則該變數表示目標的歸檔成員名稱。例如,如果目標名稱為

o),則 $@為 ,而 $%為 。

15樓:網友

看你問了幾次類似的問題,乾脆總結一下吧。

這些都是makefile的內建命令,含義如下:

$@ target

$% file name of an archive member$< first prerequisite$? prerequisites newer than target

$^ prerequisites

$+ similar to $^including duplicates

$* stem of the target filename

16樓:網友

暫時沒有發現shell中這樣的環境變數。

shell的系統環境變數包括以下。

$n $1 表示第一個引數,$2 表示第二個引數 ..

# 命令列引數的個數。

$0 當前程式的名稱。

$? 前一個命令或函式的返回碼。

$* 以"引數1 引數2 ..形式儲存所有引數$@ 以"引數1" "引數2" .形式儲存所有引數$$ 本程式的(程序id號)pid

$! 上一個命令的pid

shell指令碼中的$*,$@和$#是什麼意思?

17樓:匿名使用者

我沒用過$@,但是可以自己寫個指令碼測試下。

先介紹下我知道的,如下:

位置變數 :$0,$1,$2,$3,$4,$5,$6,$7,$8,$9 $0顯示執行的指令碼,$1...顯示位置引數的值。

預定義變數:

# 表示位置引數的數量。

$* 表示所有位置引數的內容。

$? 表示命令執行後返回的狀態 (執行成功 返回0 執行不成功 返回非0)

$$ 表示當前程序的程序號 希望開啟一個程序後不再開啟另一個(/proc/)

$! 表示後臺執行的最後一個程序號。

$0 表示當前的程序名。

測試指令碼如下:(位置變數只輸出到$3)

[root@xp-24-35 script]#vim

#!/bin/bash

echo '$0 ==0

echo '$1 ==1

echo '$2 ==2

echo '$3 ==3

echo '$

echo '$

echo '$

echo '$##

echo '$

執行結果1(輸入小於三個位置引數a,b)

[root@xp-24-35 script]# ./a b

$1 ==a

$2 ==b

$* a b

$@ a b#

執行結果2(剛好輸入三個位置引數)

[root@xp-24-35 script]# ./a b c

$1 ==a

$2 ==b

$3 ==c

$* a b c

$@ a b c#

執行結果3(輸入大於3個位置引數)

[root@xp-24-35 script]# ./a b c d e f

$1 ==a

$2 ==b

$3 ==c

$* a b c d e f

$@ a b c d e f#

實驗結果說明一切,忘採納,謝謝。

shell指令碼中的$*,$@和$#分別是什麼意思?

18樓:匿名使用者

舉例說:

指令碼名稱叫 入參三個: 1 2 3執行 1 2 3後。

$*為"1 2 3"(一起被引號包住)

$@為"1" "2" "3"(分別被包住)$#為3(引數數量)

shell指令碼里面ps1="${x##*/}\$"的意思是什麼?

19樓:

將x變數的值去掉前面的路徑作為ps1(預設的提示符),比如:

將/abc/def/ghi去掉路徑後,變成了 ghi

請問指令碼是什麼意思,請問指令碼語言是什麼意思? 系謝謝

指令碼是批處理檔案的延伸,是一種純文字儲存的程式,一般來說的計算機指令碼程式是確定的一系列控制計算機進行運算操作動作的組合,在其中可以實現一定的邏輯分支等。指令碼程式相對一般程式開發來說比較接近自然語言,可以不經編譯而是解釋執行,利於快速開發或一些輕量的控制。現在的指令碼語言是比較多的,一般的指令碼...

SheLLy是什麼意思,英文女名shelly含義是什麼

姚很瘦 意思是多殼的,有殼的,殼一般的 shelly adj.貝殼的 由貝殼組成的 多貝殼的,鋪滿貝殼的 有殼的 有莢的 似殼的 殼狀的.shelly n.1.謝利 男子名 2.謝莉 女子名 shelley 關於shelly的短語 shelly 雪萊 雪莉 于臺煙 shelly ocean 貝殼棕 ...

《在c 中什麼意思,在c 中「 」是什麼意思?

例如c 2 就是 c c 2 把c左移2位得到的值 給 c 再如 a 2 c a 3 的優先順序比 高 即c c a 3 即c c 5 c語言運算子優先順序 詳細列表 國外的那些事 位運算。計算機都是二進位制的嘛 左邊有兩個箭頭說明向左移一位也就是在原來的基礎上乘以2 按位取反 10 00 01 1...