如何从bash脚本中的其他目录调用文件

时间:2014-05-06 01:25:41

标签: bash grep echo

我不知道如何正确地将我的bash脚本称为" drink"这需要从不同目录中的文件调用以获得正确的结果。

如果语法正确,例如"喝[NAME]"通过从另一个文件中获取输出,输出应该是

($ name)喜欢喝酒:

(来自grep -i($ name)的结果[另一个目录中的文件] | cut -f1

1 个答案:

答案 0 :(得分:0)

假设您的名称文件如下所示:

  

爱丽丝:杏仁
  鲍勃:波旁
  克里斯:坎帕里

<强>饮料

#!/bin/bash

names="/path/to/names/file"
drink="$(grep -i ${1} ${names} | cut -d':' -f2)"
if [ "${drink}" == "" ]; then
  echo "${1} not found in ${names}."
else
  echo "${1} likes to drink ${drink}."
fi

<强>输出

$ ./drinks Alice
Alice likes to drink Amaretto.
$ ./drinks Bob
Bob likes to drink Bourbon.
$ ./drinks Dave
Dave not found in ./names