任何人都可以解释这些shell脚本是如何工作的?

时间:2016-07-20 02:50:44

标签: bash shell

    ckFile() {
  if [ ! -e "$1" ]; then
    err "$2 File '$1' not found";
  fi
}

    ckFileSz() {
  ckFile $1 $2;
  SZ=`ls -l $1 | awk '{print $5}'`;
  if [ "$SZ" == "0" ]; then
    err "$2 file '$1' is zero length";
  fi
}

1 个答案:

答案 0 :(得分:2)

$1是传递给[ function ]的第一个参数。例如,如果您调用函数:

ckFile /path/to/somefile

/path/to/somefile将成为第一个参数(即$1)。

[]是bash [ test ]的替代形式。简而言之

if [ ! -e "$1" ]

您正在检查系统上是否存在文件$1!否定某个条件)(-e选项)。

  

以及为什么ckFile $1 $2有两个参数

关于第二个论点的信息很少。您可以使用函数的调用方式更新问题。