微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用Linux中的终端命令将文件参数传递给我的bash脚本?

参见英文答案 > How do I parse command line arguments in Bash?                                    31个
所以我的问题是如何使用Linux中的终端命令将文件参数传递给我的bash脚本?
目前我正在尝试在bash中创建一个程序,该程序可以从终端获取文件参数并将其用作程序中的变量.比如我跑
myprogram –file = / path / to / file in Terminal.

我的计划

#!/bin/bash    
File=(the path from the argument)  
externalprogram $File (other parameters)

如何通过我的程序实现这一目标?

解决方法:

如果你只是运行你的脚本,它会更容易(并且更“正确”,见下文)

myprogram /path/to/file

然后你可以访问脚本中的路径为$1(对于参数#1,类似地$2是参数#2,等等)

file="$1"
externalprogram "$file" [other parameters]

要不就

externalprogram "$1" [otherparameters]

如果要从–file = / path / to / file之类的路径中提取路径,通常使用getopts shell函数完成.但这比引用$1更复杂,此外,像–file =这样的开关是可选的.我猜你的脚本需要提供一个文件名,所以在一个选项中传递它是没有意义的.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