В случае, если аргументов нет, ваша программа рушится.
Надо бы вывести инструкцию Usage и выйти с ненулевым кодом возврата.