textedit see open mac bash_profile sed homebrew .bash-profile

sed - open - see bash_profile mac



.bash_profile sed: / 1 no definido en el RE (1)

Tengo que configurar un entorno de desarrollo web local en mi OS X 10.9 e instalé Homebrew. El siguiente paso en mi guía me dice que agregue lógica a mi ~/.bash_profile con el siguiente comando:

echo "export PATH=/$(echo /$PATH | sed ''s|/usr/local/bin||; s|/usr/local/sbin||; s|::|:|; s|^:||; s|(.*)|/usr/local/bin:/usr/local/sbin:/1|'')" >> ~/.bash_profile && source ~/.bash_profile

Cuando lo ingreso en la terminal obtengo:

sed: 1: "s|/usr/local/bin||; s|/ ...": /1 not defined in the RE

¿Es export PATH=/usr/local/bin:/usr/local/sbin:$PATH que debería escribirse en mi .bash_profile ? ¿Y por qué obtengo ese error?


Debería usar /(.*/) lugar de (.*) .

sed utiliza Basic Regular Expressions (BRE) de forma predeterminada, que usa /( y /) para la captura de grupos, no solo ( y ) como se usa en Extended Regular Expressions (ERE). Como su expresión se usó (.*) lugar de /(.*/) , No se reconoce como una captura de grupo y, por lo tanto, no se captura nada para usar con /1 .

Algunas implementaciones sed , como las provistas por GNU y BSD, sí tienen una extensión para especificar el uso de ERE, pero no está especificada por POSIX , y no puedes usarla si quieres ser portátil.