Android

Bash: dodati u datoteku

SysTools Outlook Attachment Extractor | Extract Multiple Outlook Email attachments

SysTools Outlook Attachment Extractor | Extract Multiple Outlook Email attachments

Sadržaj:

Anonim

U Bashu postoji više načina za dodavanje teksta u datoteku. Ovaj članak objašnjava neke od njih.

Da biste dodali tekst datoteci, morate imati dozvole za pisanje na nju. U protivnom, dobit ćete pogrešku kojoj je odbijeno dopuštenje.

Dodati datoteci pomoću operatora preusmjeravanja ( >> )

Preusmjeravanje vam omogućuje da zabilježite izlaz iz naredbe i pošaljete ga kao ulaz drugoj naredbi ili datoteci. Operator preusmjeravanja >> dodaje izlaz datoj datoteci.

Postoji nekoliko naredbi koje možete koristiti za ispis teksta na standardni izlaz i preusmjeravanje u datoteku, a echo i printf su najčešće korištene.

Da biste dodali tekst u datoteku, navedite naziv datoteke nakon operatora preusmjeravanja:

echo "this is a new line" >> file.txt

Kada se koristi s opcijom -e , naredba echo interpretira znakove izgubljene u slijede crte poput nove linije :

echo -e "this is a new line \nthis is another new line" >> file.txt

Ako želite proizvesti složeniji izlaz, koristite naredbu printf koja vam omogućuje da odredite oblikovanje izlaza:

printf "Hello, I'm %s.\n" $USER >> file.txt

Drugi način dodavanja teksta u datoteku je upotreba dokumenta Here (Heredoc). To je vrsta preusmjeravanja koja vam omogućuje da u naredbu proslijedite više linija unosa.

Na primjer, možete proslijediti sadržaj naredbi cat i dodati je u datoteku:

cat «EOF» file.txt Trenutna radna mapa je: $ PWD Prijavljeni ste kao: $ (whoami) EOF

Možete dodati datoteku izlaza bilo koje naredbe. Evo primjera sa naredbom za date :

date +"Year: %Y, Month: %m, Day: %d" >> file.txt

Prilikom dodavanja datoteci pomoću preusmjeravanja, budite oprezni da ne upotrebite > operatora za prepisivanje važne postojeće datoteke.

Dodajte datoteci pomoću tee naredbe

tee je uslužni program naredbenog retka u Linuxu koji čita sa standardnog ulaza i piše istovremeno u standardni izlaz i u jednu ili više datoteka.

Prema zadanom, tee naredba prepisuje navedenu datoteku. Za dodavanje izlaza u datoteku koristite tee s opcijom -a ( --append ):

echo "this is a new line" | tee -a file.txt

echo "this is a new line" | tee -a file.txt >/dev/null

Prednost upotrebe tee naredbe nad operatorom >> jest ta što vam omogućuje dodavanje teksta u više datoteka odjednom i pisanje u datoteke koje posjeduju drugi korisnici u kombinaciji sa sudo .

Da biste dodali tekst u datoteku na koju nemate dopuštenja za pisanje, dodajte sudo prije tee kao što je prikazano u nastavku:

echo "this is a new line" | sudo tee -a file.txt

tee prima izlaz echo naredbe, povisuje sudo dopuštenja i piše u datoteku.

Da biste dodali tekst u više datoteka, navedite datoteke kao argumente naredbi tee :

echo "this is a new line" | tee -a file1.txt file2.txt file3.txt

Zaključak

U Linuxu za dodavanje teksta u datoteku koristite operatora preusmjeravanja >> ili tee naredbu.

bash terminal