-1

我写了一个 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'`  

现在我想让它成为一个带有 script-name 的 Unix C shell(csh) 命令name

请帮帮我。我对Unix没有高水平的了解,欢迎基本和简单的想法。

只是我只想让这个 progx.pycdcsh 中的命令一样命名。你知道,无论你在哪里键入cd [dirname]cd函数都可以正常工作。我只需要像那样制作前卫。
因此,我不需要将程序/脚本从一个文件夹复制到另一个文件夹来分析文件夹的数据。

就像在我键入的文件夹中x 11(并按 Enter 键)然后程序开始执行并在执行 11 次搜索循环后停止。如果有人仍然不能正确理解这个问题,那么请要求理由而不是投反对票或错误回答。

4

2 回答 2

2

如果您希望您的 python 脚本可以在 unix 的 shell 中执行,您需要做两件事:

  1. 添加一个shebang行,说明它应该使用 python 运行。这应该是脚本的第一行,可能类似于:

    #!/usr/bin/python
    
  2. 使用 . 将文件标记为可执行文件chmod。您可以通过键入以下命令从命令行执行此操作:

    chmod +x test
    
于 2012-05-19T18:38:48.673 回答
1

只需创建一个别名,您可以将其用作 unix 命令:

假设你的 python 文件是test.py. 所以你也是:

$alias name="python test.py"

现在,您可以name像执行命令一样执行 python 脚本name

$name

如果您想在每次使用登录时都完成这项工作,请提供 python 脚本的完整路径并保留在系统的某个位置并将该alias部分添加到您的.profileor.bashrc文件中。

于 2012-05-19T18:34:00.397 回答