18 votos

¿Cuáles son las desventajas de poner GNU coreutills primero en ${PATH}?

Vengo de Linux a MacOS, y muchos de mis scripts asumen versiones GNU de las utilidades proporcionadas en GNU coreutils .

Podría poner el GNU coreutils bin en el directorio anterior en $PATH que /bin .

¿Esto se hace comúnmente? Si lo hago, ¿qué desventajas/roturas debo esperar en el futuro?

19voto

Romperá cualquier script que espere utilidades de estilo BSD (argumentos diferentes, funcionalidad parcialmente diferente)

Pero puedes instalar coreutils con Homebrew o Macports que les dará un prefijo g ( gcp etc.). Y luego adapta tus scripts para que los utilicen (dependiendo de la plataforma en la que se ejecuten).

17voto

whereswalden Puntos 267

Mientras que el uso de coreutils sin prefijar tiene el potencial de romper cualquier script que espere programas de estilo BSD, he estado usando coreutils sin prefijar durante casi 8 años, y nunca me he encontrado con un solo problema. Dada la naturaleza anecdótica de ese informe de experiencia, deberías tomarlo con un grano de sal, pero mi experiencia ha sido que los peligros reportados de la no prefijación son exagerados.

3voto

Oskar Skog Puntos 138

Creo que es más seguro no tener los coreutils de GNU primero en el PATH, pero realmente no conozco MacOS.

Una forma relativamente fácil de conseguir que sus scripts existentes utilicen GNU coreutils es redefinir PATH al principio de cada script.

export PATH=/path/to/coreutils:$PATH

De esta forma no tendrás que renombrar (o añadir la ruta completa) a todos los comandos de un script.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X