Organizzazione dei file per gravità — CMD (solo Prompt)
Durata massima prova: 40 minuti (resto dell’ora per setup/chiusura). Ambiente: Windows 10/11.
Scenario
I file di ticket hanno il formato:
Ticket_N_XXX_DATA.doc
- N: gravità (1=Miglioria, 2=Anomalia, 3=Malfunzionamento, 4=Errore bloccante)
- XXX: numerazione progressiva (es. 001, 045…)
- DATA: data in formato
YYYYMMDD
Struttura di lavoro
Lavora dentro la cartella tickets\. Le cartelle di gravità (1, 2, 3, 4) si trovano nel livello superiore (..\ rispetto a tickets\).
tickets\
├── Ticket_1_001_20250402.doc
├── Ticket_2_045_20250328.doc
└── … (altri file)
..\
├── 1\
├── 2\
├── 3\
└── 4\
Obiettivo
Scrivere uno script .bat che, eseguito da dentro tickets\, sposti tutti i file .doc nella rispettiva cartella di gravità (..\1, ..\2, ..\3, ..\4), senza usare variabili né parametri.
Vincoli didattici
- Niente variabili (
%NOME%) e niente parametri (%1,%2…) - Usa solo comandi base visti a lezione (es.:
dir,move,md/mkdir,ren,echo,find) - Lo script deve funzionare da
tickets\usando correttamente..\ - Nome file: sposta_gravita.bat
Non ammesso: FOR, parsing avanzato di IF, PowerShell, strumenti esterni. Basiamoci su wildcard/pattern coerenti con il nome file.
Attività richieste
- Script principale. Crea
sposta_gravita.batche sposta i.docnelle cartelle..\1,..\2,..\3,..\4in base al numeroNnel nome. - Messaggi a schermo. Lo script deve mostrare chiaramente i file spostati.
- Cartelle destinazione. Se mancanti, devono essere create con comando adeguato.
Domande di approfondimento (facoltative)
- Stampare un messaggio personalizzato per ogni file spostato (es. “Spostato: Ticket_1_001_20250402.doc”).
- Creare automaticamente le cartelle di destinazione se non esistono.
- Scrivere un secondo script che rinomini i file spostati aggiungendo
_GESTITOprima di.doc. - Scrivere uno script “inverso” che riporti tutti i file nelle cartelle in
tickets\. - Scrivere uno script che conti quanti
.docci sono per ogni gravità e mostri i conteggi.
Consegna su Moodle
- Carica il file .bat (
sposta_gravita.bat) funzionante. - Allega un .txt o .pdf con Nome, Cognome, Classe, breve spiegazione e difficoltà incontrate.
Suggerimento: prova con 6–8 file di esempio (gravità miste) prima dell’upload.
Valutazione sintetica
- Correttezza funzionale (spostamenti ok): 40%
- Rispetto vincoli (no variabili/parametri; solo comandi visti): 30%
- Chiarezza output (messaggi leggibili): 20%
- Ordine e nomenclatura (nome file corretto, commenti essenziali): 10%
Tempo utile per lo svolgimento: max 40 minuti.
Esempi di comandi consentiti
Non è la soluzione completa; sono esempi coerenti con i vincoli.
dir
move "Ticket_1_*.doc" "..\1\"
md "..\1"
ren "*.doc" "*_GESTITO.doc"
echo ...