Android

Bash: bifoga till filen

Linux Commands for Beginners 07 - The Bash Configuration File

Linux Commands for Beginners 07 - The Bash Configuration File

Innehållsförteckning:

Anonim

I Bash finns det flera sätt att lägga till text till en fil. Den här artikeln förklarar några av dem.

För att lägga till text till en fil måste du ha skrivbehörigheter för den. Annars får du ett tillåtet nekat fel.

Lägg till en fil med hjälp av omdirigeringsoperatören ( >> )

Omdirigering låter dig fånga utdata från ett kommando och skicka den som inmatning till ett annat kommando eller fil. >> omdirigeringsoperatören lägger till utgången till en given fil.

Det finns ett antal kommandon som du kan använda för att skriva ut text till standardutgången och omdirigera den till filen, där echo och printf är de mest använda.

Om du vill lägga till text till en fil anger du filens namn efter omdirigeringsoperatören:

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

När det används med alternativet -e tolkar echo kommandot de tecken som släpps ut med ryggstopp, t.ex. newline :

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

Om du vill producera mer komplex utmatning använder du kommandot printf som låter dig ange formateringen för utdatorn:

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

Ett annat sätt att lägga till text till en fil är att använda Here-dokumentet (Heredoc). Det är en typ av omdirigering som gör att du kan skicka flera inmatningsrader till ett kommando.

Till exempel kan du skicka innehållet till cat och lägga till det i en fil:

cat «EOF» file.txt Den aktuella arbetskatalogen är: $ PWD Du är inloggad som: $ (whoami) EOF

Du kan lägga till utgången från vilket kommando som helst till en fil. Här är ett exempel med datumkommandot:

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

När du lägger till en fil med en omdirigering måste du inte använda operatören > att skriva över en viktig befintlig fil.

Lägg till en fil med tee kommandot

tee är ett kommandoradsverktyg i Linux som läser från standardingången och skriver till både standardutdata och en eller flera filer samtidigt.

Som standard skrivs tee kommandot över den angivna filen. För att lägga till utgången till filen använder du tee med alternativet -a (- --append ):

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

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

Fördelen med att använda tee kommandot över >> -operatören är att tee tillåter dig att lägga till text till flera filer samtidigt och att skriva till filer som ägs av andra användare i samband med sudo .

För att lägga till text till en fil som du inte har skrivbehörigheter till, beroende på sudo innan tee som visas nedan:

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

tee tar emot utgången från echo , höjer sudo-behörigheterna och skriver till filen.

Om du vill lägga till text i mer än en fil anger du filerna som argument till tee kommandot:

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

Slutsats

För att lägga till text till en fil i Linux använder du omdirigeringsoperatören >> eller tee kommandot.

bash terminal