Προς το περιεχόμενο

Ultimate shell: bash/fish/zsh/csh/whatever


mad-proffessor

Προτεινόμενες αναρτήσεις

Δεν είδα να υπάρχει παρόμοιο θέμα κ μιας και είμαι bash hater θα πω λίγα λόγια για το αγαπημένο μου shell το zsh.

Είναι το υπέρτατο, καλυτερότερο που υπάρχει με χαρακτηριστικά όπως:

  • Άψογο autocompletion
  • theming
  • syntax highlighting
  • native array support σε scripts
  • git suppport
  • globbing
  • δε χρειάζεται να κάνεις cd /blah/blah αρκει το /blah/blah

 

κ.α με τη καλύτερη κοινότητα προγραμματιστών(ένιωσα σαν να έγινα μέλος μιας αίρεσης, ενός shadow network που δεν ήξερα καν οτι υπήρχε :-D ).

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Posix compatible είναι.

Σημείωση δεν είμαι bash hater απλά πίστευα κ πιστεύω ότι έχει security vulnerabilities. Τώρα για το διάβασμα μη δίνεις όρκο εκτός κ αν γράφεις άπειρα scripts ολημερίς.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Συμφωνούμε οτι zsh δηλαδη; Κανας άλλος κάποιο άλλο δε χρησιμοποιεί;

Προσωπικα κ εγω σε 256 colored terminals χρησιμοποιώ ohmyzsh, σε <256 χρησιμοποιώ ένα custom αλλά μάλλον θα το αλλάξω κ αυτο με ohmyzsh με δαιφορετικό theme , πλέον είμαι εξαρτημένος με το syntax highlighting plugin.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Να ρωτησω κατι για το autocompletion που με απασχολει καιρο τωρα? Το zsh μπορει να κανει το παρακατω:

Να δωσω

mpv --play [tab key]
και να το συμπληρωσει σε

mpv --playlist
?

MIA παραμετρος του mpv ξεκιναει απο "--play", η "--playlist".

 

Γιατι το bash εδω δεν το κανει και εχω το bash-completion εγκατεστημενο. Επισης, γιατι συμπληρωνει αυτο

apt-cache show tade {tab key}
και το κανει πχ

apt-cache show tadepaketo
σαν απλος χρηστης και οχι σαν root?
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

 Δοκίμασε το ohmyzsh τα έχει σχεδόν έτοιμα, εσυ επιλέγεις theme, modules στο .zshrc κ αντι για bash_profile έχεις .zprofile. Το /etc/profile γίνεται κανονικα source δεν αλλάζει κάτι άλλο.

 Για το bash completion δε γνωρίζω γιατι έχει αυτη τη συμπεριφορά, λογικά αυτο γίνεται με sudo(τα ίδια είναι κ εδω με zsh) αν πας με su και έχεις αντίστοιχο .bashrc ή .zshrc για το root θα γίνεται

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για το sudo δες εδώ: http://www.webupd8.org/2010/03/how-to-autocomplete-commands-preceded.html


Από εκεί και πέρα και το zmv είναι απίστευτα βολικό

http://strcat.de/zsh/#zmv

http://unix.stackexchange.com/questions/19290/zmv-for-zsh-dry-runs-and-man-pages

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Εγώ χρησιμοποιώ bash χωρίς να εχω δοκιμάσει ποτέ κάτι άλλο. Κυρίως επειδή σχεδόν παντού το βρίσκω μπροστά μου.

Θα ρίξω μια ματιά και στο zsh.

Με το autocompletion έχω ένα θέμα αλλά δεν ξέρω να είναι ο υπολογιστής, το προγραμμα konsole ή το bash. Όταν πατάω tab πολλές φορές καθυστερεί 3-4 δευτερόλεπτα μεχρι να ολοκληρώσει το path και είναι πολύ σπαστικό.

Θα δω με το zsh αν κάνει το ίδιο.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

jim κάτι άλλο γίνεται

 

γράφω

git com [tab]

γίνεται

git commit

μετά

git commit -- [tab]

παίρνω

git commit --

--all               --interactive       --signoff 
--amend             --message=          --squash=
--author=           --no-edit           --template=
--cleanup=          --no-verify         --untracked-files=
--dry-run           --only              --untracked-files 
--edit              --quiet             --verbose 
--file=             --reedit-message=   --verify 
--fixup=            --reset-author      
--include           --reuse-message=  

κάποια στιγμή θέλω να το δοκιμάσω το zsh για το geekiness της υπόθεσης αλλά προς το παρόν έχω βολευτεί και βαριέμαι τη μετάβαση

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Και σε μενα το κανει, σε bash, και ειναι θεμα πακεταρισματος, επειδη απ'οτι βλεπω

$ dpkg -L git | grep completion
/etc/bash_completion.d
/etc/bash_completion.d/git-prompt
/usr/share/bash-completion
/usr/share/bash-completion/completions
/usr/share/bash-completion/completions/git
/usr/share/bash-completion/completions/gitk
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Χρησιμοποιώ εδώ και καιρό το fish σαν default shell για τον χρήστη μου εδώ και καιρό. Είναι πολύ άνετο για interactive χρήση, αλλά δεν θα το πρότεινα για scripting, καθώς δεν είναι posix-compatible. Έχει πολύ καλή υποστήριξη για autocompletion ootb, καθώς "τραβά" τα switches των εντολών από τις man pages τους και για όποιον θέλει κάτι περισσότερο υπάρχει το oh-my-fish με μπόλικα themes και plugins. Κάτι πολύ ενδιαφέρον είναι το πόσο εύκολα μπορεί να παραμετροποιήσει κάποιος το color theme του.

Θα ήθελα να δοκιμάσω κάποια στιγμή σοβαρά το mksh του mirbsd (Thorsten Glaser), καθώς αναπτύσσεται ενεργά, είναι posix compatible και είναι εδώ και κάποιες εκδόσεις το default shell του android.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...