Согласно mail(1)
страница справочника, list
работает просто великолепно:
list (l) List the valid mail commands.
То, что Вы ищете, вероятно, h
или z
headers
(h) Lists the current windowful of headers. To view the
next or previous group of headers, see the z command.
z mail presents message headers in windowfuls as described under
the headers command. You can move mail's attention forward to
the next window with the z command. Also, you can move to the
previous window by using z-.
Я не думаю, что можно добраться, инициировали расширение истории и возвращают результат из zsh.
Вот подтверждение концепции для использования zpty
модуль для взаимодействия с нижним процессом zsh имейте его, разворачивают строки истории и изучают результат (который мог быть должен сообщить об ошибке или выполнить команду). Поместите первоначальную историю, которую Вы хотите перед каждой попыткой расширения в названном файле prior_history
.
#!/usr/bin/zsh
setopt extended_glob
zmodload zsh/zpty
zpty -b inferior_zsh 'PS1=%% PS2=\> TERM=dumb strace -eread,write -o zsh.strace zsh -f'
zpty -r inferior_zsh out $'*\r%'
zpty -w inferior_zsh 'stty -echo'
zpty -r inferior_zsh out $'*\r%'
start='mv /Volumes/hdd1/path/to/a/file.foo'
history_string='!#$:r:s/foo/bar/'
for ((i=1; i <= $#history_string; i++)) {
zpty -w inferior_zsh "fc -R prior_history"
zpty -r inferior_zsh out $'*\r%'
zpty -w inferior_zsh "print -r expansion: ${(q)start} ${history_string[1,$i]}"
zpty -r inferior_zsh out $'*\r[%>]'
out=${${out#*$'\r\r\n'}%$'\r\n'% ##$'\r\r%'}
print -r "$i ${(qqqq)out}"
}