Как я могу запустить программу argparse на python без расширения .py?

#python #linux #bash #ubuntu #argparse

Вопрос:

В настоящее время я должен ввести /xkcdpwgen.py -h , чтобы получить следующее

использование: xkcdpwgen [-h] [-w СЛОВ] [-c ЗАГЛАВНЫХ БУКВ] [-n ЧИСЕЛ] [-s СИМВОЛОВ]

Создайте безопасный, запоминающийся пароль с помощью метода XKCD

необязательные аргументы: -h, —справка показать это сообщение справки и выйти-w СЛОВ, —слова СЛОВА включают СЛОВА слова в пароле (по умолчанию=4) -c ЗАГЛАВНЫМИ буквами, —заглавные буквы ЗАГЛАВНЫХ букв прописными буквами случайных слов (по умолчанию=0) -n ЧИСЕЛ, —числа ЧИСЛА вставляют ЧИСЛА случайные числа в пароль (по умолчанию=0) -s СИМВОЛОВ, —символы СИМВОЛЫ вставляют СИМВОЛЫ случайные символы в пароль (по умолчанию=0)

Но я хочу иметь возможность печатать /xkcdpwgen -h и получать следующее

использование: xkcdpwgen.py [-h] [-w СЛОВ] [-c ЗАГЛАВНЫХ БУКВ] [-n ЧИСЕЛ] [-s СИМВОЛОВ]

Создайте безопасный, запоминающийся пароль с помощью метода XKCD

необязательные аргументы: -h, —справка показать это сообщение справки и выйти-w СЛОВ, —слова СЛОВА включают СЛОВА слова в пароле (по умолчанию=4) -c ЗАГЛАВНЫМИ буквами, —заглавные буквы ЗАГЛАВНЫХ букв прописными буквами случайных слов (по умолчанию=0) -n ЧИСЕЛ, —числа ЧИСЛА вставляют ЧИСЛА случайные числа в пароль (по умолчанию=0) -s СИМВОЛОВ, —символы СИМВОЛЫ вставляют СИМВОЛЫ случайные символы в пароль (по умолчанию=0)

Вместо этого я получаю следующее

bash: ./xkcdpwgen: Такого файла или каталога нет

Комментарии:

1. Переименуйте его. Нет никаких веских причин для его продления.

2. Я не знал, что это возможно, пока не увидел ответ ниже

3. Вы не знали, что файл можно переименовать, или не знали, что для скрипта не требуется .py расширение?

4. Я не знал, что можно запустить файл без расширения .py

Ответ №1:

Вы можете назвать его как угодно; пока строка she-bang (например #!/bin/python ) хорошая, файл будет запущен.

 $ mv xkcdpwgen.py xkcdpwgen
$ ./xkcdpwgen -h
 

Для получения дополнительной информации: shebang в Википедии