alias
не считает $@
,$_
(или$anything
)особыми, поэтому они просто дословно передаются оболочке.
Таким образом, ваш оригинал:
alias mvaf="mv $@ && cd $_"
означает, что:
mvaf f dst/
превращается в:
mv $@ && cd $_ f dat/
Поскольку $@
и $_
вряд ли будут определены, оболочка интерпретирует это как:
mv && cd f dat/
, поэтому mv
вызывается без аргумента и выдает ошибку «Отсутствует файловый операнд».
При переопределении как:
alias mvaf="mv $@ "
и выполнить:
mvaf f dst/
превращается в:
mv $@ f dst/
, что, как и прежде, сводится к:
mv f dst/
и заставляет вас думать, что это сработало!
Согласно базе знаний MozillaZine , вы должны иметь возможность открыть Config Editor…
, а затем установить для mail.purge.ask
значение false
.