Comprobando si existe una línea en el archivo

Comprobando si existe una línea en el archivo

Tengo un script bash que le pregunta al usuario el número de núcleos de CPU y lo guarda en la variable denominada $cores. Ahora quiero agregar esta variable a .bashrc, así que le pregunto al usuario cuántos núcleos de CPU tiene y luego si quiere guardar este valor en .bashrc.

Ahora la pregunta: ¿cómo puedo verificar si $coresya existe .bashrcpara que el script no vuelva a preguntarle al usuario?

Respuesta1

En lugar de preguntarle al usuario cuántos núcleos tiene el sistema, ¿por qué no simplemente preguntarle al sistema? Esto es mejor porque no implica escribir en un archivo propiedad del usuario. ver algo comoeste, que utiliza 'getconf' para solicitar la variable NPROCESSORS_CONF. O para otros sistemas, las ideas presentadas.aquíPuede ser útil: usar sysctlo grep over /proc/cpuinfopara encontrar la cantidad de núcleos.

Respuesta2

Prueba esto:

'awk /\$core/ { print }'

Respuesta3

puedes comprobar si una variable está configurada en bash usando:

if [[ -z "$cores" ]]
then
    echo "not set"
else
    echo "set"
fi

Esto comprobará si $coresla variable está configurada o no. es decir, si $cores es nulo, se mostrará "no establecido"; de lo contrario, "establecido". De hecho, .bashrcno se obtiene automáticamente para shells no interactivos, como los que se inician cuando se ejecuta un script de shell. Por lo tanto, lo colocaría . .bashrccerca del comienzo de su .bash_loginarchivo, para asegurarse de que .bashrcse obtenga para shells interactivos tanto con inicio de sesión como sin inicio de sesión.

información relacionada