GNU/Linux >> Znalost Linux >  >> Linux

přidat řádek do souboru POUZE pokud v souboru již není

Za předpokladu, že jej chcete na konci souboru:

LINE="nohup java -jar /mnt/fusion/nfs/labStats/LabInfoAutoLog.jar > /dev/null &"
FILE=/etc/rc.d/rc.local
grep -q "$LINE" "$FILE" || echo "$LINE" >> "$FILE"

jedna možnost jsou dva kroky:

grep -q "yourline" /path/file||sed -i '/..place../ a \the line' file

také možné pomocí awk,

uložit všechny řádky v poli, při ukládání, pokud byl řádek nalezen, ukončete. jinak přidejte řádek do END{} zablokovat na správné místo.

P.S. V souboru jste neuvedli, kam tento řádek přidat.


Linux
  1. Jak přidat záhlaví a řádek upoutávky do souboru v Linuxu

  2. nano:příkaz nenalezen

  3. Jak v Bash přidám řetězec za každý řádek v souboru?

  1. Připojení řádku k souboru pouze v případě, že ještě neexistuje

  2. Bash:přidejte řetězec na konec souboru bez zalomení řádku

  3. sed:jak nahradit řádek, pokud byl nalezen, nebo připojit na konec souboru, pokud nebyl nalezen?

  1. Jak přidat čísla řádků do textových souborů v systému Linux

  2. Zaneprázdněná schránka Číst soubor řádek po řádku?

  3. shebang nebo ne shebang