运行python命令行实用程序

时间:2013-12-05 03:16:18

标签: python unix command-line

所以我写完了一个处理一些样本银行信息的Python程序。

我被告知为分配创建一个makefile,它将具有构建,查看和清理目标。我做了那么多,它按预期工作。

然而,有人告诉我,我的导师会运行类似于

的程序
accounts -i

其中account是程序,-i是arg。

但是,我只能使用

./accounts -i

运行该程序。

我环顾四周,发现了一些关于将文件添加到PATH的内容,但我真的迷失了我正在做的事情。我的结局是否有问题,或者我的导师告诉我做错了什么?

感谢。

2 个答案:

答案 0 :(得分:0)

你可以添加。 (当前的工作目录)到您的路径,类似于(bash / ksh语法):

export PATH="$PATH:."

......但这被广泛认为是一个安全问题。

你最好只输入./accounts -i。你的导师可能已经知道了这个问题。

答案 1 :(得分:0)

就我个人而言,我认为这只是一个简单的错字或教练的类似错误。

在shell脚本中,PATH变量表示将搜索您正在引用的可执行文件的一组目录(以冒号分隔)。

假设您的PATH等于“。:/ usr / bin”,当您在命令行键入“accounts -i”时,您的shell首先搜索“./accounts”然后(假设它不是检查“/ usr / bin / accounts”。如果它发现它将执行存在的那个并传递给定的参数(即“-i”)。

如果您想尝试一下,PATH通常会像这样修改:

export PATH="directory_name:$PATH"

(因为你很可能希望“directory_name”优先于$ PATH中当前的其余部分。)

然而,“。”默认情况下通常不包含在PATH中,由于详细原因here,许多人认为这是不好的做法。

所以我的猜测是你的教练要么“。”在他或她的PATH中,或者很快就会意识到使用“./acccounts”更合适。