歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

Shell腳本傳遞命令行參數

在Windows下是使用 %1 %2 %3
而在Linux下是使用   $1 $2  $3
-------------------
如:
1.某bat文件
cd ..\data
@java -classpath ..\lib\hsqldb.jar org.hsqldb.util.DatabaseManager %1 %2 %3 %4 %5 %6 %7 %8 %9

2.某sh文件
#!/bin/sh
cd ../data
java -cp ../lib/hsqldb.jar org.hsqldb.util.DatabaseManager $1 $2 $3 $4 $5 $6 $7 $8 $9
-------------------
其中, $0就是腳本文件的名字,$1是第一個參數,$2為第2個...
$9以後就需要打括號了,如${10},${11},${12}...

==========================================================

1.
 #-------------------------------------------------------------------------
 9 # 強烈注意,在賦值的前後一定不要有空格
10 # 如果有空格會發生什麼?
11
12 #  如果"VARIABLE =value",
13 #              ^
14 #+ 腳本將嘗試運行一個"VARIABLE"的命令,帶著一個"=value"參數.
15
16 #  如果"VARIABLE= value",
17 #               ^
18 #+ script tries to run "value" command with
18 #+ 腳本將嘗試運行一個"value"的命令,帶著
19 #+ the environmental variable "VARIABLE" set to "".
19 #+ 一個被賦成""值的環境變量"VARIABLE".
20 #-------------------------------------------------------------------------

2.
################################Start Script#######################################
 1 #!/bin/bash
 2 # "裸體"變量
 3
 4 echo
 5
 6 # 變量什麼時候是"裸體"的,比如前邊少了$的時候.
 7 # 當它被賦值的時候,而不是被引用的時候.
 8
 9 # 賦值
10 a=879
11 echo "The value of /"a/" is $a."
12
13 # 使用let賦值
14 let a=16+5
15 echo "The value of /"a/" is now $a."
16
17 echo
18
19 # 在for循環中
20 echo -n "Values of /"a/" in the loop are: "
21 for a in 7 8 9 11
22 do
23   echo -n "$a "
24 done
25
26 echo
27 echo
28
29 # 在read命令狀態中
30 echo -n "Enter /"a/" "
31 read a
32 echo "The value of /"a/" is now $a."
33
34 echo
35
36 exit 0
################################End Script#########################################

Copyright © Linux教程網 All Rights Reserved