W zsh
często robię:
cd /path/to/somefile(:h)
( h
dla head
).
Jeśli somefile
jest dowiązaniem symbolicznym, możesz także:
cd somefile(:A:h)
Aby dostać się do katalogu, w którym można znaleźć cel dowiązania symbolicznego.
zsh
Odpowiednik Chris' teraz bash
rozwiązanie -tylko byłoby:
cd() {
[[ ! -e $argv[-1] ]] || [[ -d $argv[-1] ]] || argv[-1]=${argv[-1]%/*}
builtin cd "$@"
}
W zsh
, można również zmienić pojęcie „Słowa” Ctrl-WUsuwa.
W zsh
„słowach” w kontekście widżetów ruchu / transpozycji / usuwania opartych na słowach są sekwencje alnum plus znaki w $WORDCHARS
zmiennej, która domyślnie zawiera /
.
Możesz usunąć /
z, $WORDCHARS
aby usunąć Ctrl-Wtylko jeden składnik ścieżki:
WORDCHARS=${WORDCHARS/\/}
Innym przydatnym rozszerzeniem jest select-word-style
widget, którego można używać do interaktywnego wybierania różnych stylów słów.
autoload select-word-style
zle -N select-word-style
bindkey '\ew' select-word-style
Następnie naciśnięcie Alt-Wpozwala wybrać pomiędzy różnymi stylami słów.
$ cd /blah/blih<Alt-W>
Word styles (hit return for more detail):
(b)ash (n)ormal (s)hell (w)hitespace (d)efault (q)uit
(B), (N), (S), (W) as above with subword matching
?