Qual a razão pela qual o número de linhas difere?
$ head -n 100000 ./access.log > ./data/log.sample
$ cat $_ | wc -l
1933424
bash
io-redirection
Tear
fonte
fonte
!$
faça o que você queria, mas não funcionará em um script IIRC.tee
comando em seu script.Respostas:
$_
está expandindo para./access.log
(último argumento do último comando executado), não./data/log.sample
.Então você está realmente vendo o número de linhas de
./access.log
.O redirecionamento (
>
) não faz parte dohead
comando, como é feito pelo shell antes mesmo que ohead
comando seja iniciado. Daí com$_
você teria./access.log
.De
man bash
:fonte