Saltar al contenido

Asignar conteo de grep a la variable

Nuestro grupo de trabajo ha estado largas horas buscando para dar respuesta a tus dudas, te brindamos la resolución y esperamos serte de gran ayuda.

Solución:

Para asignar la salida de un comando, utilice var=$(cmd) (ya que shellcheck le dice automáticamente si pega su script allí).

#!/bin/bash
some_var=$(grep -c "some text" /tmp/somePath)
echo "var value is: $some_var"

Encontré el problema

Es la asignación, esto funcionará:

some_var=$(command)

Si bien esto no funcionará:

some_var = $(command)

¡Gracias por tu ayuda! Aceptaré la primera respuesta útil.

some_var=$(grep -c "some text" /tmp/somePath)

De man bash:

   Command substitution allows the output of a command to replace the com‐
   mand name.  There are two forms:

          $(command)
   or
          `command`

   Bash performs the expansion by executing command and replacing the com‐
   mand substitution with the standard output of  the  command,  with  any
   trailing newlines deleted.

Recuerda que tienes la capacidad de comentar tu experiencia si diste con la solución.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *