O comando a seguir colocará o número do arquivo 'strengen' mais recente na variável $LATEST
:
LATEST=$(/bin/ls -1t | grep '^strengen' | head -1 | sed -e 's/strengen.*=//')
Eu usei /bin/ls
aqui, em vez de apenas ls
, para eliminar qualquer alias que possa afetar a saída de ls -1
- ls
é muito comumente com alias.
Observe também que a opção ls
que estou usando é -1
(número um) e não -l
(letra l
). Isso diz ls
para listar um arquivo por linha. A opção -t
informa ls
para classificar por hora, mais recente primeiro.
Outra alternativa seria colocar algo como o seguinte na parte superior da sua função strenggen()
:
[ -e "strengen?string=$1" ] && return
Isso fará com que a função retorne imediatamente sem fazer nada se o arquivo já existir.