Estou seguindo este guia de script do shell bash:
Na seção Comparações Numéricas, cita um exemplo:
anny > num=`wc -l work.txt`
anny > echo $num
201
anny > if [ "$num" -gt "150" ]
More input> then echo ; echo "you've worked hard enough for today."
More input> echo ; fi
O que parece acontecer acima é que armazenamos uma sequência de comandos em uma variável bash e, em seguida, invocamos eco na variável. O que parece acontecer é que a cadeia é avaliada e o comando wc é executado e retorna a contagem de linhas para o terminal de controle.
Ok, então inicio o meu terminal no Ubuntu 12.04 e tento algo semelhante:
$ touch sample.txt && echo "Hello World" > sample.txt
$ cat sample.txt
Hello World
$ num='wc -l sample.txt'
echo $num
wc -l sample.txt
Espere um segundo, que não avaliou a string e retornou a contagem de linhas. Isso ecoou a corda de volta ao terminal. Por que obtive resultados diferentes?
wc -l work.txt, em vez disso, é atribuído o número 201.