Zoeken op website

Geef opdrachtuitvoer of bestandsinhoud weer in kolomindeling


Bent u het beu om overbelaste opdrachtuitvoer of bestandsinhoud op de terminal te bekijken? Dit korte artikel laat zien hoe u opdrachtuitvoer of bestandsinhoud kunt weergeven in een veel duidelijk “kolommen”-formaat.

We kunnen het hulpprogramma kolom gebruiken om standaardinvoer of bestandsinhoud om te zetten in tabelvorm van meerdere kolommen, voor een veel duidelijkere uitvoer.

Lees ook: 12 nuttige opdrachten voor het filteren van tekst voor effectieve bestandsbewerkingen in Linux

Om het duidelijker te begrijpen, hebben we het volgende bestand “tecmint-authors.txt” gemaakt, dat een lijst bevat met de namen van de top 10 auteurs, het aantal geschreven artikelen en het aantal reacties dat ze tot nu toe op het artikel hebben ontvangen .

Om dit te demonstreren, voert u de onderstaande cat-opdracht uit om het bestand tecmint-authors.txt te bekijken.

cat tecmint-authors.txt
Voorbeelduitvoer
pos|author|articles|comments
1|ravisaive|431|9785
2|aaronkili|369|7894
3|avishek|194|2349
4|cezarmatei|172|3256
5|gacanepa|165|2378
6|marintodorov|44|144
7|babin lonston|40|457
8|hannyhelal|30|367
9|gunjit kher|20|156
10|jesseafolabi|12|89

Met behulp van het kolomcommando kunnen we als volgt een veel duidelijke uitvoer weergeven, waarbij de -t helpt bij het bepalen van het aantal kolommen dat de invoer bevat en een tabel creëert en de -s specificeert een scheidingsteken.

cat tecmint-authors.txt  | column -t -s "|"
Voorbeelduitvoer
pos  author         articles  comments
1    ravisaive      431       9785
2    aaronkili      369       7894
3    avishek        194       2349
4    cezarmatei     172       3256
5    gacanepa       165       2378
6    marintodorov   44        144
7    babin lonston  40        457
8    hannyhelal     30        367
9    gunjit kher    20        156
10   jesseafolabi   12        89

Standaard worden rijen vóór kolommen gevuld. Om kolommen te vullen voordat rijen worden gevuld, gebruikt u de schakelaar -x en om het kolomcommando te instrueren, moet u rekening houden met lege regels (die standaard worden genegeerd), neem de vlag -e op.

Hier is nog een praktisch voorbeeld, voer de twee onderstaande opdrachten uit en zie het verschil om beter te begrijpen wat de magische kolom kan doen

mount
mount | column -t
Voorbeelduitvoer
sysfs        on  /sys                             type  sysfs            (rw,nosuid,nodev,noexec,relatime)
proc         on  /proc                            type  proc             (rw,nosuid,nodev,noexec,relatime)
udev         on  /dev                             type  devtmpfs         (rw,nosuid,relatime,size=4013172k,nr_inodes=1003293,mode=755)
devpts       on  /dev/pts                         type  devpts           (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs        on  /run                             type  tmpfs            (rw,nosuid,noexec,relatime,size=806904k,mode=755)
/dev/sda10   on  /                                type  ext4             (rw,relatime,errors=remount-ro,data=ordered)
securityfs   on  /sys/kernel/security             type  securityfs       (rw,nosuid,nodev,noexec,relatime)
tmpfs        on  /dev/shm                         type  tmpfs            (rw,nosuid,nodev)
tmpfs        on  /run/lock                        type  tmpfs            (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs        on  /sys/fs/cgroup                   type  tmpfs            (rw,mode=755)
cgroup       on  /sys/fs/cgroup/systemd           type  cgroup           (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/
....

Om de mooi opgemaakte uitvoer in een bestand op te slaan, gebruikt u de uitvoeromleiding zoals weergegeven.

mount | column -t >mount.out

Voor meer informatie, zie de manpagina van de kolommen:

man column 

Misschien wilt u ook de volgende gerelateerde artikelen lezen.

  1. Hoe u Awk en reguliere expressies kunt gebruiken om tekst of tekenreeksen in bestanden te filteren
  2. Bestanden zoeken en sorteren op basis van wijzigingsdatum en -tijd in Linux
  3. 11 Geavanceerde Linux ‘Grep’-opdrachten voor tekenklassen en haakje-expressies

Als u vragen heeft, kunt u het onderstaande opmerkingenformulier gebruiken om ons te schrijven. U kunt net zo goed alle nuttige tips en trucs voor de opdrachtregel in Linux met ons delen.