Esercizio 3 prova pratica 29 maggio 2014

From Sistemi Operativi
Jump to navigation Jump to search

Soluzione di ababa

Il comando che dovrete implementare come script shell o programma python e' statlen. Data una directory statlen fa una statistica sulla lunghezza dei nomi dei file presenti in tutto il sottoalbero con radice nella directory passata come parametro.

#!/bin/bash
cd $1
files=`find -L`
declare -a stat
for file in $files; do
	file=`basename $file`
	len=`expr length "$file"`
	((stat[$len]++))
done
for i in ${!stat[@]}; do
	echo "${i} : ${stat[$i]}"
done

Mi piacerebbe sapere perché se lo lancio come eseguibile funziona senza problemi se lo lancio con il comando "sh statlen.sh ." invece mi da un sacco di errori.

Perche' "sh" non e' bash ma e' la bourne shell che ha una sitassi meno ricca Renzo (talk) 22:12, 20 April 2015 (CEST)