Comm (Unix)
A comm
egy Unix parancs, melyet két állomány összehasonlítására használhatunk.
Használata
A comm
parancs beolvassa a két állományt és soronként feldolgozza. A comm
parancs kimenetele három oszlopba van rendezve. Az első két oszlop a két állomány egyedi sorai, melyek nem szerepelnek a másik állományban. Az utolsó oszlopban találhatók a közös sorok. Ez hasonlóan működik, mint a diff
parancs.
Az oszlopok között tabok találhatók <tab>
. Ha a bemeneti állomány tartalmaz olyan sorokat, melyek elválasztó karakterekkel kezdődnek, akkor a kimeneti oszlop tartalma kérdőjeles lesz.
Ahhoz, hogy a comm
parancs helyesen működjön, ajánlatos a bemeneti állományok sorait megtörni.
Példák
File foo
apple banana eggplant
File bar
apple banana banana zucchini
comm foo bar apple banana banana eggplant zucchini
Az eredményből látszik, hogy az első banana szó mindkét állományban szerepel, a második banana szó viszont csak a második állományban jelenik meg.
Részletesebben a kimeneti állomány így néz ki. Ahol a \t egy tab-ot jelent, míg az \n egy újsort. A szóközök nem jelennek meg a kimeneti állományban.
\t \t a p p l e \n \t \t b a n a n a \n \t b a n a n a \n e g g p l a n t \n \t z u c c h i n i \n
Összehasonlítás a diff paranccsal
Általában a diff
parancs sokkal hatékonyabb eredményben, mint társa a comm
. Scriptek esetén a comm
hasznosabbnak bizonyul.