green color change all bash colors grep

change - grep pierde color cuando se ejecuta desde el script de bash



grep color text (2)

Cuando ejecutas un script, se genera un nuevo shell para hacerlo. Este nuevo entorno no tiene la misma configuración que tu shell predeterminado. En cuanto a cómo recuperar el color, no estoy seguro. Puede intentar obtener su perfil al inicio del script:

#!/bin/bash source $HOME/.bash_profile

o cualquier archivo que tenga sentido en su sabor particular de Unix (.profile, .bash_rc, .bashrc .bash_profile) para nombrar algunos.

Escribí un script bash simple porque estaba usando un comando grep con los mismos argumentos, repetidamente. Lo estoy ejecutando desde ~ / bin y funciona bien.

Mi problema es : toda la coloración se ha ido cuando se ejecuta a través de mi script de bash. El mismo comando exacto que se coloca directamente en la línea de comando codifica con color los números de línea, los nombres de archivo, etc.

Aquí está mi guión de bash

#!/bin/bash # grep php files inside of myfolder, recursively and with line numbers grep -rn --include="*.php" "$2" /home/me/myfolder/$1


Probablemente hayas definido grep como un alias para grep --color=auto en tu .bashrc , pero eso no está cargado por scripts. Use un grep --color explícito grep --color en su script.