Articles

så här lägger du till en rad i en fil i bash

Ibland behöver vi arbeta med en fil för programmeringsändamål, och den nya raden kräver att du lägger till i slutet av filen. Denna appending uppgift kan göras med hjälp av’ echo ’och’ tee ’ kommandon. Använda ’>>’ med kommandot ”echo” lägger till en rad i en fil. Ett annat sätt är att använda ’echo,’ pipe (|) och ’tee’ kommandon för att lägga till innehåll i en fil. Hur dessa kommandon kan användas i Bash-skriptet visas i den här artikeln.

skapa en textfil med namnet böcker.txt med följande innehåll för att göra exemplen som visas i nästa del av den här artikeln.

böcker.txt:

lärande PHP och MySQL
lärande Laravel
webbdesign med HTML

exempel-1: Lägg till rad i filen med kommandot”echo”och”>> ’symbol

i följande skript, en befintlig fil, böcker.Txt tilldelas variabeln, filnamnet och ett strängvärde tas som inmatning från användaren att lägga till i slutet av filen. Om inmatningsvärdet inte är tomt lägger kommandot echo till värdet i böckerna.txt-fil med hjälp av’ >> ’ symbol.

#!/bin / bash
# definiera filnamnet
filnamn=’böcker.Txt ’
# Skriv texten som du vill lägga till
Läs-p ”Ange texten som du vill lägga till:” newtext
# kontrollera att den nya texten är tom eller inte
om ; sedan
# bifoga texten med hjälp av ’>>’ symbol
echo $newtext>> $filnamn
fi

output:

’learning jQuery’ tas som ett nytt textvärde i utdata som läggs till i slutet av filen.

exempel-2: Lägg till rad i filen med kommandot ’printf’ och ’>>’ symbol

’>>’ symbol kan användas med kommandot ’printf’ för att Lägg till formaterat innehåll i en fil. I likhet med föregående exempel tilldelas filnamnet och strängvärdena variablerna, filnamnet och newtext. Därefter omdirigerar kommandot ’printf’ värdet av newtext med annan text till slutet av böckerna.txt-fil.

#!/bin / bash
# definiera filnamnet
filnamn=’böcker.txt’
# Skriv texten som du vill lägga till
Läs-p ”Ange texten som du vill lägga till:” newtext
# kontrollera att den nya texten är tom eller inte
om ; sedan
# Lägg till texten med hjälp av ’>>’ symbol
printf ”bifogad text är: %s\N” ”$newtext” >> $filnamn
Fi

utgång:

’webbplats med WordPress’ tas som ett nytt textvärde i utmatningen som läggs till i slutet av filen.

exempel-3: Lägg till rad i filen med kommandot `tee`

’tee’ är ett annat användbart kommando för att lägga till en sträng i en fil. I följande skript tilldelas filnamnet och de nya textvärdena som de tidigare exemplen. Om textvärdet inte är tomt skickar kommandot ’echo’ värdet till kommandot ’tee’ med symbolen’|’. ’- ett ’alternativ används med’ tee ’ kommandot här för att lägga till det mottagna inmatningsvärdet till filen böcker.txt. ’/dev / null ’ används i skriptet för att förhindra att utdata visas i terminalen.

#!/bin / bash
# definiera filnamnet
filnamn=’böcker.txt’
# Skriv texten som du vill lägga till
Läs-p ”Ange texten som du vill lägga till:” newtext
# kontrollera att den nya texten är tom eller inte
om ; sedan
# Lägg till texten med kommandot”tee”
echo $newtext | tee-a $filnamn > /dev/null
fi

output:

`learning CSS3` tas som ett nytt textvärde i utdata som läggs till i slutet av filen.

slutsats:

tre olika sätt visas i den här artikeln för att lägga till text i slutet av en fil med ett bash-skript.