【问题标题】:How do I pass a text as argument from an bash script?如何将文本作为 bash 脚本的参数传递?
【发布时间】:2020-04-15 07:54:39
【问题描述】:

我构建了一个小 bash 脚本,我需要在其中传递参数,但其中一些参数会有空格,因为它是一个句子或类似的东西。我不想将这些参数存储在文件中,因为它们每次都会更改。

谁能为此提供一个优雅的解决方案。我是初学者,对 bash 了解不多!

【问题讨论】:

    标签: bash shell


    【解决方案1】:

    您需要引用您的参数,以便您的程序接收单个参数。

    这是一个简单的例子:

    #!/bin/bash
    
    echo "$1"
    echo "$2"
    

    如果你这样调用它:

    ./script.sh  'a b' 'c d'
    

    输出将是:

    a b
    c d
    

    关注此的其他帖子:

    Why does my shell script choke on whitespace or other special characters? Passing arguments with spaces between (bash) script

    【讨论】:

    • 谢谢你知道它功能正常!
    【解决方案2】:

    在作为变量传递的字符串周围加上双引号就可以了。

    可以通过export VARIABLE = "the_value"使用环境变量,通过$VARIABLE获取值

    【讨论】:

    • 嘿,我试过了,它在 shell 中被识别为一个参数,但在脚本中却没有。但是感谢您的快速回答,我离我想去的地方更近了一点!
    猜你喜欢
    • 2019-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-23
    • 2017-05-15
    • 2017-09-26
    • 2013-06-18
    • 1970-01-01
    相关资源
    最近更新 更多