Vis hvilke apper &-prosesser bruker en Internett-tilkobling via kommandolinje i Mac OS X

Innholdsfortegnelse:

Anonim

På samme måte som du kan overvåke Mac OS X-filsystembruken via kommandolinjen, kan du også finne ut hvilke apper og individuelle prosesser som bruker Mac-ens internettforbindelse for øyeblikket. Dette er et veldig nyttig triks hvis du vet at båndbredden din blir brukt av noe, eller hvis du bare prøver å spore opp hvilke applikasjoner eller bakgrunnsprosesser som kobler til omverdenen.

For å finne ut hvilke Mac-apper, demoner, prosesser eller annet som bruker internett, skal vi gå til kommandolinjen i Mac OS X og bruke en mer avansert variant av den utmerkede lsof kommando. Og ja, dette vil fungere for alle versjoner av MacOS eller Mac OS X, og internettforbindelsestype gjennom hvilken som helst tjeneste, enten det er wi-fi og trådløst nettverk eller ethernet, og dette vil også fungere på en linux-maskin siden lsof er et standard nettverk verktøy binær.

Vi vil dekke to måter å gjøre dette på, den første gir lettlest utdata og vil skrive ut navn på applikasjoner og prosesser som kobles til omverdenen, og den andre strengen vil gi ekstremt detaljert informasjon mht. hvilken PID kobler til hvilken vert og bruker hvilken protokoll. Du kan bruke enten eller begge deler, avhengig av dine spesifikke behov.

Hvordan vise navn på applikasjoner og prosesser ved å bruke Internett i Mac OS X

Åpne Terminal-appen hvis du ikke allerede har gjort det, og skriv inn følgende kommando nøyaktig:

lsof -nPi | cut -f 1 -d ">

Du vil kanskje kopiere / lime inn den strengen hvis du ikke er kjent med kommandolinjen, bare sørg for at hele strengen kjøres på en enkelt linje med syntaks.

Hvis du kjører den lange kommandoen, får du utdata som ser slik ut:

SystemUIS Dropbox iChatAgen Finder iTunes Google ssh

Dette er bare applikasjons- og prosessnavnene til det som aktivt bruker internett. Nå er det åpenbart ikke mye mer data her, men hvis du bare prøver å spore opp en useriøs app for båndbreddehogging, er den noen ganger tilstrekkelig for det formålet.

Selvfølgelig er det mange situasjoner der utvidet informasjon om hvilken prosess og/eller apper bruker en nettverkstilkobling, hvordan og til hvilken ekstern adresse, og det er det vi skal dekke videre.

Hvordan vise detaljert informasjon for prosess-ID Koble til Internett fra Mac OS X

Hvis du vil ha mer detaljert informasjon enn det som er vist i kommandostrengen ovenfor, kan vi revidere kommandoen ovenfor slik at vi får mer rådata ut av lsof ved å fjerne rørene til andre kommandolinjeverktøy, etterlater oss med uraffinerte detaljer direkte fra lsof. Du vil også legge merke til at jeg kuttet ut -n-flagget fordi jeg vil se vertsnavnene denne gangen:

lsof -Pi

Dette vil gi mye mer detaljerte data, inkludert appnavn, PID, protokoll, IP-adresse, vertsnavn og gjeldende status for tilkoblingen. Alle svært nyttige data.

Hvis det er informasjonsoverbelastning, prøv å sende kommandoen gjennom "mer" slik at det er lettere å lese i biter, eller bruk grep til å sortere data for en spesifikk app eller prosess, slik:

… iChatAgen 228 David 13u IPv4 0x1e148b1e 0t0 TCP 192.168.1.29:50051->206.198.4.49:5190 (ETABLERT)

lsof er et kraftig verktøy med et utall bruksområder. Jeg dekket bruken av lsof for å spore opp båndbreddeproblemer for en stund siden, men det brukte bare -i-flagget som er betydelig mer forenklet. Du kan bruke hvilken som helst av variantene som dekkes, og hver har sine egne brukstilfeller som kan være nyttige.

Kommandolinjeverktøy er rettet mot avanserte brukere, men de som er nyere i Mac OS X eller som bare ikke liker Terminal, kan bruke apper som Private Eye for å hjelpe deg med å se hva som bruker en Mac-internettforbindelse i en lignende måte, om enn mye mer brukervennlig og helt i en tradisjonell Mac-applikasjon.

Vis hvilke apper &-prosesser bruker en Internett-tilkobling via kommandolinje i Mac OS X