Γεια σε όλους!
Θα χρειαστώ τη βοήθειά σας για την δημιουργία ενός script που θα συγχωνεύει το περιεχόμενο κάποιων φακέλων.
Να εξηγήσω αναλυτικά:
Έχω στον υπολογιστή έναν φάκελο, ας τον ονομάσουμε ΑρχικόςΦάκελος που περιέχει 100 φακέλους και κάθε ένας από αυτούς τους 100, περιέχει μέσα 4 υποφακέλους.
Αυτοί οι 4 έχουν διαφορετικά ονόματα μεταξύ τους, αλλά είναι κοινοί για κάθε έναν από τους 100 φακέλους. Φανταστείτε δηλαδή κάτι τέτοιο:
-
Μορφοποιημένος Κώδικας: Επιλογή όλων
-
eliasps@ubuntu:~$ ls ΑρχικόςΦάκελος/
Φάκελος-1-από-100
Φάκελος-2-από-100
Φάκελος-3-από-100
.....
Φάκελος-100-από-100
-
Μορφοποιημένος Κώδικας: Επιλογή όλων
-
eliasps@ubuntu:~$ ls ΑρχικόςΦάκελος/Φάκελος-1-από-100/
Υποφάκελος 1
Υποφάκελος 2
Υποφάκελος 3
Υποφάκελος 4
eliasps@ubuntu:~$ ls ΑρχικόςΦάκελος/Φάκελος-2-από-100/
Υποφάκελος 1
Υποφάκελος 2
Υποφάκελος 3
Υποφάκελος 4
eliasps@ubuntu:~$ ls ΑρχικόςΦάκελος/Φάκελος-3-από-100/
.........
.........
.........
.........
eliasps@ubuntu:~$ ls ΑρχικόςΦάκελος/Φάκελος-100-από-100/
Υποφάκελος 1
Υποφάκελος 2
Υποφάκελος 3
Υποφάκελος 4
Κάθε ένας από αυτούς 4 υποφακέλους που υπάρχουν μέσα στους 100, περιέχει ένα εικονίδιο.
Έχω δημιουργήσει στην επιφάνεια εργασίας μου 4 φακέλους με τα ονόματα των 4 υποφακέλων:
- Κώδικας: Επιλογή όλων
mkdir Desktop/Υποφάκελος 1
mkdir Desktop/Υποφάκελος 2
mkdir Desktop/Υποφάκελος 3
mkdir Desktop/Υποφάκελος 4
Αυτό που θέλω να κάνει το script είναι να πηγαίνει σε κάθε έναν από τους 100 φακέλους που βρίσκονται στον αρχικό, να παίρνει το εικονίδιο από τον Υποφάκελο 1 και να το μετακινεί στον Υποφάκελο 1 που βρίσκεται στην επιφάνεια εργασίας. Το ίδιο και για τους υπόλοιπους 3, σε κάθε έναν από τους 100.
Ελπίζω να έγινα κατανοητός.
Κάθε βοήθεια ευπρόσδεκτη.
Ευχαριστώ εκ των προτέρων,
Ηλίας
EDIT:Το έκανα με αυτόν τον τρόπο τελικά, αν και ήμουν σίγουρος πως υπήρχε κάτι καλύτερο:
-
Μορφοποιημένος Κώδικας: Επιλογή όλων
-
for folder in /home/elias/ΑρχικόςΦάκελος/*; do
cd "$folder" ;
cd "Υποφάκελος 1" ;
mv * /home/elias/Desktop/"Υποφάκελος 1" ;
cd .. ;
cd "Υποφάκελος 2" ;
mv * /home/elias/Desktop/"Υποφάκελος 2" ;
cd .. ;
cd "Υποφάκελος 3" ;
mv * /home/elias/Desktop/"Υποφάκελος 3" ;
cd .. ;
cd "Υποφάκελος 4" ;
mv * /home/elias/Desktop/"Υποφάκελος 4" ;
cd .. ;
cd .. ;
done