地球の順序を変更できますか?

地球の順序を変更できますか?

次の手順を実行して、システムログに特定のメッセージのすべてのインスタンスを時系列で表示しようとします。

grep squiggle /var/log/messages*

残念ながら、グローバルパターンは現在アクティブなファイルと最初に一致します。例えば。

/var/log/messages
/var/log/messages-20120220
/var/log/messages-20120227
/var/log/messages-20120305
/var/log/messages-20120312

つまり、最新のメッセージが最初に表示され、その後に履歴メッセージが時系列で表示されます。

messagesリストの最後に空の一致(つまりのみ)が表示されるようにグローバルパターンの動作を調整することは可能ですか?

そうでなければ、この問題を解決する良い方法は何ですか?

ベストアンサー1

zshでは、以下を使用して一致順序を制御できます。グローバル予選

echo /var/log/messages*        # usual lexicographic order
echo /var/log/messages*(On)    # reverse lexicographic order
echo /var/log/messages*(om)    # reverse chronological order (ascending mtime)
echo /var/log/messages*(Om)    # chronological order order (descending mtime)

(より多くの可能性についてはマニュアルを参照してください。)最新バージョンの比較機能を使用または提供して、独自のソートoe順序を定義することもできますo+

ここで正しいファイルの順序は時系列です。ただし、bashでも名前に基づいて簡単にシミュレートできます。

grep squiggle /var/log/messages{-*,}

おすすめ記事