Αρχική σελίδα » πως να » Linux QuickTip Λήψη και απενεργοποίηση σε ένα βήμα

    Linux QuickTip Λήψη και απενεργοποίηση σε ένα βήμα

    Τις περισσότερες φορές, όταν κατεβάζω κάτι, είναι ένα αρχείο αρχείου κάποιου είδους - συνήθως ένα αρχείο tarball ή zip. Αυτό θα μπορούσε να είναι κάποιος πηγαίος κώδικας για μια εφαρμογή που δεν περιλαμβάνεται στο δέντρο του Portage του Gentoo, κάποια τεκμηρίωση για μια εσωτερική εταιρική εφαρμογή ή ακόμα και κάτι τόσο εξωπραγματικό όπως μια νέα εγκατάσταση του WordPress.

    Ο παραδοσιακός τρόπος λήψης και αφαίρεσης κάτι στο τερματικό θα ήταν κάτι τέτοιο:

    wget http://wordpress.org/latest.tar.gz

    tar xvzf latest.tar.gz

    rm latest.tar.gz

    Ή ίσως η πιο συμπαγής μορφή:

    wget http://wordpress.org/latest.tar.gz && tar xvzf latest.tar.gz && rm latest.tar.gz

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

    Λοιπόν, χάρη σε μια χρήσιμη μικρή εντολή "μπούκλα", μπορούμε πραγματικά να επιτύχουμε το χάος παραπάνω σε μία μόνο αγωγιμότητα δήλωση:

    μπούκλα http://wordpress.org/latest.tar.gz | tar xvz

    Δεν υπάρχουν προσωρινά αρχεία για να απαλλαγείτε από το να μην μπερδευτείτε με τους χάρτες. Εν ολίγοις, μια πολύ συμπαγής, αποτελεσματική εντολή. Στην πραγματικότητα, από τη θεωρητική άποψη, η μέθοδος curl μπορεί να είναι γρηγορότερη από την αλληλουχία wget / tar / rm, δεδομένου ότι οι σωληνώσεις stdout θα χρησιμοποιήσουν RAM ως buffer, αν είναι δυνατόν, ενώ wget και tar (με το διακόπτη -f πρέπει να διαβάζουν / απευθείας από δίσκο.

    Παρεμπιπτόντως, η πίσσα με την επιλογή -v (ο τρόπος που την χρησιμοποιούμε σε όλα τα παραπάνω παραδείγματα) εκτυπώνει κάθε όνομα αρχείου σε stdout καθώς το καθένα είναι άστοχο. Αυτό μπορεί να πάρει με τον τρόπο της ωμής, ncurses εξόδου δείχνει κατάσταση λήψης. Μπορούμε να σιωπήσουμε την πίσσα επικαλούμενος χωρίς - έτσι:

    μπούκλα http://wordpress.org/latest.tar.gz | tar xz

    Και αυτό είναι όλο που υπάρχει σε αυτό!