1樓:匿名使用者
給你個全的,你在linux環境下多試下就明白了:
$0 這個程式的執行名字
$n 這個程式的第n個引數值,n=1..9$* 這個程式的所有引數,此選項引數可超過9個。
$# 這個程式的引數個數
$$ 這個程式的pid(指令碼執行的當前程序id號)$! 執行上乙個背景指令的pid(後台執行的最後乙個程序的程序id號)
$? 執行上乙個指令的返回值 (顯示最後命令的退出狀態。0表示沒有錯誤,其他任何值表明有錯誤)
$- 顯示shell使用的當前選項,與set命令功能相同$@ 跟$*類似,但是可以當作陣列用
2樓:匿名使用者
$$ : 當前 shell 的 pid
$#: shell的輸入引數的個數, 比方說 a.sh aaa mmm nnn , 則在 a.sh 裡,$# 為 3
$?: 上一條命令的返回值,比方說在指令碼裡....
grep *** a.txt
echo $?
...就會 echo 上一條命令 grep 命令的返回值。
3樓:小公尺飛貓
請仔細查閱linux下shell的特殊字元解釋
linux shell 指令碼中, $@ 和$# 分別是什麼意思?
4樓:匿名使用者
直接看示例:
[root@localhost xly]# cat t.sh#!/bin/bash
echo $#
echo $@
[root@localhost xly]# sh t.sh0[root@localhost xly]# sh t.sh a b c
3a b c
說明:$@表示所有引數內容
$#表示所有引數的個數
5樓:apple哲皓
linux shell 指令碼中,copy $@ 和$# 分別是:
$@:表示所有指令碼引數的內容
$#:表示返回所有指令碼引數的個數。
示例:編寫如下shell指令碼,儲存為test.sh#!/bin/sh
echo "number:$#"
echo "argume:$@"
執行指令碼:
./test.sh first_arg second_arg說明:給指令碼提供了兩個引數,所以$#輸出的結果是2,$@代表了引數的內容!
6樓:匿名使用者
這個指令碼分別是什麼意思?這個咱也不太清楚的,專業的人士來幫助你
7樓:文化廚子
$@:表示所有指令碼引數的內容
$#:表示返回所有指令碼引數的個數。
示例:編寫如下內shell指令碼,儲存為容test.sh#!/bin/sh
echo "number:$#"
echo "argume:$@"
執行指令碼:
./test.sh first_arg second_arg說明:給指令碼提供了兩個引數,所以$#輸出的結果是2,$@代表了引數的內容!
8樓:
$@表示所有引數
$#表示引數的個數
unix 下shell指令碼中的$?代表什麼意思啊?
9樓:絲雪飄飄
$?是指的上條命令執行的狀態。。。。執行成功或者不成功。。。
示例一:在命令列裡使用:
tux@tux-desktop:~$ cd /no_such_dirbash: cd: /no_such_dir: no such file or directory
tux@tux-desktop:~$ echo $?
1tux@tux-desktop:~$ cd /boot/tux@tux-desktop:/boot$ echo $?
0示例二:在shell指令碼裡使用
#!/bin/bash
cd ~/test/aaa 1>/dev/null 2&>1if [ ! $? -eq 0 ]
then
echo "沒有這個目錄!!"
exit
firm -rf *
當然還有:
$$ $* $@ $1 $# 等等
10樓:
用來取變數的值的
最好是到網上學習shell
語法很簡單的
就等於windows的批處理.bat檔案
就是有些關鍵字要記
shell指令碼中的$#表示什麼意思呢?
11樓:匿名使用者
shell指令碼執行過程中 把第乙個字串作為指令碼名稱(或程式名稱)處理,第
二、第三。。。都作為引數處理。shell會將這些引數預設的賦給變數 1 2 3 。。。所以當你echo $1 $2的時候看到的就是引數變數的值。
解答一下$#的問題:這裡$#是計算輸入引數的個數還有一些有用的演算法:$@ 代表所有輸入的引數;$* 同上
12樓:匿名使用者
以下是一些shell執行的特殊變數,供你參考:
$0 這個程式的執行名字
$n 這個程式的第n個引數值,n=1..9$* 這個程式的所有引數
$# 這個程式的引數個數
$$ 這個程式的pid
$! 執行上乙個背景指令的pid
$? 執行上乙個指令的返回值
$@ 跟$*類似,但是可以當作陣列用 。
因此,如你所說:在shell中,$0,$1,$2應該表示的分別是shell名,shell檔案接受的第乙個引數、第二個引數完全正確。
13樓:
特殊的變數
$# :代表後接的引數『個數』
./script.sh opt1 opt2 opt3 opt4
$# ---> 4
shell指令碼中的「$<」是什麼意思?
14樓:匿名使用者
暫時沒有發現shell中這樣的環境變數
shell的系統環境變數包括以下
$n $1 表示第內乙個引數,$2 表示第二個引數 ...
$# 命令列引數的個數容
$0 當前程式的名稱
$? 前乙個命令或函式的返回碼
$* 以"引數1 引數2 ... " 形式儲存所有引數$@ 以"引數1" "引數2" ... 形式儲存所有引數$$ 本程式的(程序id號)pid
$! 上乙個命令的pid
15樓:蔚驕環碧萱
$錢號(dollar
sign)
變數替換(variable
substitution)的代表符號。
vrs=123
echo
$vrs123
shell指令碼裡「$?」什麼意思?
16樓:匿名使用者
$? 上個命令抄的退出狀態,
bai或函式的返回值。
例子du1 :
ls 命令沒有找到匹配的結zhi果. 所以返回2 $? 就是2[root@daosg-rhel6-17 etc]# ls /tmp/*.log
ls: cannot access /tmp/*.log: no such file or directory
[root@sg-rhel6-17 etc]# echo $?
2例子2 :
ls 命令找到了結果. 成功返回0 所以$? 就是0[root@sg-rhel6-17 etc]# ls /tmp/*.tmp
/tmp/reminder.tmp
[root@sg-rhel6-17 etc]# echo $?0
17樓:apple哲皓
linux shell 指令碼
中,bai $@ 和$# 分別是:du
$@:表示
所有指令碼參zhi數的內dao容
$#:表示返專回所有指令碼引數的個數。
示例:編寫如
屬下shell指令碼,儲存為test.sh
#!/bin/sh
echo "number:$#"
echo "argume:$@"
執行指令碼:
./test.sh first_arg second_arg說明:給指令碼提供了兩個引數,所以$#輸出的結果是2,$@代表了引數的內容!
shell 指令碼裡$?什麼意思
18樓:匿名使用者
$? 上個命令的退出狀態,或函式的返回值。
例子1 :
ls 命令沒有找到匹版配的結果. 所以返回2 $? 就是權2[root@sg-rhel6-17 etc]# ls /tmp/*.log
ls: cannot access /tmp/*.log: no such file or directory
[root@sg-rhel6-17 etc]# echo $?
2例子2 :
ls 命令找到了結果. 成功返回0 所以$? 就是0[root@sg-rhel6-17 etc]# ls /tmp/*.tmp
/tmp/reminder.tmp
[root@sg-rhel6-17 etc]# echo $?0
19樓:徐未知
樓上bai正解,但不是很全,不一du定是執行指令碼,多指執行zhi命令,dao一般在程式裡面會對其進行判斷內,如果發現上
容一行的命令執行有誤,該指令碼就會終止執行。
if [ $? -ne 0 ]
then
#指令碼不正常退出
exit 1fi
請問Shell指令碼程式設計是通過什麼軟體編寫的嗎??
用任何文字處理工具都可以,記事本之類的都行。指令碼的意思,就是它本身是文字,然後通過虛擬機器執行。c語言不需要visual c 寫,只要乙個記事本就可以了,寫好後編譯為二進位制檔案,就可執行。shell也不需要什麼工具,只用乙個記事本就可以寫,寫好後就可執行。因為它是解釋型的,直譯器會邊解釋邊執行。...
道教九秘是什麼?在《遮天》中分別代表了什麼能力
九秘,臨兵鬥者皆陣列前行。臨字秘,可召喚使用此秘者所在星域或地域至強的版戰魂附體,並可使用該 權強者的道則。這個是大召喚術有木有?兵字秘,可控制對手所持兵器,甚至可以控制對手為自己所用,這個大傀儡術有木有?鬥字秘,演化世間一切攻伐大術的鬥戰聖法,這個是逍遙派小無相功。者字秘,不斷修復肉身,聖體表示,...
哈利波特中分院分別代表什麼,哈利波特中四個分院分別代表什麼?
1 格蘭芬多 特質 勇氣和冒險 代表動物 獅子,萬獸之王 象徵元素 火 簡介 法語gryffin d or,意為金色的格蘭芬 griffin 格蘭芬,即 獅鷲 是希臘神話中一種半獅半鷹的生物,教後來常用它作耶穌的象徵,因為它代表對大地 獅子 和天空 鷹 的控制。事實上就是鷹頭馬身有翼獸。2 赫奇帕奇...