python - 在 Python 中获取命令行

标签 python bash command-line

所以我正在处理这个项目,我从用户那里获取输入(一个文件名),然后打开并检查内容。文件名为“cur” 现在假设我的文件的名称是 kb.py (它在 python 中) 如果我在我的终端上运行它,那么首先我会做: python kb.y 然后会有一个提示,用户将给出输入。 我会这样做:

A = raw_input("Enter File Name: ")
b = open(A, 'r+')

我不想那样做。相反,我想将它用作命令,例如: python kb.py cur 它将把它作为输入并保存到一个变量,然后变量将打开它。 我很困惑如何在同一命令行中获取输入。

最佳答案

只需使用sys.argv,像这样:

import sys

# this part executes when the script is run from the command line
if __name__ == '__main__':
    if len(sys.argv) != 2: # check for the correct number of arguments
        print 'usage: python kb.py cur'
    else:
        call_your_code(sys.argv[1]) # first command line argument

注意:sys.argv[0] 是脚本的名称,sys.argv[1] 是第一个命令行参数。以此类推,如果还有更多争论。

关于python - 在 Python 中获取命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17155724/

相关文章:

python - Apache mod_wsgi 32 位/64 位 Python 兼容性

bash - 如何编写 Unix 脚本以在多个远程服务器上快速启动服务?

linux - 如何显示bash特殊字符\h、\s等

python - 如何从 python 执行 os/shell 命令

python - Pymongo:批量更新 $setOnInsert 错误

python - 在 Python 中,如何在不引发异常的情况下从另一个异常构造异常?

linux - BASH:日志困境的重定向/每次循环迭代的重复重定向

c++ - 使用预处理器指令定义命令行选项

php - 在命令行 PHP 脚本中找不到“Memcache”

linux - grep:计算所有模式的所有匹配项