Чем отличается количество строк?
$ head -n 100000 ./access.log > ./data/log.sample
$ cat $_ | wc -l
1933424
bash
io-redirection
Loom
источник
источник
!$
делает то , что вы хотели, но это не будет работать в сценарии IIRC.tee
команду в вашем скрипте.Ответы:
$_
расширяется до./access.log
(последний аргумент последней выполненной команды), а не./data/log.sample
.Итак, вы на самом деле видите количество строк
./access.log
.Функция redirection (
>
) не является частьюhead
команды, так как она выполняется оболочкой еще доhead
запуска команды. Следовательно с$_
тобой получится./access.log
.От
man bash
:источник