Linuxのようなtop / netstat / etc。Mac OS Xで?


24

Mac OS XのUnixユーティリティは使用するのが非常に苦痛です。port install coreutils +with_default_namesそして、他のいくつかのそのような置換はそれらのほとんどを修正しますが、それは壊れたMac OS Xのデフォルトにいくつかを残します-最も厄介なことtopnetstat、しかし、私はもっともっと考えることができると確信しています。

のようなコマンドはOS固有のものであるtopと推測しているnetstatので、Linuxに相当するもののソースを取得して再コンパイルするだけでは機能しません。

Mac OS Xで動作するこれらのコマンドや他の同様のコマンドに最も近いものは何ですか?


3
それらを「交換」と呼ぶことは歴史的に正確ではないかもしれません。これらはBSDバリアントから派生したものであり、歴史的にそれらの多くは、慣れ親しんでいるLinuxツールよりも前のものです。ただし、良い質問であり、ポートの代わりにfinkを使用する私たちにとっても同様の問題が存在します。
dmckee

3
あなたの質問に含まれる編集性が少ない方が良いでしょう。あるUnixライクなOSから別のOSに移行することは、異なる一般的なUnixコマンドが異なるプラットフォームで異なる進化の経路をたどる方法に常に驚きをもたらします。Solaris、DEC Ultrix、AT&T SysV、HP-UX、GNU / Linux(多くのディストリビューション)、NEXTSTEP、OpenStep、BSDI、Xenix / SCO、FreeBSD、NetBSD、Mac OS X、およびCygWinを使用しました。あるフレーバーのツールのユニークな機能に慣れすぎてしまうと、別の好意を得るのは苦痛です。それはそれらを「壊れた」ものにしない。
Spiff

2
そうです、ハードを忘れないでください。LinuxとOSXを除き、リストの残りの部分は歴史的な関心のみです。
TAW

@taw:Solarisはまだ多くの場所で、特にzfsで使用されています。
ダン

回答:


24

多くのnetstat機能は、lsofコマンドで置き換えることができます。私はよく使っていました

netstat -lnp | grep 1234

誰がポート1234でリッスンしていたかを確認します。lsof(両方のシステムで使用可能)を使用すると、次のことができます。

lsof -i :1234

OSXの一番上のコマンドも悪くありません。ただ違うだけです。また、一部のメトリックはMacでのみ意味があると確信しています。

lsof -Pi :1234(ポートの)サービス名を解決しようとしないことで、少し速くする必要があることに注意してください。


6
OSX lsofはOSX よりnetstatも優れていますnetstat、ありがとう。
TAW

-P名前解決を防ぐために追加し、より高速にします。だから、netstat -ntlpちょっとLinuxのようなlsof -Pi | grep -i listen。それでも、複数のPIDが同じポートでどのようにリッスンできるかはわかりません。Linuxで見られるものではありません:/
Ray Foss

@RayFoss Macおよびその他のOSでは、プロセスはをリッスンできます:1234と127.0.0.1:1234の別の1つ。後者が優先されます。Linuxでは禁止されています。
エリックダーキス

4

かっこいい、htopHomebrewにあります!私はそれは、Linuxのクローンではないと思いますtopが、あなたが使用することを決定した場合はhtop、Linux上で、私は推測するhtopOS X上であまりにも遠くはありません。


1
リスニングサーバーのクイックリストを取得できないため、直接の置き換えではありません
レイFoss
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.