Πώς να τοποθετήσετε την ημερομηνία και την ώρα πάντα ορατά στο τερματικό

Λένε ότι μια εικόνα αξίζει χίλιες λέξεις, γι 'αυτό πριν εξηγήσω κάτι, θα σας δείξω ποιο είναι το αποτέλεσμα της εντολής που θα θέσω αργότερα:

terminal_date_time

Παρατηρήστε πώς στην επάνω δεξιά γωνία βλέπουμε την ημέρα της εβδομάδας (Κυρ, Κυριακή), το μήνα (Δεκ), την ημέρα (22) καθώς και την ώρα, το λεπτό, το δεύτερο και το έτος.

Είναι κάτι που ενημερώνεται σε πραγματικό χρόνο, δηλαδή κάθε δευτερόλεπτο ότι οι πληροφορίες ενημερώνονται και θα είναι πάντα στην επάνω δεξιά γωνία του τερματικού.

Αυτό είναι κάτι χρήσιμο γιατί, μπορούμε να επεξεργαστούμε ένα αρχείο με nano ή vi, μπορούμε να εγκαταστήσουμε οποιονδήποτε τύπο υπηρεσίας ή να διαχειριστούμε οτιδήποτε και δεν θα χρειαστεί να σταματήσουμε αυτό που κάνουμε, να εκτελέσουμε ημερομηνία στο τερματικό για να γνωρίζουμε την ημερομηνία ή χρόνος, με αυτήν την συμβουλή που σας δείχνω θα το έχουμε πάντα στο μυαλό μας.

Για να το επιτύχουμε σε ένα τερματικό ας θέσουμε τα εξής:

while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done &

Αυτό ως τέτοιο δεν είναι μια απλή εντολή ή εντολή, αλλά μάλλον μια ένωση τους ... έλα, ένα σενάριο θα μπορούσε επίσης να είναι. Το να το εξηγήσω είναι λίγο περίπλοκο, ωστόσο θα κάνω το καλύτερο δυνατό 🙂

  • ενώ κοιμάστε 1; : Αυτό σημαίνει ότι κάθε δευτερόλεπτο θα εκτελούνται τα ακόλουθα
  • tput sc : Αυτό σημαίνει ότι η τρέχουσα θέση θα αποθηκευτεί, δηλαδή, η θέση του τι θα ακολουθήσει θα αποθηκευτεί, δεν θα είναι απαραίτητο να το προσδιορίσετε μετά από μία φορά.
  • tput κύπελλο 0$ (($ (tput cols) -29)) : Αυτό μπορεί να φαίνεται περίπλοκο, ωστόσο, δεν είναι τόσο δύσκολο. Βασικά αυτό είναι που λέει η θέση, δηλαδή, η επάνω δεξιά γωνία. Η παράμετρος του κυπέλλου καθορίζει τον κατακόρυφο χώρο που θα υπάρχει, αφού βάζουμε το 0 έτσι σημαίνει "ακριβώς πάνω, στην κορυφή". Μόλις καθοριστεί η κατακόρυφη θέση, μπορούμε να δούμε την οριζόντια θέση, την οποία φροντίζουν οι υπόλοιπες παράμετροι, για να το θέσουμε απλά… υπολογίζει τις υπάρχουσες στήλες και βεβαιώνεται ότι είναι ακριβώς στη δεξιά άκρη. Εάν θέλετε, αλλάξτε τον αριθμό 29 για άλλους και θα παρατηρήσετε τη διαφορά.
  • Ραντεβού : Λοιπόν αυτό είναι απλό, η ημερομηνία μας δείχνει τις πληροφορίες που βλέπουμε ... ημέρα, μήνα, ώρα κ.λπ.
  • tput rc : Είναι tput sc αποθηκεύουμε τη θέση, τώρα με tput rc την επαναφέρουμε.
  • γίνεται : Εδώ τελειώνουμε τα πάντα, αυτό που ξεκινήσαμε με την ώρα.

Όπως μπορείτε να δείτε, το τερματικό είναι αναμφίβολα ένας υπέροχος χώρος, εάν μια εντολή δεν κάνει ακριβώς αυτό που θέλουμε ... μπορούμε να ενώσουμε πολλά από αυτά και να επιτύχουμε αυτό που θέλουμε. Δείτε κάθε εντολή ως εργαλείο, ένα εργαλείο (σφυρί) δεν μπορεί να μας κάνει ένα όμορφο άγαλμα, ωστόσο, ενώνοντας αυτό το εργαλείο (σφυρί) με άλλους (ξύλο και σμίλη) μπορούμε να φτάσουμε στο ονειρικό αποτέλεσμα 🙂

Ω, παρεμπιπτόντως ... αν θέλετε αυτό να εμφανίζεται πάντα στο τερματικό χωρίς να χρειάζεται να το εκτελείτε κάθε φορά που ανοίγετε μια κονσόλα, πρέπει να το βάλετε στο .bashrc, δηλαδή:

echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc

Τότε αν θέλετε να το καταργήσετε, εκτελέστε τα εξής:

sed -i "s/while sleep 1/#while sleep 1/" $HOME/.bashrc

Λοιπόν, τίποτα άλλο να προσθέσω, ελπίζω ότι ήταν χρήσιμο

αφορά

ισχυρός

