history [number]
zshell 이 .bash처럼 작동하도록 하려면 fc
어떻게 해야 합니까 ?history [number]
➜ exec bash
bash-3.2$ history 3
35 history 5
36 exit
37 history 3
bash-3.2$
➜ history 3
1 pwd
2 ..
3 mv work Documents
➜ history
3133 history 5
3134 exec bash
3135 history
3136 history 3
3137 history -3
3138 history 20
그래서 bash에서는 내가 예상한 대로 동작합니다: 마지막 3개의 명령입니다. 그러나 zshell에서는 거꾸로입니다. 처음 3개의 역사적 명령입니다. 이건 짜증나는 일이고 고치고 싶어요.
지금까지 내가 왔던 것 중 가장 가까운 것:
function history {
fc -l -$1
}
그러나 이것은 여전히 마지막 항목이 아닌 1부터 시작하는 기록을 생성합니다.
답변1
생각보다 어렵지 않았어요. 이것을 내 항목에 추가하세요.~/.profile
# zshell aliases history to "fc -l"
# quick version
alias h="fc -l -50" # last 50
# history searching
function hg {
echo "Searching for '$1'..."
fc -l 0 | grep "$1"
}
관련 있고 도움이 되는 것:zsh의 History 명령을 사용하여 이전 또는 최신 기록 항목 표시
답변2
bash
거꾸로 된 것 같으니 숫자에 적힌 표시를 뒤집어 보면...
$ PS1='%% ' zsh -f
% echo blah
blah
% echo de
de
% echo blah
blah
% history() { num=$(( -1 * $1 )); builtin history $num }
% history 3
2 echo de
3 echo blah
4 history() { num=$(( -1 * $1 )); builtin history $num }
%