如何制作非交互式shell脚本

时间:2014-05-27 15:16:54

标签: linux bash shell scripting

我想创建一个非交互式shell脚本,我可以在脚本执行开始时给出选项。

我可以硬编码用户提供不同输入时要采取的各种操作。

例如:

下面应该对target.txt

执行一些操作
user@/root>myPlannedScript -p targer.txt   

下面应该对target.txt

执行其他一些操作
user@/root>myPlannedScript -a targer.txt  

例如:

cat工具在给出不同选项时执行各种操作。我希望我的脚本像这样:

:/root> cat --h  
Usage: cat [OPTION] [FILE]...  
Concatenate FILE(s), or standard input, to standard output.  

  -A, --show-all           equivalent to -vET  
  -b, --number-nonblank    number nonblank output lines  
  -e                       equivalent to -vE  
  -E, --show-ends          display $ at end of each line  
  -n, --number             number all output lines  
  -r, --reversible         use \ to make the output reversible, implies -v  
  -s, --squeeze-blank      never more than one single blank line  
  -t                       equivalent to -vT  
  -T, --show-tabs          display TAB characters as ^I  

1 个答案:

答案 0 :(得分:0)

query.sh

#!/bin/bash
if [ $# -eq 0 ]
then echo do one thing
else echo do other thing
fi

“query.sh”=>做一件事

“query.sh anythingYouPut”=>做其他事情; oP

但是如果你真的想要每个动作的参数

#!/bin/bash
if [ -z "$1" ]
then
  echo do nothing
else
  if [ $1 -eq 1 ]
  then
    echo do one thing
  fi
  if [ $1 -eq 2 ]
  then
    echo do other thing
  fi
fi

“query.sh”=>什么都不做

“query.sh 1”=>做一件事

“query.sh 2”=>做其他的事情