echo "while sleep 1; do tput sc; tput cup 0 \ $ ((\ $ (tput cols) -29)); ημερομηνία; tput rc; done &" >> $ HOME / .bashrc


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: Miguel Ángel Gatón
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.

  1.   Ζερμέν dijo

    Ευχαριστώ, αλλά δεν λειτουργεί για μένα ... Ούτε στο Konsole ούτε στο Yakuake έκανα τα πάντα όπως είναι στη θέση. 🙁

    1.    Ζερμέν dijo

      Συγγνώμη ... ήταν δικό μου λάθος ... τώρα που έκανα επανεκκίνηση

      1.    KZKG ^ Γκάρα dijo

        Ήταν περίεργο για μένα που δεν λειτούργησε, γιατί ενώ… η ημερομηνία και η τιμή είναι εντολές από το πακέτο Bash 😀

  2.   Ζερμέν dijo

    Δεν ξέρω ... συνέβη κάτι περίεργο ... βάλτε σε ένα τερματικό:

    echo "while sleep 1; do tput sc; tput cup 0 $ (($ (tput cols) -29)); ημερομηνία; tput rc; done &" >> $ HOME / .bashrc

    Και το αποτέλεσμα ήταν:

    bash: /home/ghermain/.bashrc: γραμμή 115: συντακτικό σφάλμα κοντά σε μη αναμενόμενο στοιχείο "do"
    bash: /home/ghermain/.bashrc: line 115: "PS1 =" $ {debian_chroot: + ($ debian_chroot)} [33 [01; 34m] u [33 [01; 32m] @ [33 [01; 32m] h [33 [00m]: [33 [01; 34m] w [33 [00m] $ 'while sleep 1; do tput sc; tput cup 0 64; date; tput rc; selesai &'

    Στη συνέχεια, αντιγράψαμε απευθείας τις εντολές που δίνετε στο .bashrc στο τέλος και λαμβάνω πολλές γραμμές με την ημερομηνία και την ώρα.

    1.    O_Pixote_O dijo

      Διαγράψτε όλες τις γραμμές που έχετε τοποθετήσει στο αρχείο .bashrc κατά την ημερομηνία και τοποθετήστε ξανά τη γραμμή με μη αυτόματο τρόπο χωρίς να χρησιμοποιήσετε την ηχώ που αν δεν δώσει σφάλμα

  3.   Gonzalo dijo

    Πολύ ενδιαφέρον!

    1.    KZKG ^ Γκάρα dijo

      Ευχαριστώ που διαβάσατε 🙂

  4.   jack em dijo

    Ψάχνω τρόπους για να «διακοσμήσω» το αποτελεσματικό αλλά δροσερό τερματικό για μεγάλο χρονικό διάστημα και αυτή η εντολή είναι πολύ καλή, όχι τόσο μπαρόκ όσο άλλες λύσεις, αλλά όταν μπαίνω σε μια μακρά εντολή υπάρχει κάποια σύγχυση. Η εντολή τρώει την ημερομηνία και στη συνέχεια η ημερομηνία φαίνεται να τρώει την εντολή. Γνωρίζει κανείς εάν υπάρχει κάποιος τρόπος ότι η προτροπή εμφανίζεται κατά μία γραμμή χαμηλότερη από προεπιλογή;
    Τέλος πάντων, ευχαριστώ!

  5.   Γκρέγκοριο Εσπαδάς dijo

    Εξαιρετική συμβουλή 🙂

    1.    KZKG ^ Γκάρα dijo

      Ευχαριστώ αδερφέ 😀

  6.   Όσκαρ dijo

    Ευχαριστώ για τον φίλο, λειτουργεί σωστά. Χαιρετισμοί.

    1.    KZKG ^ Γκάρα dijo

      Σας ευχαριστούμε που μας διαβάσατε 🙂

  7.   truko22 dijo

    Τέλεια 😀
    Ή μπορείτε να δημιουργήσετε ένα ψευδώνυμο και να το χρησιμοποιήσετε όταν χρειάζεται 😀

  8.   Τζέιμς Τσε dijo

    Ενδιαφέρον, θα το δοκιμάσω αργότερα

  9.   Γιάννης dijo

    Πολύ καλό

  10.   Jamin-Samuel dijo

    Θα μπορούσατε να δημιουργήσετε μια ανάρτηση που να εξηγεί πώς να εγκαταστήσετε το zsh στο Debian / Ubuntu / Mint / Elementary και πώς να ρυθμίσετε θέματα;

    1.    KZKG ^ Γκάρα dijo

      Δυστυχώς, δεν έχω χρησιμοποιήσει ποτέ το zsh, συγγνώμη 🙁

  11.   O_Pixote_O dijo

    KZKG ^ Gaara όταν κάνετε την εντολή δίνει σφάλμα, γιατί υποθέτω ότι προσπαθεί να αναγνωρίσει το $ που δεν έχει αξία, ώστε να μην τα ερμηνεύει, βάζοντας \ διορθώσεις.

    echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc

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

    1.    KZKG ^ Γκάρα dijo

      Ακριβώς, το λάθος μου 😀
      Το έχω ήδη διορθώσει στην ανάρτηση, σας ευχαριστώ πολύ για τη διόρθωση 🙂

  12.   jvk85321 dijo

    Το τροποποίησα και το άφησα έτσι

    ενώ ο χρόνος αναμονής 1; do tput sc; tput cup 0 $ (($ (tput cols) -16)); ημερομηνία + »% R% d /% m /% Y»; tput rc; ολοκληρωμένο

    Εμφανίζει μόνο Ώρα: Ημερομηνία λεπτών με μορφή ΗΗ / ΜΜ / ΕΕΕΕ

  13.   danyel dijo

    Εξαιρετικός φίλος Δούλεψα 100 ευχαριστίες