Enlever '.' du path, sed

Enlever '.' du path, sed - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 02-11-2004 à 17:22:06    

Je voulais enlever '.' de mon PATH car c'est comme ça par défaut, et j'ai essayé cette commande :


echo $PATH | sed 's/:/\n/g' | egrep -v '\.' | sed 's/\n/:/g'


Malheureusement le dernier sed ne remplace pas les saut de ligne pas des ':', pourrivez-vous m'expliquer pourquoi ?

Reply

Marsh Posté le 02-11-2004 à 17:22:06   

Reply

Marsh Posté le 02-11-2004 à 17:25:54    

Le PATH est contenu dans /etc/profile

Reply

Marsh Posté le 02-11-2004 à 17:36:36    

en fait comme c'est un ordinateur public je ne pense pas avoir le droit de changer mon PATH à part en faisant comme ça.
Et sinon ma question est plus théorique qu'autre chose, j'aimerais principalement savoir pourquoi ça ne marche pas.

Reply

Marsh Posté le 02-11-2004 à 17:53:43    

moi j'aurai fait :

Code :
  1. echo $PATH | sed -e "s/:\.:/:/g"


 
pour supprimer le \n en fin de ligne il faut faire |tr "\n" ":"

Reply

Marsh Posté le 02-11-2004 à 19:46:52    

oui c'est vrai ta solution est plus simple.
et ok pour le \n en fin de ligne. As-tu une explication sur pourquoi sed n'arrive pas à le faire ? (je suis débutant dans tout ça et j'ai pas trouvé avec google).

Reply

Marsh Posté le 02-11-2004 à 21:40:26    

si je ne me trompe pas pour sed c'est s/regexp/replacement/
donc \n dans remplacement

Code :
  1. sed 's/:/\n/g'

ca marche
mais dans regexp

Code :
  1. sed 's/\n/:/g'

c'est pas une expression régulière donc ca ne marche pas.
j'ai déjà eu le pb et c'est la seule explication que je trouve.


Message édité par david07 le 02-11-2004 à 21:41:14
Reply

Marsh Posté le 02-11-2004 à 21:53:50    

ok merci pour toutes ces infos :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed