将自定义.py脚本存储在个人Linux目录中是否有误?

时间:2017-03-02 01:08:49

标签: python linux scripting

我的最终目标很简单: 在我的Linux系统上存储一组.py脚本,以便我可以:

  • 不使用 / Python [name]
  • 从命令行运行它们
  • 轻松编辑

我可以通过将脚本存储在 / usr / local / bin /

中来解决第一个问题

这导致了第二个问题,因为现在当我尝试打开脚本进行编辑时,我被拒绝了。我可以使用 / sudo vi [name] 来部分解决此问题,这是一个令人失望的修复,因为谁想要在vi中编码?

所以我要么想要在 / usr / local / bin / 中读写脚本,要么我需要能够在其他地方存储脚本,但仍然可以从命令行访问它们。

我当前(损坏的*)修复程序是将它们存储在我的主目录中某个位置的个人目录中,该目录已添加到我的路径中。我听说这是一种可怕的风格。想法?

*我目前无法在PATH中添加个人文件夹。但这是另一个问题的内容。

3 个答案:

答案 0 :(得分:1)

我建议您为~/.bash~/.bash_profile编写命令行别名,类似于以下代码

# script path
alias python_script_1="PATH_TO_PYTHON_SCRIPT_1"
# run script
alias run_python_script_1="python PATH_TO_PYTHON_SCRIPT_1"

如果有多个python文件,请尝试使用Python脚本生成文件。

答案 1 :(得分:1)

还有另一种选择,将你的python文件放在/ home / {your_name} / bin中。 / home / {your_name} / bin通常包含在发行版的默认路径中,它绕过了您无法编辑路径的问题。

如果这不是一个选项,你可以编辑目录/ usr / bin的权限,但从安全的角度来看,这是一个坏主意。 (SRC:https://unix.stackexchange.com/questions/37724/permissions-ownership-of-usr-local-bin#37726

您拥有的另一个选项是提供您使用sudo权限编辑文件的默认程序。如果您打开python文件的默认方式是编辑器,那么您可以执行 / sudo xdg-open file_name ,或者如果它是编辑器,您可以执行 / sudo editor_name file_name 默认情况下,在其gui中打开另一个文件。

最终,修复路径问题并编辑它可能是避免给文件提供不必要权限的最佳解决方案。

答案 2 :(得分:0)

试试这个:

  • 在脚本顶部添加shebang,告诉您如何执行脚本,如下所示:

    #!/usr/bin/python
    
  • 授予脚本x权限。

    chmod +x test.py
    
  • 将文件夹添加到PATH,您可以将其添加到.bashrc

    export PATH=/directory/pythonscript:$PATH
    

或者

cd /usr/bin
ln -s ~/path/to/script