我是UNIX世界的新手。我们的老师让我们自己学习一切,我必须在课堂上遗漏一些东西。我只知道C#并习惯了文本框。我有一个名为likes
的文件,当我抓住它时会显示以下内容:
dave,coors
mike,bud
linda,coors
gary,miller
mike,miller
sally,coors
dave,bud
sally,miller
我在名为drinks
的bin中创建了一个文件。执行drinks
时,我需要以下内容作为输出。
$ drinks dave
dave likes to drink:
coors
bud
total number of beers dave likes to drink: 2
如果我运行drinks sally
,则输出需要与sallys匹配。
如何在向脚本执行文件时声明一个将在shell上输入名称的变量?
答案 0 :(得分:0)
您可以通过变量$1
(第一个arg),$2
(第二个arg),...,${42}
(四十二个arg)来引用shell脚本的参数。< / p>
在drinks
脚本中,您可以使用$1
引用该名称。
#!/bin/sh
if test $# = 0; then
# User forgot to provide a name.
printf '%s\n' "usage: $0 name" >&2
exit 1
fi
printf '%s\n' "$1 likes to drink"
# Rest of code left as an exercise.