数百の ksh スクリプトを AIX、Solaris、および HPUX から Linux に移植する作業の中で、別の問題を発見しました。前回の問題はこちら。
このコード:
#!/bin/ksh
if [ -a k* ]; then
echo "Oh yeah!"
else
echo "No way!"
fi
exit 0
(名前が k で始まる複数のファイルを含むディレクトリで実行すると)、「そうそう!」が生成されます。AT&T ksh バリアント (ksh88 および ksh93) で呼び出された場合。一方、「No way!」というエラー メッセージが表示されます。他の ksh バリアント (pdksh、MKS ksh、および bash)。
繰り返しますが、私の質問は次のとおりです。
- pdksh を ksh93 のように動作させる環境変数はありますか? 失敗した場合:
- 必要な動作を取得するための pdksh のオプションはありますか?