Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何创建一个bash脚本,该脚本在执行脚本的同一行上接受用户输入?_Bash_Variables_Input - Fatal编程技术网

如何创建一个bash脚本,该脚本在执行脚本的同一行上接受用户输入?

如何创建一个bash脚本,该脚本在执行脚本的同一行上接受用户输入?,bash,variables,input,Bash,Variables,Input,我想我比我想象的更像一个新手 奇怪的是,我知道这是一个简单的答案。我知道这是多么简单,我会感到尴尬。但是你可以从问题的标题中看到,我甚至不知道如何正确地问这个问题,这可能就是为什么我不能用谷歌搜索它。。。我知道有这么多的脚本可以做到这一点,但我现在似乎找不到一个可以查看源代码的脚本 编辑:bash脚本 因此,以下是我想要实现的目标: user@some-machine:~$ myscript variable 其中“variable”是用户标记的东西,它将成为脚本中的变量。我知道如何使用rea

我想我比我想象的更像一个新手

奇怪的是,我知道这是一个简单的答案。我知道这是多么简单,我会感到尴尬。但是你可以从问题的标题中看到,我甚至不知道如何正确地问这个问题,这可能就是为什么我不能用谷歌搜索它。。。我知道有这么多的脚本可以做到这一点,但我现在似乎找不到一个可以查看源代码的脚本

编辑:bash脚本

因此,以下是我想要实现的目标:

user@some-machine:~$ myscript variable
其中“variable”是用户标记的东西,它将成为脚本中的变量。我知道如何使用read命令获取用户输入,但我希望通过在一行中键入脚本名称,后跟变量来执行脚本

我对这件事喋喋不休,因为我希望其他人稍后会通过谷歌搜索找到这件事,并得到他们的答案

提前谢谢


Kevin

bash脚本中的第一个参数是$1,第二个参数是$2等等。

bash脚本中的第一个参数是$1,第二个参数是$2等等。

您也应该检查
getopts
以获得类似unix的
-x
参数处理

your_script -d some_d_arg -x file1.txt file2.txt
因此,请将脚本的参数与文件名区分开来

基本示例:

#!/bin/bash
while getopts d:x arg
do
    case "$arg" in
        d) darg="$OPTARG";;
        x) xflag=1;;
        ?) echo >&2 "Usage: $0 [-x] [-d darg] file ..."; exit 1;;
    esac
done
shift $(( $OPTIND-1 ))

for file
do
    echo =$file=
done

您还应该检查
getopts
,例如,对于类unix的
-x
参数处理

your_script -d some_d_arg -x file1.txt file2.txt
因此,请将脚本的参数与文件名区分开来

基本示例:

#!/bin/bash
while getopts d:x arg
do
    case "$arg" in
        d) darg="$OPTARG";;
        x) xflag=1;;
        ?) echo >&2 "Usage: $0 [-x] [-d darg] file ..."; exit 1;;
    esac
done
shift $(( $OPTIND-1 ))

for file
do
    echo =$file=
done

我知道这很简单,事实上我在bash的手册页上看到了这一点,但我没有正确地阅读它。我知道这很简单,事实上我在bash的手册页上看到了这一点,但我没有正确地阅读它。嗨,我以前在其他脚本中看到过这一点,并试图拼凑它的工作原理。我刚试过这个,酷!谢谢。嗨,我以前在其他脚本中看到过这一点,并试图拼凑出它的工作原理。我刚试过这个,酷!谢谢