GNU/Linux >> Znalost Linux >  >> Linux

Jak připojit k souboru jako sudo?

Použijte tee -a (nebo tee --append ) s sudo

tee - read from standard input and write to standard output and files
[...]
   -a, --append
      append to the given FILEs, do not overwrite
[...]

Váš příkaz se tedy stane

echo "something" | sudo tee -a /etc/config_file

Výhody tee nad prováděním Bash s oprávněními správce jsou

  • Nespouštíte Bash s oprávněními správce
  • Pouze část 'zápis do souboru' běží s pokročilými oprávněními
  • Citování složitého příkazu je mnohem jednodušší

Přesměrování se provede v aktuálním shellu. Chcete-li provést přesměrování se zvýšenými oprávněními, musíte spustit samotný shell se zvýšenými oprávněními:

sudo bash -c "somecommand >> somefile"

Nechte sudo vytvořit sub-shell:

sudo sh -c "echo 'JAVA_HOME=/usr/lib/jvm/java-6-sun' >> /etc/profile"

V tomto příkladu sudo spustí "sh" se zbytkem jako argumenty.

(toto je ukázáno jako příklad na manuálové stránce sudo)


Linux
  1. Jak nastavit Sudo bez hesla pro konkrétního uživatele

  2. Jak připojit výstup do souboru?

  3. Jak grep \nv souboru

  1. Jak přidat text na konec souboru v Linuxu

  2. Jak mohu chown soubor na subuid bez sudo

  3. Jak mohu použít sudo ke kontrole, zda soubor existuje?

  1. Jak snadno přidat text na konec souboru v Linuxu

  2. Jak připojit data do vyrovnávací paměti ve skriptu Shell?

  3. Jak připojit více řádků k souboru?