0

私はシェルスクリプトの世界に不慣れです。

私はbashシェルスクリプトを書きました。

スクリプトの名前は new.sh です

Select T1.date as dateFact,
T2.idmfg as idMfg,
T1.id as userId,
FROM Table1 T1
JOIN 
Table2 T2
ON 
T1.id=T2.id 
WHERE 
T1.date ='${Date}'
T2.idmfg='${idMfg}'; 

new.shの実行中に、手動で入力DateidMfgたい。例えば

sh new.sh -d 2013-03-20 -i 201

どこで、Dateであり2013-03-20idMfgである201

どうすればいいですか?

前もって感謝します。

4

2 に答える 2

4
#!/bin/bash

Date="$1"
idMfg="$2"

mysql<<EOF
SELECT T1.date AS dateFact, T2.idmfg AS idMfg, T1.id AS userId
FROM Table1 T1
JOIN Table2 T2
ON T1.id=T2.id 
WHERE T1.date = "${Date}", T2.idmfg = "${idMfg}";
EOF

使用法 :

./new.sh 2013-03-20 201

名前付きスイッチが必要な場合は、チュートリアルを参照してください: http://wiki.bash-hackers.org/howto/getopts_tutorial例: http://mywiki.wooledge.org/BashFAQ/035

于 2013-03-21T21:24:54.013 に答える
0
 new.sh 2013-03-20 201

スクリプト内では、最初の (日付) パラメータは $1、2 番目のパラメータは $2 です。

于 2013-03-21T21:22:46.670 に答える