GNU/Linux >> Linux Esercitazione >  >> Linux

Come posso sostituire le virgolette singole con un altro carattere in sed?

Questo farà quello che vuoi

echo "hari's"| sed 's/\x27/ /g'

Sostituirà le virgolette singole presenti ovunque nel file/testo. Anche se vengono utilizzati per le virgolette, verranno sostituiti con spazi. In tal caso (rimuovi le virgolette all'interno di una parola non al limite della parola) puoi usare quanto segue:

echo "hari's"| sed -re 's/(\<.+)\x27(.+\>)/\1 \2/g'

HTH


Basta lasciare la virgoletta singola e inserire una citazione singola sfuggita:

sed 's/'\''/ /g' input

possibile anche con una variabile:

quote=\'
sed "s/$quote/ /g" input

Cerca di mantenere i comandi sed il più semplici possibile, altrimenti rimarrai confuso su ciò che avresti scritto leggendolo in seguito.

#!/bin/bash
sed "s/'/ /g" myfile.txt

Linux
  1. Come ottenere la portabilità con Sed -i (modifica sul posto)?

  2. Come utilizzare Sed per sostituire una stringa multilinea?

  3. Come sostituire una stringa con una stringa contenente una barra con Sed?

  4. Sostituire una riga con un altro contenuto utilizzando Sed e Parallel per un file di grandi dimensioni?

  5. Come sostituire il testo come sed con python?

Come sostituire una distribuzione Linux con un'altra dal dual boot [mantenere la partizione home]

Come si combinano tutte le righe che terminano con un carattere barra rovesciata?

Come utilizzare Sed o Ex per sostituire un blocco (codice multilinea) con un nuovo blocco di testo (codice)?

Come sostituire un carattere con un altro in tutti i nomi di file delle directory correnti?

Come rimuovere il carattere \r con sed

Come sostituire tutti i contenuti di una cartella con un'altra