Alguém pode explicar o funcionamento deste script bash?

0

Encontrei o seguinte script que gostaria de executar, mas não estou completamente certo sobre o que ele fará. Alguém pode explicar o funcionamento do seguinte script bash; ou seja, o que está fazendo e como está sendo feito?

echo - "Who are you looking for: "
read user

if [ -n "$user" ]
then
   list='w | grep $user | cut -c19-30'

   if [ "$list" != "" ]
   then
     echo "The user $user is logged in from $list"
   else
     echo "The user $user is not logged in now"
   fi
fi
    
por Anu Mathuria 04.04.2014 / 18:47

1 resposta

6

Este script permite que você digite um usuário que você está procurando. Ele informará se o usuário está logado ou não e, se o usuário estiver logado, de qual local.

read user

Isto lê o nome de usuário que você digitou

'w | grep $user | cut -c19-30'

A primeira parte, w , imprime todos os usuários logados acessando esta máquina. O grep $user filtra as linhas que não contêm o nome de usuário que você digitou. Finalmente, o cut -c19-30 divide a saída para obter os caracteres da posição 19 para a posição 30 (é onde a parte do local é). / p>

O último bloco condicional verifica apenas se existe alguma saída do comando anterior. Se não houver, significa que o usuário não está logado. Se houver, o usuário está logado e imprime a localização.

    
por saiarcot895 04.04.2014 / 18:53