タイトルを除くすべてのアイテムを並べ替え[重複]

タイトルを除くすべてのアイテムを並べ替え[重複]

時にはコンテンツをソートしたいのですが、タイトルはソートしたくない場合があります。たとえば、Apacheにロードされたモジュールを一覧表示すると、ソートに1行のヘッダーが含まれます。

 $ /usr/local/apache2/bin/apachectl -M | sort

 alias_module (shared)
 asis_module (static)
 cache_disk_module (static)
 cache_module (static)
 core_module (static)
 data_module (static)
 env_module (shared)
 ext_filter_module (static)
 file_cache_module (static)
 filter_module (shared)
 headers_module (shared)
 heartbeat_module (static)
 heartmonitor_module (static)
 http_module (static)
 include_module (static)
 info_module (static)
Loaded Modules:
 log_config_module (shared)
 macro_module (static)
 mime_module (shared)
 mpm_event_module (static)
 ratelimit_module (static)
 reqtimeout_module (shared)
 setenvif_module (shared)
 so_module (static)
 ssl_module (static)
 status_module (shared)
 substitute_module (static)
 unixd_module (static)
 version_module (shared)
 watchdog_module (static)

-bオプションを試してみましたが、何の効果もありませんでした。それにもかかわらず、先行スペースを無視するのは解決策です。私が本当に欲しいのは、N行のヘッダーをソートから除外することです。どうすればいいですか?

ベストアンサー1

私はheadに数値引数を使用してこれを行うことができることを発見しました。ヘッダー以外の残りの行は依然として標準出力に渡されるため、sortは残りの行を受け取ることができます。

$ /usr/local/apache2/bin/apachectl -M | { head -1; sort; }

headの後に必要なだけ多くのヘッダー行を配置します(ここでは1)。

おすすめ記事