将命名参数传递给Shell脚本

阿梅里奥·巴斯克斯·雷纳(Amelio Vazquez-Reina)

有没有简单的方法可以将命名参数传递(接收)到Shell脚本?

例如,

my_script -p_out '/some/path' -arg_1 '5'

并在内部my_script.sh将其接收为:

# I believe this notation does not work, but is there anything close to it?
p_out=$ARGUMENTS['p_out']
arg1=$ARGUMENTS['arg_1']

printf "The Argument p_out is %s" "$p_out"
printf "The Argument arg_1 is %s" "$arg1"

在Bash或Zsh中可能吗?

钢铁司机

如果您不介意仅限于单个字母的参数名称,即my_script -p '/some/path' -a5,那么在bash中,您可以使用内置函数getopts,例如

#!/bin/bash

while getopts ":a:p:" opt; do
  case $opt in
    a) arg_1="$OPTARG"
    ;;
    p) p_out="$OPTARG"
    ;;
    \?) echo "Invalid option -$OPTARG" >&2
    ;;
  esac
done

printf "Argument p_out is %s\n" "$p_out"
printf "Argument arg_1 is %s\n" "$arg_1"

那你可以做

$ ./my_script -p '/some/path' -a5
Argument p_out is /some/path
Argument arg_1 is 5

有一个有用的Small getopts教程,或者您可以help getopts在shell提示符下键入。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将参数传递给Shell脚本

来自分类Dev

将参数传递给Shell脚本

来自分类Dev

我可以将命名参数传递给鱼脚本吗?

来自分类Dev

我可以将命名参数传递给鱼脚本吗?

来自分类常见问题

如何通过docker run将参数传递给Shell脚本

来自分类Dev

将路径作为参数传递给Shell脚本

来自分类Dev

如何将管道参数传递给Shell脚本

来自分类Dev

如何将参数传递给Shell脚本?

来自分类Dev

将路径作为参数传递给Shell脚本

来自分类Dev

将参数传递给cURL shell脚本文件

来自分类Dev

将'*'作为命令行参数传递给Shell脚本

来自分类Dev

如何将 shell 脚本参数传递给 oozie

来自分类Dev

将参数传递给存储在 HDFS 中的 shell 脚本

来自分类Dev

如何使用java将getopts参数传递给shell脚本

来自分类Dev

将参数传递给脚本

来自分类Dev

如何将整数参数传递给Shell脚本,然后将其传递给程序?

来自分类Dev

PowerShell将命名参数传递给ArgumentList

来自分类Dev

通过cygwin从Shell脚本运行时,如何将参数传递给Powershell脚本?

来自分类Dev

Shell脚本将参数传递给另一个脚本

来自分类Dev

Shell脚本:如何将脚本的命令行参数传递给它调用的命令?

来自分类Dev

将参数传递给封装在 shell 脚本中的 Python 脚本

来自分类Dev

如何将Shell变量作为命令行参数传递给Shell脚本

来自分类Dev

如何将Shell变量作为命令行参数传递给Shell脚本

来自分类Dev

将变量从shell脚本传递给jenkins

来自分类Dev

将外部参数传递给QV脚本

来自分类Dev

将PSCredential作为参数传递给脚本

来自分类Dev

Apps脚本将参数传递给cUrl

来自分类Dev

将值传递给脚本中的参数

来自分类Dev

将字体作为参数传递给脚本

Related 相关文章

热门标签

归档