コマンドラインでワイルドカード文字を渡す方法

コマンドラインでワイルドカード文字を渡す方法

だからこれはうまくいきます:

foo -a -b -c "path/file.ext"

ディレクトリ内のすべてのファイルを渡したい場合も同様です。

foo -a -b -c path/*

しかし、引用符を追加すると

foo -a -b -c "path/*"

もう動作しません。 「該当するファイルはありません...」と表示されます。

パラメータをエスケープするには、引用符を追加する必要があるようです(PHPとを使用していますescapeshellarg)。

答え1

これescapeshellarg ドキュメントによると:「安全な主張」

しかし、あなたはそれを複数の引数として解釈したいと思います。

以下を使って拡張してみてください。全体的な状況最初。

関連情報