Você poderia propor uma maneira de copiar uma lista de arquivos de um diretório para outro.
Durante a cópia, o script deve colocar a primeira letra do nome do arquivo em maiúscula e todas as outras letras em minúsculas.
Responder1
Para sua consideração:
for i in *;
do
fletter=`echo $i| cut -b 1`; # FIRST LETTER
rest=`echo $i | cut -b 2-`; # THE REST
fletter=`echo $fletter | tr "[a-z]" "[A-Z]"`;# CAPITILIZE FIRST LETTER
rest=`echo $rest | tr "[A-Z]" "[a-z]"`; # LOWER CASE THE REST
cp "$i" "/target/directory/$fletter$rest" ; # COPY TO DESTINATION
done
Aqui, *
irá expandir para os arquivos no diretório atual. Se você quiser que isso seja restrito aarquivosapenas, considere o seguinte:
find . -type f -print0 | while IFS= read -r -d '' i; do
# rest of the script
done