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

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

Non ammesso: FOR, parsing avanzato di IF, PowerShell, strumenti esterni. Basiamoci su wildcard/pattern coerenti con il nome file.

Attività richieste

  1. Script principale. Crea sposta_gravita.bat che sposta i .doc nelle cartelle ..\1, ..\2, ..\3, ..\4 in base al numero N nel nome.
  2. Messaggi a schermo. Lo script deve mostrare chiaramente i file spostati.
  3. Cartelle destinazione. Se mancanti, devono essere create con comando adeguato.

Domande di approfondimento (facoltative)

  1. Stampare un messaggio personalizzato per ogni file spostato (es. “Spostato: Ticket_1_001_20250402.doc”).
  2. Creare automaticamente le cartelle di destinazione se non esistono.
  3. Scrivere un secondo script che rinomini i file spostati aggiungendo _GESTITO prima di .doc.
  4. Scrivere uno script “inverso” che riporti tutti i file nelle cartelle in tickets\.
  5. Scrivere uno script che conti quanti .doc ci sono per ogni gravità e mostri i conteggi.

Consegna su Moodle

Suggerimento: prova con 6–8 file di esempio (gravità miste) prima dell’upload.

Valutazione sintetica

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 ...