Как автоматически предоставить разрешения для файла?

Когда я пытаюсь запустить файл python, скажем, hello.py, он запрашивает

bash: ./hello.py: Permission denied

, поэтому мне нужно

chmod u+x hello.py

, прежде чем я его запущу.

Можно ли автоматически предоставить доступ ко всем файлам Python, как только они будут созданы?

0
задан 15 December 2013 в 20:08

2 ответа

Вы можете использовать простой скрипт, подобный этому,

#!/bin/bash

if [ $# -lt 2 ]
then
    chmod +x $(pwd)/$1
    $(pwd)/$1
else
    chmod +x $(pwd)/$1
    $(pwd)/$1 $2
fi

Сохраните приведенный выше скрипт как runpy.sh, сохраните его в PATH (вы можете сохранить его в ~/bin)

Дайте ему разрешение на выполнение из терминала,

chmod +x ~/bin/runpy.sh

Использование

  • Для запуска hello.py без изменения разрешения запуска в терминале,
runpy.sh hello.py
  • В случае, если вы хотите использовать что-либо в аргументе программы python, укажите аргументы внутри " ", например,
runpy.sh hello.py "-option arg1 arg2 agr3"

It должен сделать свое дело. Но не забудьте использовать строку shebang в файле python (.py),

#!/usr/bin/python
0
ответ дан 15 December 2013 в 20:08

Нет, это невозможно. Вы должны chmod эти файлы самостоятельно. Если у вас есть программируемый редактор (например, vim или emacs), вы можете написать плагин, который автоматически делает это при записи файла, имя которого заканчивается на .py.

0
ответ дан 15 December 2013 в 20:08

Другие вопросы по тегам:

Похожие вопросы: