「パラメータリストが長すぎます」エラー解決方法[閉じる]

「パラメータリストが長すぎます」エラー解決方法[閉じる]

commnadを実行していて、ls -lt *$ID* このコマンドを単独で実行すると機能しますが、スクリプト内では次のエラーが返されます arg list too long。このIDは一意であり、単一のファイルにのみこのIDがあります。スクリプトは、上記のエラーを返すことを除いて、本番開発環境で正常に実行されます。だから、次のコマンドも試しました。

find . -name "*$TN_ID*" | xargs -L 1

これは開発環境でも機能しますが、本番環境では機能しません。

答え1

この場合、「arg list too long」とは、パターンに一致するファイルが多すぎることを意味します。私の考えでは、パターンがすべてのファイルに一致するように変数TN_IDが設定されていないようです。変数に正しい値があることを確認するには、 find コマンドの前に $TN_ID のデバッグ出力を追加します。

関連情報