Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: deathfish 30 Dubna 2014, 11:33:09

Název: Bash aktualizace vstupního souboru
Přispěvatel: deathfish 30 Dubna 2014, 11:33:09
Ze vstupního textu pomocí grepu vytáhnu hledaný výraz:
Kód: [Vybrat]
grep 'aabbcc' /home/vstupnitext.txtdále ve scriptu údaj spracuji jak potřebuji, vše OK
teď se  vstupní soubor "vstupnitext.txt" aktualizuje (přidá se "112233") a když  zadám jako další krok :
Kód: [Vybrat]
grep '112233' /home/vstupnitext.txttak to výraz nevyhledá i když UŽ je obsažen ve "vstupnitext.txt"
domnívám se že bash pracuje se vstupním souborem který si "někam" uloží a nenačítá ho při každém požadovaném kroku.
Pokud tomu tak je, existuje nějaký příkaz na aktualizaci vstupního souboru?

Název: Re:Bash aktualizace vstupního souboru
Přispěvatel: ntz_reloaded 30 Dubna 2014, 11:55:34
to tam mas nekde nejakou chybu .. kdyz proste neco zapises do nejakeho souboru a pote to ctes grepem, tak grep cte soubor cely

ukaz nam cely ten kod
Název: Re:Bash aktualizace vstupního souboru
Přispěvatel: Mariocz 30 Dubna 2014, 12:39:22
taky se mi to zdálo jako blbost tak jsem to vyzkoušel
Kód: [Vybrat]
#! /bin/bash

if [ ! -f file ]
then
touch file
echo -e 'original file content\n' > file
fi

echo 'file before'
echo '---------'
cat file
echo 'new text' >> file
echo -e '\nfile after'
echo '---------'
cat file

exit 0

nedáváš tomu grepu spíš proměnnou kterou naplníš tím souborem?
Název: Re:Bash aktualizace vstupního souboru
Přispěvatel: deathfish 30 Dubna 2014, 21:54:10
teď jedu na jiném stroji a nedělá mi to, je to moje chyba, omlouvám se, stydím se  :-[