Преобразование программы Python в командный скрипт оболочки C
Я написал программу на Python:
inp = raw_input("ENTER path ")
f = glob.iglob(os.path.join(path,'*.txt'))
for filename in f:
if filename == 'xnak.txt':
print "this is a valid file"
else:
print 'not recognized'`
Теперь я хочу сделать это командой оболочки Unix C (csh) с именем скрипта name
,
Пожалуйста, помогите мне. У меня нет высокого уровня понимания Unix, приветствуются основные и простые идеи.
Просто я просто хочу сделать эту прогу по имени x.py
словно cd
команда в csh. Вы знаете, где вы печатаете cd [dirname]
cd
Функция работает отлично. Мне нужно просто сделать прогу такой.
Таким образом, мне не нужно копировать программу / скрипт из папки в папку для анализа данных папки.
например, когда в папке я набираю x 11
(и нажмите Enter), затем программа начинает выполнение и останавливается после выполнения 11 циклов поиска. Если кто-то все еще не понимает вопрос должным образом, пожалуйста, попросите обоснование, а не отрицательный ответ или неправильный ответ.
2 ответа
Если вы хотите, чтобы ваш скрипт на python выполнялся из оболочки в Unix, вам нужно сделать две вещи:
Добавьте строку shebang, которая говорит, что она должна быть запущена с использованием python. Это должна быть первая строка вашего скрипта, и, вероятно, она будет выглядеть примерно так:
#!/usr/bin/python
Пометить файл как исполняемый, используя
chmod
, Вы можете сделать это из командной строки, набрав:chmod +x test
Просто создайте псевдоним, который вы можете использовать как команду unix:
Скажите, что ваш файл Python test.py
, Итак, вы делаете:
$alias name="python test.py"
Теперь вы можете использовать name
выполнить скрипт Python, как если бы name
была команда.
$name
Если вы хотите, чтобы это работало каждый раз, когда вы используете логин, укажите полный путь к скрипту python, оставьте где-нибудь в системе и добавьте alias
часть вашего .profile
или же .bashrc
файл.