Perl プログラム「transfer.pl」を作成しました。入力パラメーターはハッシュ値です (キーと値は文字列です)。コード セグメントは次のとおりです。
my %transfers = ();
if (!GetOptions("transfer=s" => \%transfers))
{
Usage();
exit(1);
}
Windowsシステムを使用しました。コマンドラインで、次のように入力しました。
perl tranfer.pl --transfer "table = %s"="[TableName=%s]"
table = %s
キーがで値がであることを願っていますが[TableName=%s]
、Getopt::Long は常に最初のものを見つけるようです。=
そのため、キーはtable
であり、値は%s=[TableName=%s]
です。
入力したとき
perl tranfer.pl --transfer "テーブル \= %s"="[テーブル名\=%s]"
キーはtable \
、値は%s=[TableName\=%s]
です。
文字列値で「=」をバイパスして、コードを期待どおりに動作させる方法を知りたいですか?
どうもありがとうございました!