Comm

Från Wiki.linux.se
Version från den 26 augusti 2024 kl. 06.22 av Admin (diskussion | bidrag) (→‎Källor)
(skillnad) ← Äldre version | Nuvarande version (skillnad) | Nyare version → (skillnad)
Hoppa till navigering Hoppa till sök

comm - Jämför två sorterade filer rad för rad

Kommandot `comm` används för att jämföra två sorterade filer rad för rad i Unix-liknande operativsystem.

Syntax

comm [ALTERNATIV]... FIL1 FIL2

Beskrivning

Kommandot `comm` läser två sorterade filer och jämför dem rad för rad. Det skriver tre kolumner till standardutgången: rader som endast finns i den första filen, rader som endast finns i den andra filen och rader som finns i båda filerna.

Alternativ

Kommandot `comm` stöder flera alternativ som kan användas för att justera jämförelsen:

  • -1 - Undertryck skrivning av den första kolumnen (rader som endast finns i FIL1).
  • -2 - Undertryck skrivning av den andra kolumnen (rader som endast finns i FIL2).
  • -3 - Undertryck skrivning av den tredje kolumnen (rader som finns i båda filerna).
  • --check-order - Kontrollera att filerna är korrekt sorterade.
  • --nocheck-order - Kontrollera inte om filerna är korrekt sorterade.
  • --output-delimiter=STR - Använd STR som kolumnavgränsare istället för tab.
  • --help - Visa hjälpmeddelande och avsluta.
  • --version - Visa versionsinformation och avsluta.

Exempel

Här är några praktiska exempel som visar hur du kan använda `comm`-kommandot:

  • För att jämföra två filer och visa alla tre kolumner:

comm fil1.txt fil2.txt

  • För att visa rader som endast finns i den första filen:

comm -2 -3 fil1.txt fil2.txt

  • För att visa rader som endast finns i den andra filen:

comm -1 -3 fil1.txt fil2.txt

  • För att visa rader som finns i båda filerna:

comm -1 -2 fil1.txt fil2.txt

  • För att använda ett anpassat kolumnavgränsare:

comm --output-delimiter=" | " fil1.txt fil2.txt

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `comm`-kommandot på macOS jämfört med Linux:

  • Tillgänglighet: `comm` är tillgängligt både på macOS och Linux, och de flesta alternativ fungerar likadant på båda plattformarna.
  • Alternativ: De flesta alternativ som finns på GNU-versionen av `comm` är också tillgängliga på macOS, men det är bra att konsultera `man`-sidan på din specifika plattform för att vara säker.
  • Textkodning: Hanteringen av textkodningar och regionala inställningar kan skilja sig något mellan macOS och Linux, vilket kan påverka hur rader jämförs.

Exempel på att använda `comm` på macOS:

  • För att jämföra två filer och visa alla tre kolumner:

comm fil1.txt fil2.txt

  • För att visa rader som endast finns i den första filen:

comm -2 -3 fil1.txt fil2.txt

Det är alltid bra att konsultera `man`-sidan för `comm` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga och hur de används.

Felsökning

Om du får ett felmeddelande när du använder `comm`, kontrollera följande:

  • Att du använder rätt syntax och alternativ för ditt specifika kommando.
  • Att filerna du försöker jämföra faktiskt existerar och är läsbara.
  • Att filerna är sorterade innan de jämförs, eftersom `comm` förutsätter sorterade filer.

Se även

  • diff - Jämför filer rad för rad.
  • cmp - Jämför två filer byte för byte.
  • sort - Sortera rader av textfiler.

Källor

Sidslut


Det här är en maskinöversättning av linux kommando manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp som har sponsrat Linux.se med webserver.