Fórum Root.cz
Hlavní témata => Server => Téma založeno: Lukáš 12. 03. 2019, 16:17:36
-
Nazdar lidi,
mám problém, se kterým si nevím rady. Potřebuji si na svém serveru (Ubuntu) scriptem zjistit verzi vsftpd serveru. Na to je příkaz:
vsftpd -v
Verze se v konzole vypíše, ale nejsem schopen tu hodnotu "odchytnout".
Problém je tedy v tom, že mám shellový script, který verzi vypíše, ale když tento script zavolám třeba php scriptem, tak tam už ta verze vidět není.
Šméčka typu vsftpd -v 2>&1
jsem zkoušel.
Chtěl jsem si tedy aspoň udělat script, který výstup uloží do souboru a ten pak použiji:
vsftpd -v > vsftpd.log
vsftpd -v &> vsftpd.log
vsftpd -v 2>&1 | tee vsftpd.log
Nic výstup neuloží. Vypíše se ale vždy.
Mám podezření, že program vsftpd verzi neposílá do STDOUT ani STDERR, ale ještě někam jinam :D
Zmiňuji konkrétně vsftpd proto, že je to zatím jediný program, který nejsem schopen "zkrotit". Výstupy mnoha jiných programů se mi odchytnou podařilo.
Nenapadá vás něco? :-[
-
Napadlo mě zeptat se googlu ;-)
How can I get vsftpd version into shell variable? (http://"https://unix.stackexchange.com/questions/56108/how-can-i-get-vsftpd-version-into-shell-variable/103949")
-
Já se ptal googlu několik hodin, ale toto jsem nenašel. No jestli to posílá na STDIN, tak nazdar :D
Každopádně moc děkuji - zítra zkusím. Pořád mě vrtalo hlavou co je jinak, ale že se dá poslat něco na STDIN jsem ani nevěděl.
-
Super, tak:
vsftpd -v 0>&1
funguje jak má. Ještě jednou díky! :)