Εξετάζοντας άλλα άρθρα που συνάντησα αυτή τη μικρή ερώτηση που με έκανε να διασκεδάσω, είναι αλήθεια ότι ένα από τα πρώτα πράγματα που αντιμετωπίζουν οι χρήστες άλλων συστημάτων (εκτός από το FreeBSD) είναι ότι δεν χρησιμοποιούμε τα GUI. Για να πω την αλήθεια, μου φάνηκε επίσης περίεργο στην αρχή του ταξιδιού μου στο GNU / Linux. Πρέπει να παραδεχτώ ότι με την πάροδο του χρόνου, τώρα χρησιμοποιώ τη γραμμή εντολών πολύ περισσότερο από οποιοδήποτε άλλο πρόγραμμα GUI και πολλές φορές προτιμώ προγράμματα γραμμής εντολών από πιο περίπλοκα προγράμματα με εκθαμβωτικά GUI.
Ο ΜΥΘΟΣ
Στην πραγματικότητα, αυτό δεν είναι τίποτα περισσότερο από ένας αστικός μύθος, επειδή σε αντίθεση με άλλα συστήματα των οποίων τα ονόματα δεν θα αναφερθούν εδώ, στο GNU/Linux έχετε πραγματικά ελευθερία επιλογής. Μακάρι άλλα συστήματα να προσέφεραν την ευελιξία που υπάρχει εδώ. Αλλά ας δούμε αυτό το ζήτημα σε μεγαλύτερο βάθος, διαφορετικά πολλά πράγματα παραμένουν ασαφή:
Διακομιστές
Όλοι έχουμε ακούσει τη λέξη «διακομιστής». Μερικοί άνθρωποι σκέφτονται αυτούς τους υπερυπολογιστές που τροφοδοτούν την Google ή την Amazon, ή αυτόν της εταιρείας σας. Αλλά η πραγματικότητα είναι ότι ένας διακομιστής λειτουργεί σύμφωνα με ένα συγκεκριμένο μοντέλο. Χρησιμοποιούμε αυτόν τον όρο για να αναφερθούμε σε ένα πρόγραμμα που είναι διαθέσιμο στους χρήστες ( πελάτες ) και τους παρέχει κάτι. Ένα βασικό παράδειγμα είναι ο Apache , ο οποίος χρησιμοποιείται για την προβολή ιστοσελίδων στο διαδίκτυο. Αυτό το πρόγραμμα παρέχει HTML σε πελάτες που το ζητούν.
Διακομιστής εικόνων
Όμως όχι μόνο ένας διακομιστής μπορεί να βρίσκεται στους σούπερ υπολογιστές που η Google και πολλές άλλες εταιρείες καθιστούν εφικτές, ακόμη και ο «παλαιότερος» φορητός υπολογιστής μπορεί να είναι διακομιστής, ειδικά όταν μιλάμε για εικόνες. Όλοι τρέχουμε ένα διακομιστής εικόνων στους φορητούς υπολογιστές μας για να έχουμε λειτουργική οθόνη, σε αυτήν την περίπτωση το διακομιστής και πελάτης είναι το ίδιο άτομο. Το πιο κοινό παράδειγμα είναι X (γνωστός ως xorg-server σε πολλές διανομές) και τη νέα αντικατάστασή του Wayland. Δεν πρόκειται να δώσουμε μια λεπτομερή εξήγηση για το γιατί ο οργανισμός, ή πώς λειτουργεί ο Wayland, ή οι φιλοσοφίες που υπάρχουν πίσω από αυτά τα μεγάλα έργα, αλλά θα καταστήσουμε σαφές ότι χάρη σε αυτούς μπορούμε να έχουμε ένα πρόγραμμα περιήγησης στο Web όπως το Firefox ή το Chrome ή πολλά άλλα προγράμματα.
Διαχειριστής παραθύρων
Οι διαχειριστές παραθύρων συνεργάζονται απευθείας με τον διακομιστή εικόνων. Η λειτουργία τους είναι σε χαμηλότερο επίπεδο, καθώς διαχειρίζονται (με σκοπό την πλεονασμό) τον τρόπο δημιουργίας, τροποποίησης και κλεισίματος των παραθύρων. Συνήθως είναι αρκετά απλά και τα περιβάλλοντα επιφάνειας εργασίας βασίζονται σε αυτά. Η λίστα είναι μεγάλη, αλλά θα την αφήσω ως έχει: είναι μινιμαλιστικά προγράμματα λογισμικού που επιτρέπουν τον αρκετά βασικό έλεγχο του διακομιστή εικόνων.
Περιβάλλον επιφάνειας εργασίας
Ένα πιο εξειδικευμένο σύνολο λογισμικού που επιτρέπει όχι μόνο τη λειτουργία του διακομιστή εικόνων, αλλά και παρέχει δυνατότητες προσαρμογής. Μεταξύ αυτών, τα παλαιότερα και βαρύτερα είναι το KDE και το GNOME, αλλά έχουμε επίσης ελαφρύτερα περιβάλλοντα όπως LXDE ή Mate, Cinnamon κ.λπ.
CLI (Διεπαφή γραμμής εντολών)
Μετά από μια σύντομη ματιά στον κόσμο των διακομιστών εικόνων, τώρα επιστρέφουμε στο θέμα μας ξανά. CLI, υπονοεί οποιοδήποτε πρόγραμμα εκτελείται από τη γραμμή εντολών, είτε git, vim, weechatή καλά, ό, τι άλλο έρχεται στο μυαλό. Μπορείτε να δείτε ότι μιλάω για προγράμματα που, παρόλο που εκτελούνται στη γραμμή εντολών, δείχνουν ένα είδος "γραφικής διεπαφής" όπως weechat o vim. Για όλους εκείνους που δεν τα έχουν δοκιμάσει, τους προτείνω, είναι βασικά αυτοί που χρησιμοποιώ όλη την ημέρα.
Γιατί το CLI είναι καλύτερο από το GUI
Ας δοκιμάσουμε κάτι αρκετά απλό Την άλλη μέρα ήθελα να δουλέψω σε μια ενημέρωση κώδικα για το Portage (τον διαχειριστή πακέτων του Gentoo) . Όπως σε κάθε καλό συνεργατικό έργο, ο όγκος του κώδικα υπερβαίνει τις 70 γραμμές. Δοκιμάστε να το ανοίξετε σε ένα IDE όπως το NinjaIDE (το Portage είναι γραμμένο σε Python) και σύντομα θα παρατηρήσετε ότι μόλις ξεκινήσει η φόρτωση της οθόνης, το μηχάνημά σας γίνεται εξαιρετικά αργό (τουλάχιστον ο i7 μου το έκανε), και αυτό ήταν απλώς μια προσπάθεια να ανοίξω τον κώδικα και να αλλάξω το προεπιλεγμένο χρώμα "βοήθειας".
Τώρα προσπαθήστε να κάνετε το ίδιο με vim, με φόρτωσε σε χιλιοστά του δευτερολέπτου, και ταυτόχρονα έβαλε τα "όμορφα" χρώματα και οτιδήποτε άλλο.
Το CLI ήταν πολύ καιρό πριν
Κάποιοι εδώ θα πουν ότι αυτά τα προγράμματα είναι αρχαία, Τους αποκαλώ εύρωστος. Εάν μπορούσατε να δείτε τον αριθμό των ωρών που επενδύονται στο κτίριο emacs, vim, gdb, και εκατοντάδες άλλα προγράμματα κονσόλας, μπορεί να παρατηρήσετε ότι ο αριθμός του κώδικα και των λειτουργιών είναι τόσο μεγάλος που έχουν ήδη επιλύσει όλα όσα χρειάζονται για να λύσουν. Πολλά GUI για προγράμματα που είναι ήδη ισχυρά στο CLI τους, δεν θα έχουν ποτέ την ίδια λειτουργικότητα, αυτό απλά επειδή εάν κάναμε μια καρτέλα για κάθε διαθέσιμη υπο-εντολή, για παράδειγμα git, θα χαθήκαμε μεταξύ των επιλογών και θα ήταν αντιπαραγωγικό, γιατί θα δυσκολευόταν να εργαστεί.
Το CLI είναι ταχύτερο
Η μαγεία ξεκινά με το κλειδί Tab, αυτό δεν είναι μόνο ο καλύτερος φίλος σας κατά την περιήγηση στους επιτραπέζιους υπολογιστές στο τερματικό σας, αλλά όταν έχει ρυθμιστεί σωστά, σας επιτρέπει να συντομεύσετε τις μεγάλες προτάσεις σε 2 γράμματα και μια καρτέλα, 3 γράμματα και μια καρτέλα ή ακόμα και ένα γράμμα και ένα Αυτί.
Αλλά αυτό δεν είναι το μόνο πλεονέκτημα, εκείνοι από εμάς που αφιερώσαμε χρόνο για να μάθουμε vim o emacs Μπορούμε να πούμε ότι παρόλο που η καμπύλη εκμάθησης είναι λίγο υψηλότερη από εκείνη των IDE αυτές τις μέρες, στο τέλος τα αποτελέσματα παραγωγικότητας είναι εκπληκτικά, δεν μπορούμε να φανταστούμε τον χρόνο που μπορεί να χαθεί κατά τη μετακίνηση ενός ποντικιού. Έχοντας τα χέρια σας στο πληκτρολόγιο το 90% του χρόνου όχι μόνο διδάσκει συγκέντρωση, επιπλέον, το γεγονός ότι πληκτρολογείτε τόσο πολύ στο πληκτρολόγιο σας κάνει να είστε αρκετά ευέλικτοι και παραγωγικοί. Και τώρα επιστρέφουμε στο προηγούμενο σημείο, έχοντας μαζί μας για τόσο μεγάλο χρονικό διάστημα, προγράμματα όπως αυτά έχουν ήδη όλες τις λειτουργίες που κάποιος θα μπορούσε να σκεφτεί, ένα αρκετά κοινό ρητό για όσους από εμάς χρησιμοποιούν vim έρχεται στο μυαλό:
Εάν χρησιμοποιείτε περισσότερα από 4 πλήκτρα, μπορεί να υπάρχει καλύτερος τρόπος.
Απλό αλλά ισχυρό, το vim σάς επιτρέπει να κάνετε τα πάντα με τον μεγάλο αριθμό κλειδιών και πιθανών συνδυασμών, δεν σταματά ποτέ να μαθαίνετε, αλλά είναι επίσης αλήθεια ότι για να μπορέσετε να το χρησιμοποιήσετε δεν είναι απαραίτητο να τα γνωρίζετε όλα, περίπου 10 ή 15 είναι αρκετά για να ξεκινήσετε να είσαι πιο παραγωγικός.
Το CLI σας παρέχει πλήρη έλεγχο
Όταν κάποιος εκτελεί λειτουργίες με το ποντίκι ή προγράμματα από το διακομιστή εικόνων, όλες οι επιπλέον διαμορφώσεις που εκτελούνται τη στιγμή του κλικ δεν είναι πάντα παρούσες, αυτό δεν συμβαίνει με το τερματικό, εδώ έχετε την απόλυτη ισχύ του τι εκτελείται ή όχι, με ποια επιλογή ή σε ποιο βαθμό. Με την πάροδο του χρόνου συνειδητοποιείτε ότι χρειάζεστε λιγότερα από ό, τι νομίζετε και αυτό σας βοηθά να κάνετε τα πράγματα με πιο εστιασμένο τρόπο.
Το GUI έχει και το δικό του πράγμα
Δεν πρόκειται να πω ότι όλοι πρέπει να χρησιμοποιούμε πάντα το CLI, ούτε αυτό είναι ιδανικό, εγώ ο ίδιος χρησιμοποιώ GUI σχεδόν όλη την ώρα, για να γράψω αυτήν την ανάρτηση χρησιμοποιώ το Chrome μου και για να δω τα email μου χρησιμοποιώ το Evolution (αν και χρησιμοποιώ επίσης mutt αρκετά τελευταία). Και υποθέτω ότι αυτός είναι ο μεγαλύτερος μύθος από όλους... ότι οι άνθρωποι πιστεύουν ότι το GNU/Linux είναι μόνο τερματικό, μου αρέσει το περιβάλλον της επιφάνειας εργασίας μου, είναι αρκετά μινιμαλιστικό, αλλά μου αρέσει έτσι Και συνήθως έχω μόνο δύο ή τρία προγράμματα που εκτελούνται, το Chrome μου, το Evolution μου και το τερματικό μου
Αυτοί είναι μερικοί από τους λόγους για τους οποίους μου αρέσουν τόσο πολύ τα CLI και σας προσκαλώ να τους δώσετε μια ευκαιρία, ίσως αργότερα καταλήξετε σαν εμένα να χρησιμοποιώ περισσότερα CLI παρά GUI Με εκτίμηση