Když příkazem >(>) píšu do souboru a soubor neexistuje, tak to nevadí, ale když jsem měl ve skriptu příkaz např uname >> neexistuje.txt,
tak vyhodí
cannot create ~/test.txt: Directory nonexistent
čím je rozdíl způsoben? nějakou proměnnou nebo detektcí, zda příkaz běží uvnitř skriptu nebo je zadán interaktivně nebo nějaké volby shellu? či samotný shell (sh vs.bash)
Co máte na prvním řádku skriptu?
Neexistující soubor se vytvoří, ale adresář musí existovat. ~ znamená domovský adresář a možná ti ten skript běží pod uživatelem, jehož domovský adresář opravdu neexistuje, nebo jsi to napsal způsobem, že se ~ bere doslova a nenahradí se odpovídající cestou.
Proč ti přesměrování do neexistuje.txt hlásí problém s test.txt asi bez křišťálové koule nevykoumáme.
dej si do skriptu pred ten radek tento:
echo ~ >/tmp/co_ted_vidim_jako_vlnovku.txt
a zjistis konkretne, co z toho co uz bylo receno mas za problem...
Citace od: tecka kdy 03. 11. 2020, 01:07:43
Proč ti přesměrování do neexistuje.txt hlásí problém s test.txt asi bez křišťálové koule nevykoumáme.
Lidé, když píší na fóra často buď mění názvy souborů nebo tam zadají vstup a výstup z hlavy.
uname >> "$HOME/test.txt"