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

Bash - Λίστα αρχείων και επιλογή κατάλληλου


ICheats

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

Παιδιά μήπως θα μπορούσατε να με βοηθήσετε να λύσω το συγκεκριμένο πρόβλημα?
 

Xρειάζομαι ένα σκριπτάκι που θα προβάλει στην κονσόλα όλα τα αρχεία που ξεκινούν με το 

αρχικό BRT και ύστερα να δίνει την επιλογή στο χρήστη να επιλέξει ένα από όλα και να ξεκινήσει

μια διαδικασία (πχ αποσυμπίεση ενός ζιπαρισμένου αρχείου) με το όνομα που επέλεξε ο χρήστης!

 

Έχω αυτό το σκριπτάκι: 

 

cd ~/Desktop && find . -type f | grep BRT

 

Μπορείτε να με βοηθήσετε να το κάνω?

Ευχαριστώ!

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

#!/bin/bash


####################    CONFIGURATION       ##############################
STR="BRT"
BASEDIR="~/Desktop"
CMD="/usr/bin/unzip"
##########################################################################


FILES=($(find $BASEDIR -type f | grep $STR))

echo "Found ${#FILES[@]} files containing $STR"
j=0
for i in "${FILES[@]}"
do
        let j+=1;
        echo "$j:$i"
done

read -p "Please enter the file of your choice:" FILEINDEX
let FILEINDEX-=1;
echo "Running $CMD on ${FILES[$FILEINDEX]}"
$CMD ${FILES[$FILEINDEX]}

Να ένας γρήγορος τρόπος που θα μπορούσε να γίνει κάτι τέτοιο.

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

#!/bin/bash
PS3="Type a number or 'q' to quit: "
fileList=$(find -type f | grep BRT)
select fileName in $fileList; do
    if [ -n "$fileName" ]; then
       unzip ${fileName} -d .
    fi
    break
done

Και μια απλοικη δικη μου εκδοχη.

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

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

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

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

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

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

Σύνδεση

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

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