El script que se lista a continuación, convierte el archivo pasado como argumento a mayúsculas.
| ![[Note]](./imagenes/note.png) | Nota | 
|---|---|
| Este script se ha adaptado a partir del archivo de ejemplo /usr/share/doc/bash/examples/scripts.v2/lowercase que se distribuye con el paquete bash. | |
| #! /bin/bash
#
# original from
# @(#) lowercase.ksh 1.0 92/10/08
# 92/10/08 john h. dubois iii (john@armory.com)
#
# conversion to bash v2 syntax done by Chet Ramey
#
# Convert to uppercase by Sergio González González
#
Usage="Usage: $name file ..."
phelp()
{
echo "$name: change filenames to upper case.
$Usage
Each file is moved to a name with the same directory component, if any,
and with a filename component that is the same as the original but with
any lower case letters changed to upper case."
}
name=${0##*/}
while getopts "h" opt; do
	case "$opt" in
	h)	phelp; exit 0;;
	*)	echo "$Usage" 1>&2; exit 2;;
	esac
done
shift $((OPTIND - 1))
for file; do
    filename=${file##*/}
    case "$file" in
    */*)    dirname=${file%/*} ;;
    *)    dirname=. ;;
    esac
    nf=$(echo $filename | tr a-z A-Z)
    newname="${dirname}/${nf}"
    if [ "$nf" != "$filename" ]; then
	mv "$file" "$newname"
	echo "$0: $file -> $newname"
    else
	echo "$0: $file not changed."
    fi
done |