Ответ 1
Вы хотите глобальный псевдоним zsh
alias -g latest='*(om[1])'
less latest
Я ищу способ быстрого доступа к последнему файлу/каталогу в командной строке, предпочтительно в ZSH.
ls -d *(om[1])
Дает мне это, и если я хочу использовать команду с командой, например. меньше * (om [1])
Это также работает.
Однако утомительно вводить все скобки, и я использую этот много. Поэтому я ищу способ создания ярлыка для этой строки.
Я создал функцию в .zshrc файле
lf(){
ls -d *(om[1])
}
который я могу использовать следующим образом:
less <$(lf)
less <`lf`
но я считаю, что это еще не идеальное.
less |lf
не работает.
Есть ли способ быстрого доступа к последнему файлу без использования "жестких символов"? В идеале это будет просто нечто вроде
less LATEST
Любые идеи?
Вы хотите глобальный псевдоним zsh
alias -g latest='*(om[1])'
less latest
Вы можете использовать _most_recent_file (^Xm)
.
_most_recent_file (^ Xm)
Заполните имя последнего измененного файла, соответствующего шаблону в командной строке (который может быть пустым). Если задан числовой аргумент N, заполните N-й последний измененный файл. Обратите внимание, что завершение, если оно есть, всегда уникально.
-
zshcompsys(1) BINDABLE COMMANDS
Итак, мы можем получить самый последний файл с типом CTRL-x - m. Например:
% less ;# typing `CTRL-X m` here, we could get:
% less newest-file-or-directory
И мы могли бы указать некоторые шаблоны здесь, например, например:
% less *.log ;# when I want the newest *.log:
% less newest.log
В ~/.zshrc
необходимо иметь autoload -Uz compinit; compinit
.