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

[INFO] Η δύναμη της Κονσόλας


Manos-Sx

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

Τεμπελχανά :P

 

#!/bin/bash

koko() {
  for i in {1..21}; do 
  pstr="########################"
  dstr="------------------------"
  echo -ne "\rWorking:[${pstr:0:$i}${dstr:0:21-$i}]"
  sleep 0.1
  done
}

koko
Σου κάνει κάτι τέτοιο ?

 

Η έκφραση ${pstr:0:$i} αντί να σου δώσει όλο το pstr σου επιστρέφει μόνο ένα υπό-αλφαριθμητικό του, από τη θέση 0 μέχρι τη θέση $i δηλαδή θα σου εμφανίσει i διέσεις #. Αντίστοιχα η άλλη έκφραση θα σου δώσει 21-i παύλες. Όσο μεγαλώνει το i θα αυξάνονται οι διέσεις και θα μειώνονται οι παύλες.

 

 

Θα ηταν ιδανικο, αλλα αν αλλαξουμε το 21 με 50 πχ, δεν παιζει σωστα.

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

  • Απαντ. 889
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Θα ηταν ιδανικο, αλλα αν αλλαξουμε το 21 με 50 πχ, δεν παιζει σωστα.

Ναι γιατί δεν είναι αρκετά μεγάλα τα strings που χρησιμοποίησα. Μπορείς αντί για το σκέτο $i που χρησιμοποίησα να ανάγεις τον αριθμό που έχεις στο μέγεθος του string που έχεις δηλώσει.

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

δηλαδη? $i * 24 / $total

 

:mellow:

Ναι κάτι τέτοιο (όπως το είχες αρχικά δηλαδή).

 

Πόσο μεγάλο μπορεί να γίνει το total ? Αν πχ μιλάμε για 80-100, τότε κάνε ένα τόσο μεγάλο string και βάλε απευθείας το counter χωρίς αναγωγή.

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

Δουλεψε ετσι τελικα:
 

echo -ne "\rWorking:[${pstr:0:$(( $i * 24 / 50 ))}${dstr:0:24-$(( $i * 24 / 50 ))}]"
koko() {
  for i in {1..50}; do 
    echo mpee
    sleep 0.1
  done
}

total=50
pstr="########################"
dstr="------------------------"

koko | while read ln; do
  b=$(( b + 1 ))
  echo -ne "\rWorking:[${pstr:0:$(( $b * 24 / $total ))}${dstr:0:24-$(( $b * 24 / $total ))}] $(( $b * 100 / $total ))%"
done

Μπορει να γραφτει πιο μαζεμενα το echo?

 

To total μπορει να ειναι χιλιαδες (ειναι stdout της tar να φανταστεις)

Επισης θελω να ειναι εξω απο την function ο μετρητης, σε πιπα, για να μπει εδω

 

Thanks και παλι!

 

-----------------------------------

 

Ωραιο δειχνει :-D

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

  • 1 μήνα μετά...

υπαρχει καποιος σοβαρος λογος που η bsdtar δεν διαβαζει σωστα το --exclude=/koko/* (δηλαδη να μεινει το /koko χωρις τα περιεχομενα του) και διαβαζει το --exclude=/koko/*?*

?

 

με το πρωτο δεν μενει καθολου το /koko, ειναι σαν να δινω --exclude=/koko, ενω με το δευτερο ειναι ok

η gnu tar διαβαζει και τα δυο σωστα και μενει το /koko χωρις τα περιεχομενα του

 

ετσι απο περιεργεια...

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

υπαρχει καποιος σοβαρος λογος που η bsdtar δεν διαβαζει σωστα το --exclude=/koko/* (δηλαδη να μεινει το /koko χωρις τα περιεχομενα του) και διαβαζει το --exclude=/koko/*?*

 

?

 

με το πρωτο δεν μενει καθολου το /koko, ειναι σαν να δινω --exclude=/koko, ενω με το δευτερο ειναι ok

 

η gnu tar διαβαζει και τα δυο σωστα και μενει το /koko χωρις τα περιεχομενα του

 

ετσι απο περιεργεια...

Για δοκίμασε

 

--exclude "koko/*"

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

Μπορω να κανω ισως μια χαζη ερωτηση αλλα επειδή γενικα δεν βλεπω παρα πολύ καλα στο μαυρο backround με λευκα γραμματα πως είναι δυνατον στο cli στο Linux πχ debian να ορισω black το backround αλλα πρασινα τα γραμματα αν γινεται ευχαριστω πολυ

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

Δημοσ. (επεξεργασμένο)

Μπορω να κανω ισως μια χαζη ερωτηση αλλα επειδή γενικα δεν βλεπω παρα πολύ καλα στο μαυρο backround με λευκα γραμματα πως είναι δυνατον στο cli στο Linux πχ debian να ορισω black το backround αλλα πρασινα τα γραμματα αν γινεται ευχαριστω πολυ

 

Αν είσαι σε κάποιον terminal emulator, οι περισσότεροι υποστηρίζουν αλλαγή χρωμάτων από τις ρυθμίσεις τους - στο xfce4-terminal που χρησιμοποιώ, υποστηρίζονται και color presets /"themes". 

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

θελω μεσα σε ενα φακελο να βρω ολους τους υποφακελους με ονομα

 

Backup-[αριθμος][αριθμος]-[αριθμος][αριθμος]-[αριθμος][αριθμος][αριθμος][αριθμος] πχ Backup-20-10-2014
 
κατεληξα σε αυτο

find φακελος -maxdepth 1 -type d -regex ".*Backup-[0-9]+-[0-9]+-[0-9]+"

αλλα θελω να το περιορισω.

Περαν αυτου:

find φακελος -maxdepth 1 -type d -regex ".*Backup-[0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]"

υπαρχει πιο μαζεμενος τροπος? Ξερω για το {n} αλλα πως το χωνω σε καθε pattern ξεχωριστα?
 

Thanks!

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

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

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

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

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

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

Σύνδεση

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

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