Você está usando um caminho relativo, em que seu script está procurando os arquivos .mp4
no diretório atual, isto é, o diretório de onde o script está sendo executado e descobrindo que nenhum arquivo .mp4
existe. para um arquivo *.mp4
literal (assumindo que nullglob
/ failglob
não está definido, que é o padrão), e esse arquivo não existe também, daí a mensagem de erro *.mp4: No Such File or Directory
.
Você deve usar o caminho absoluto:
for i in /directory/*.mp4; do ...; done
Substitua /directory/
pelo caminho real do diretório; se você quiser, pode pegar o nome do diretório como primeiro argumento também:
for i in ""/*.mp4; do ...; done
Você pode usar o caminho absoluto ou relativo aqui, mas novamente o caminho absoluto é sempre a opção mais segura.
Agora, chame o script executável da maneira usual:
/path/to/script.sh /directory
Do diretório de script:
./script.sh /directory