Skript nemůže vytvořit neexistující soubor

Hamparle

  • ****
  • 374
  • Místo: 0.0.0.0/0
Skript nemůže vytvořit neexistující soubor
« kdy: 03. 11. 2020, 00:31:00 »
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)


Re:>> : cannot create soubor: Directory nonexistent
« Odpověď #1 kdy: 03. 11. 2020, 00:57:23 »
Co máte na prvním řádku skriptu?

tecka

  • ***
  • 185
Re:>> : cannot create soubor: Directory nonexistent
« Odpověď #2 kdy: 03. 11. 2020, 01:07:43 »
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.

k3dAR

  • *****
  • 3 193
Re:>> : cannot create soubor: Directory nonexistent
« Odpověď #3 kdy: 03. 11. 2020, 01:35:49 »
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...

Re:>> : cannot create soubor: Directory nonexistent
« Odpověď #4 kdy: 03. 11. 2020, 08:18:32 »
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.


Kit

  • *****
  • 1 140
Re:>> : cannot create soubor: Directory nonexistent
« Odpověď #5 kdy: 03. 11. 2020, 08:26:38 »
uname >> "$HOME/test.txt"