All pastes #284844 Raw Edit

Trucs

public text v1 · immutable
#284844 ·published 2006-12-19 10:37 UTC
rendered paste body
#!/bin/bash

### Script pour ré-écrire le noms des ### fichiers en minuscule ou majuscule ### suivant l'option demandée.

# Vérifie si le fichier est déjà en minuscule et l'ignore

function minuscule()
{
if [ -d $2 ]
then
DIR=$2
fi
if [ -f $2 ]
then
DIR=""

echo $DIR
echo $2

echo
echo "Liste des fichiers avant traitement :"
ls $DIR

fi
for a in `ls $DIR`
do
fname=`echo $a | tr A-Z a-z`
if [ $fname != $a ]
then
mv $DIR$a $DIR$fname
fi
done

echo
echo "Liste des fichiers aprés traitement :"
ls $DIR
}

# Vérifie si le fichier est déjà en majuscule et l'ignore

function majuscule
{
if [ -d $2 ]
then
DIR="$2"
fi
if [ -f $2 ]
then
DIR=""
fi
for a in `ls $DIR`
do
fname=`echo $a | tr a-z A-Z`
if [ $fname != $a ]
then
mv $DIR$a $DIR$fname
fi
done
}

# Vide l'écran

clear

# Affiche le nom du script

echo "Nom du script :" $0

# Affiche le PID du script

echo "PID du script :" $$

# Affiche le nombre d'argument passé au script

echo

echo $# "argument(s)"

echo

# Affiche le premier argument

echo "Premier argument :" $1

# Affiche le second argument

echo "Second argument :" $2

echo

# teste si il y a deux arguments à la suite du programe

if [ "$#" -ne "2" ]
then
echo "commande :" $0 "arg1 arg2"
exit 1
fi

# teste  si le premier argument et -m ou -M

case $1 in
	"-m")	
	echo "minuscule"
	minuscule
	;;

	"-M")
	echo "MAJUSCULE"
	majuscule
	;;

	*)
	echo "Les arguments sont :"
	echo "-m"
	echo "-M"
	;;
esac