Gatto eof

Gatto eof
Il gatto è una delle utility più comuni e utili della linea di comando nell'ecosistema Linux. Ti consente di leggere o concatenare il contenuto di un file in modo semplice e facile da navigare. Se combinato con altri strumenti come AWK, SED, meno e più, il gatto può essere uno degli strumenti più potenti del tuo arsenale Linux.

In questo articolo, esploreremo come possiamo usare il comando CAT e la funzione EOF per eseguire attività come scrivere stringhe multilinea su un file e altro ancora.

Scrivere stringa multi-riga in un file

Il comando CAT e la funzione EOF ci forniscono un modo semplice e intuitivo per scrivere stringhe multilinea in un file in bash. Si avvia dal comando cat seguito da un operatore di spostamento a sinistra.

Successivamente, aggiungiamo la parola chiave che costringerà Bash a interrompere l'input quando viene riscontrato.

Infine, passiamo un singolo operatore di reindirizzamento e il nome del file che si desidera scrivere.

Una sintassi di esempio è come mostrato nella seguente:

gatto << EOF > il mio file.sh
> Prima riga
> e un altro
> e un altro
> Eof


Una volta che Bash incontra la parola chiave EOF nell'ingresso, termina l'operazione di input e scrive il contenuto fornito al file.

Un esempio è come mostrato nel seguente:

gatto << EOF > eco.sh
> #!/Bin/Bash
>
> Echo "Hello World"
> Eof


Nell'esempio precedente, iniziamo aprendo l'operazione multilinea e diciamo a Bash di scrivere il contenuto all'eco.file sh. Questo crea il file se non esiste.

Infine, scriviamo le stringhe multiple consecutivamente e premi Invio per procedere alla riga successiva.

Una volta fatto, possiamo chiamare la stringa EOF per terminare l'input e scrivere sul file. Possiamo verificare visualizzando il contenuto del file.

Cat Echo.sh
#!/Bin/Bash
Echo "Hello World"

Utilizzo di cat eof per tubo di stringa multilinea

Quando si lavora con testi in bash, incontrerai scenari in cui è necessario fare una stringa multilinea a un comando.

La funzione Cat ed EOF può tornare utile. Nell'esempio seguente, utilizziamo il comando CAT ed EOF per tubola la stringa multilinea su GREP.

gatto << EOF | grep 'apache' > Apache.TXT
log4j
Apache Kafka
OpenJdk
Apache Webserver
Elasticsearch
Eof


Il comando precedente prende tutte le stringhe di input e le piogge ciascuna di esse per Grep. Grep quindi cerca le stringhe corrispondenti e scrivele ad Apache.file txt.

L'output risultante è mostrato nel seguente:

gatto apache.TXT
Apache Kafka
Apache Webserver

Conclusione

In questo articolo, abbiamo coperto due metodi principali per l'utilizzo del comando CAT e la funzione EOF per scrivere la stringa multi-riga in un file e piubire le stringhe multilinea in bash.