Creo que en OS X cuando usa -i, se requiere una extensión para los archivos de copia de seguridad. . Prueba:
sed -i .bak 's/hello/gbye/g' *
Usando GNU sed
la extensión es opcional .
Si usa el -i
opción que necesita para proporcionar una extensión para sus copias de seguridad.
Si tienes:
File1.txt
File2.cfg
El comando (tenga en cuenta la falta de espacio entre -i
y ''
y el -e
para que funcione en nuevas versiones de Mac y GNU):
sed -i'.original' -e 's/old_link/new_link/g' *
Cree 2 archivos de copia de seguridad como:
File1.txt.original
File2.cfg.original
No existe una forma portátil de evitar hacer copias de seguridad porque es imposible encontrar una combinación de comandos sed que funcione en todos los casos:
sed -i -e ...
- no funciona en OS X ya que crea-e
copias de seguridadsed -i'' -e ...
- no funciona en OS X 10.6 pero funciona en 10.9+sed -i '' -e ...
- no funciona en GNU
Nota Dado que no hay un comando sed que funcione en todas las plataformas, puede intentar usar otro comando para lograr el mismo resultado.
Por ejemplo, perl -i -pe's/old_link/new_link/g' *