V určitém okamžiku, kdy chcete z jakéhokoli důvodu uložit výstup příkazu do konkrétního souboru, jako je ladění. V Linuxu k uložení výstupu souboru používáme stdout . Toto je také známé jako stream příkaz.
V oblasti výpočetní techniky stream je něco, co přenáší data. V našem případě se jedná o textová data. Pomocí stdout , můžeme tato data streamovat a uložit do textového souboru pro budoucí použití.
Provedeme vás, jak uložit výstup příkazu přímo do souboru namísto kopírování a vkládání.
Uložení výstupu příkazu do souboru v systému Linux
Než budete pokračovat, měli byste nejprve vědět, co je Přesměrování a kombinace symbolů?
Symbol přesměrování přímo přesměruje příkaz do souboru namísto zobrazení výstupu na terminálu. Existuje kombinace symbolů přesměrování, které můžete použít jako “>”
,”>>”
,”&>”
,”&>>”
.
Související čtení :Jak přesměrovat výstup na /dev/null v Linuxu
V Linuxu se to, co zadáváme, nazývá „stdin “ a výstup, který obdržíme, je známý jako „stdout “. Pokud výstupní soubor v určitém umístění neexistuje, automaticky se znovu vytvoří a soubor uloží.
Ujistěte se, že jste použili “>”
, pak je minulá data nahradí novým výstupem příkazu. Pokud chcete přesměrovat oba „stdout “ a „stderr ““, poté použijte “&>”
.
Nyní použijeme tento symbol přesměrování k přesměrování výstupu do souboru.
Jak použít „>“, „>>“ k přesměrování stdout do textového souboru?
Když použijete “>”
symbol přesměrování, přesměruje výstup příkazu do konkrétního souboru. Pokud jste znovu použili stejný soubor k přesměrování, bude poslední výstup přepsán.
Přesměrujte výstup do souboru pomocí symbolu „>“
Ukážeme si to pomocí příkazu pwd a hostnamectl příkaz k zobrazení systémových informací s přesměrováním “>”
pro uložení výstupu do demofile.txt .
Nejprve uložíme výstup aktuálního pracovního adresáře do souboru.
[root@linuxshelltips:~]# pwd > demofile.txt
Nyní přesměrujeme druhý výstup do souboru.
[root@linuxshelltips:~]# hostnamectl > demofile.txt
Nyní si prohlédněte obsah souboru.
[root@linuxshelltips:~]# cat demofile.txt Static hostname: linuxshelltips Icon name: computer-vm Chassis: vm Machine ID: 1e2b46dbc0c04b05b592c837c366bb76 Boot ID: b1cc891c679c41c5a3502be3dca679c6 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 4.20.0-1.el7.elrepo.x86_64 Architecture: x86-64
Přesměrujte výstup do souboru pomocí symbolu „>>“
Když použijete tento “>>”
přesměrování, přesměruje výstup příkazu do konkrétního souboru a zajistí, že poslední uložená data nebudou vymazána a nebude přidán nový výstup do stejného souboru.
Například znovu použijeme příkaz pwd a hostnamectl k zobrazení systémových informací s přesměrováním “>>”
pro uložení výstupu do demofile.txt .
[root@linuxshelltips:~]# pwd > demofile.txt [root@linuxshelltips:~]# hostnamectl >> demofile.txt [root@linuxshelltips:~]# cat demofile.txt /root Static hostname: linuxshelltips Icon name: computer-vm Chassis: vm Machine ID: 1e2b46dbc0c04b05b592c837c366bb76 Boot ID: b1cc891c679c41c5a3502be3dca679c6 Virtualization: kvm Operating System: CentOS Linux 7 (Core) CPE OS Name: cpe:/o:centos:centos:7 Kernel: Linux 4.20.0-1.el7.elrepo.x86_64 Architecture: x86-64
Z výše uvedeného výstupu můžete vidět, že všechny minulé výstupy jsou stále dostupné ve stejném souboru.
Pokud máte jakýkoli dotaz, neváhejte se zeptat v sekci komentářů.