sed
Ceci est une ancienne révision du document !
La commande "sed"
La page de man de sed.
Exemples
J'essaye d'isoler une partie d'un domaine pour ne récupérer que la partie “principale”. Je veux pouvoir enlever http
, https
, www
et toute la fin ( .be
, .com
, …) :
$ cat domaines.txt http://montest.be/ https://www.montest.be http://monautretest.com/blabla test.fr
On peut y aller par étapes :
$ cat domaines.txt | sed -e "s/http\:\/\///" -e "s/https\:\/\///" -e "s/www\.//" -e "s/\..*//" montest montest monautretest test
Une astuce de Lord : On peut aussi utiliser un autre séparateur que “/” ce qui, peut-être, clarifie un peu la commande. Exemple avec “#” :
$ sed -e "s#http\:\/\/##" -e "s#https\:\/\/##" -e "s#www\.##" -e "s#\..*##" domaines.txt montest montest monautretest test
On est même plus obliger d'échapper les “/” :
$ sed -e "s#http\://##" -e "s#https\://##" -e "s#www\.##" -e "s#\..*##" domaines.txt montest montest monautretest test
Pour supprimer seulement http(s)
:
$cat domaines.txt | sed -e "s/\(http\|https\)\:\/\///" montest.be/ www.montest.be monautretest.com/blabla test.fr
sed.1558953085.txt.gz · Dernière modification : 2020/08/09 12:59 (modification externe)