Κόλπα με το zsh: global and suffix aliases

Οι σοβαροί χρήστες του τερματικού κάνουν χρήση των aliases. Για παράδειγμα στο αρχείο '~/.zshrc' να έχουν

alias mkdir='mkdir -p'
alias ls='lsd'
alias pbcopy='xclip -selection clipboard'
alias pbpaste='xclip -selection clipboard -o'

αλλά με το zsh μπορούμε να πάμε ένα βήμα παραπέρα με τα Global Aliases. Τι είναι αυτά; Αφήνουν επιτέλους πίσω το περιορισμό που έχουν τα κλασσικά aliases. Ποιο περιορισμό; Πότε είχαν κάτι τέτοιο; Ποτέ δεν είχαν κάποιο.

Ε λοιπόν είναι κάποια πράγματα που τα έχεις συνηθίσει έτσι και πότε δεν έχεις σκεφτεί τους περιορισμούς τους. Και τα aliases υπάρχουν μόνο σαν αρχή μιας εντολής, όχι σαν ορίσματα ή κάτι άλλο. Ας δούμε τι έχει να προσθέσει το zsh στο παιγνίδι.

Global Aliases

Ας τα δούμε στην πράξη, φτιάχνοντας μερικά

alias -g G='| grep'
alias -g H='| head'
alias -g T='| tail'
alias -g CP='| pbcopy'

και στην συνέχεια

cat ~/.ssh/id_rsa.pub CP 
cat log/development.log T 

Δεν υπάρχει κανένας περιορισμός που να λέει πως πρέπει να είναι με ΚΕΦΑΛΑΙΑ, αλλά πραγματικά βοηθάει.

Μια χρησιμότητα τους είναι να κρατάς εκεί μεγάλα regular experssions:

alias -g monsterglob="**/([^A-Z[:digit:]])##(#q.x^X^u1002Lm+30mM-1)"
ls -l monsterglob

Suffix Aliases

Με αυτά ανοίγουμε απευθείας αρχεία από το τερματικό. Για παράδειγμα

alias -s md=xed
alias -s html=xdg-open

πλέον αρκεί να δώσουμε το όνομα ενός αρχείου markdown για να το ανοίξουμε με το xed ή το όνομα ενός αρχείο html για να ανοίξει με τον browser που έχουμε ως επιλεγμένο.

1 Like