Android

Bash: tilføj filen

How to Back up and Restore VMware Virtual Machines Using Active Backup for Business | Synology

How to Back up and Restore VMware Virtual Machines Using Active Backup for Business | Synology

Indholdsfortegnelse:

Anonim

I Bash er der flere måder at tilføje tekst til en fil. Denne artikel forklarer nogle af dem.

Hvis du vil tilføje tekst til en fil, skal du have skrivetilladelser til den. Ellers får du en tilladelse, der er nægtet tilladelse.

Føj til en fil ved hjælp af omdirigeringsoperatøren ( >> )

Omdirigering giver dig mulighed for at fange output fra en kommando og sende det som input til en anden kommando eller fil. >> omdirigeringsoperatøren føjer output til en given fil.

Der er et antal kommandoer, som du kan bruge til at udskrive tekst til standardoutput og omdirigere den til filen, hvor echo og printf er de mest anvendte.

For at føje tekst til en fil skal du specificere navnet på filen efter omdirigeringsoperatøren:

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

Når den bruges med indstillingen -e , fortolker echo kommandoen de tilbageholdte undslippe tegn såsom nyline :

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

Hvis du vil producere mere kompleks output, skal du bruge printf kommandoen, der giver dig mulighed for at specificere formateringen af ​​output:

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

En anden måde at tilføje tekst til en fil er at bruge Here-dokumentet (Heredoc). Det er en type omdirigering, der giver dig mulighed for at videregive flere inputlinjer til en kommando.

For eksempel kan du videregive indholdet til cat og føje det til en fil:

cat «EOF» file.txt Den aktuelle arbejdsmappe er: $ PWD Du er logget ind som: $ (whoami) EOF

Du kan føje output fra enhver kommando til en fil. Her er et eksempel med datokommandoen:

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

Når du tilføjer en fil ved hjælp af en omdirigering, skal du passe på ikke at bruge operatøren > til at overskrive en vigtig eksisterende fil.

Føj til en fil vha. tee kommandoen

tee er et kommandolinjeværktøj i Linux, der læser fra standardindgangen og skriver til både standardoutput og en eller flere filer på samme tid.

Som standard overskriver tee kommandoen den angivne fil. For at tilføje output til filen skal du bruge tee med indstillingen -a (- --append ):

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

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

Fordelen ved at bruge tee kommandoen frem for >> -operatøren er, at tee giver dig mulighed for at tilføje tekst til flere filer på én gang og at skrive til filer, der ejes af andre brugere i forbindelse med sudo .

For at tilføje tekst til en fil, som du ikke har skrivetilladelser til, skal du afhænge sudo før tee som vist nedenfor:

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

tee modtager output fra echo kommandoen, hæver sudo-tilladelserne og skriver til filen.

For at tilføje tekst til mere end en fil skal du specificere filerne som argumenter til tee kommandoen:

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

Konklusion

Hvis du vil tilføje tekst til en fil i Linux, skal du bruge >> omdirigeringsoperatøren eller tee kommandoen.

bash terminal