Если вы используете bash в качестве оболочки, это простая задача для конвейера оболочки.
ls | grep '\.out$' | while read file; do echo mv "$file" "${file%.*}"; done
ls создает список файлов в каталоге.
grep '\.out$' извлекает имена файлов, оканчивающиеся на .out, и отбрасывает остальные.
while read file читает имена файлов по одному.
echo mv "$file" "${file%.*}" отображает, но не запускает команду mv, которая переименовывает каждый файл в версию без его расширения. Бизнес ${file%.*} - это синтаксис bash для удаления расширения файла. Когда вы убедитесь, что конвейер будет делать то, что вам нужно, если он будет работать по-настоящему, удалите часть echo и дайте ему по-настоящему работать.
ls | grep '\.out$' | while read file; do mv "$file" "${file%.*}"; done