GNU/Linux >> Znalost Linux >  >> Linux

Jak vytisknout Stdout příkazu v opačném pořadí na Linux Shell

Nedávno jsme narazili na problém zobrazit standardní výstup (stdout) příkazu Linuxu v opačném pořadí.

Pro např.; ls -lrt by vypsal soubory a adresáře na základě data vytvoření/aktualizace, ale chtěl by získat výstup v opačném směru.

Řešení:  Linuxový shell má mnoho funkcí. Má vestavěný příkaz tac část coreutils, které napsali Jay Lepreau a David MacKenzie. Zřetězí a vytiskne soubory v opačném pořadí.

tj. stdout příkazu je dán jako standardní vstup do tac a zkopíruje standardní vstup na standardní výstup a obrací záznamy každý řádek zvlášť.

Krok 1:Seznam souborů ve výchozím pořadí.

[root@ssl httpd]$ ls -rlt
total 12
lrwxrwxrwx 1 root root 29 Sep 8 15:58 modules -> ../../usr/lib64/httpd/modules
lrwxrwxrwx 1 root root 19 Sep 8 15:58 logs -> ../../var/log/httpd
drwxr-xr-x 2 root root 4096 Sep 8 15:58 conf
lrwxrwxrwx 1 root root 10 Sep 8 15:58 run -> /run/httpd
drwxr-xr-x 2 root root 4096 Nov 28 16:41 conf.modules.d
drwxr-xr-x 2 root root 4096 Nov 28 16:41 conf.d

Krok 2:Seznam souborů v obráceném pořadí jejich výchozího pořadí.

[root@ssl httpd]$ ls -lrt | tac
drwxr-xr-x 2 root root 4096 Nov 28 16:41 conf.d
drwxr-xr-x 2 root root 4096 Nov 28 16:41 conf.modules.d
lrwxrwxrwx 1 root root 10 Sep 8 15:58 run -> /run/httpd
drwxr-xr-x 2 root root 4096 Sep 8 15:58 conf
lrwxrwxrwx 1 root root 19 Sep 8 15:58 logs -> ../../var/log/httpd
lrwxrwxrwx 1 root root 29 Sep 8 15:58 modules -> ../../usr/lib64/httpd/modules

Tento vestavěný příkaz tac lze použít na libovolném příkazu Linuxu nebo na vašich vlastních skriptech.


Linux
  1. Jak používat Su Command v Linuxu

  2. Jak nakonfigurovat omezený Bash Shell v Linuxu

  3. Jak zaznamenat každý příkaz shellu v Linuxu

  1. Jak zjistit, zda je výstup příkazového nebo shellového skriptu Stdout nebo Stderr?

  2. Jak změnit Shell v Linuxu

  3. Jak vytisknout výstup příkazu Linuxu do souboru?

  1. Jak používat aliasy shellu v Linuxu

  2. Jak používat funkce shellu příkazového řádku v Linuxu

  3. Jak najdu svou verzi shellu pomocí příkazu Linux?