當前位置:首頁 » 網頁前端 » 腳本怎麼寫入參數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

腳本怎麼寫入參數

發布時間: 2023-06-14 16:59:56

A. sqlplus 執行腳本文件時如何傳參數

d:\test.sql腳本如下:
[sql] view plain
select &1 from &2;
exit;

執行時這樣傳參數:sqlplus "scott/tiger@test" @d:\test.sql sysdate al
注意:參數必須用&[1-9]表示,不然傳不進去,會提示讓手動輸入參數
[sql] view plain
C:\>sqlplus "scott/tiger@test" @d:\test.sql sysdate al

D:\>sqlplus "scott/tiger@test" @d:\test.sql sysdate al

SQL*Plus: Release 11.2.0.1.0 Proction on 星期二 11月 1 21:59:00 2011

Copyright (c) 1982, 2010, Oracle. All rights reserved.

連接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Proction
With the Partitioning, OLAP, Data Mining and Real Application Testing options

原值 1: select &1 from &2
新值 1: select sysdate from al

SYSDATE
--------------
01-11月-11

從 Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Proction
With the Partitioning, OLAP, Data Mining and Real Application Testing options 斷


D:\>

如果腳本中有重復用到相同的值,如果&1=&2:
d:\tes2.sql
[sql] view plain
delete scott.emp where no=&1 or deptno=&2;
commit;

執行時,就必須傳2個參數:
[sql] view plain
sqlplus "scott/tiger@test" @d:\test2.sql 10 10

小竅門: 這時用procere就可以不用傳多個相同的參數,則只用傳1個參數:
d:\test3.sql
[sql] view plain
declare
var_no number:=&1;
begin
delete scott.emp where no=var_no or deptno=var_no;
commit;
end;

sqlplus "scott/tiger@test" @d:\test3.sql 10

B. 如何在windons bat 腳本接受用戶輸入參數

@echo off&setlocal enabledelayedexpansion&title Copy file folder to local

color 0A

echo

===========Start to data===========

:start

cls

echo.請輸入你要拷貝的源文件地址,比如:C:deptshared

set /p input_source=

echo.請輸入目的文件地址,如:D:1

set /p input_dist=

if not exist "!input_source!" echo.你輸入路徑不存在!!&goto :start

if not exist "!input_dist!" echo.你輸入路徑不存在!!&goto :start

x !input_source! !input_dist! /s/d/y 1>nul 2>nul&&echo 拷貝完成!||echo 拷貝失敗!

pause

C. 如何給shell腳本傳參數

from:Linux命令行與shell腳本編程大全.第3版

向shell腳本傳遞數據的最基本方法是使用命令行參數。命令行參數允許在運行腳本時向命令行添加數據。
$ ./addem 10 30
本例向腳本addem傳遞了兩個命令行參數( 10和30)。腳本會通過特殊的變數來處理命令行參數。

下面是在shell腳本中使用單個命令行參數的簡單例子。

$cattest1.sh
#!/bin/bash
#usingonecommandlineparameter
#
factorial=1
for((number=1;number<=$1;number++))
do
factorial=$[$factorial*$number]
done
echoThefactorialof$1is$factorial
$
$./test1.sh5
Thefactorialof5is120
$