为什么这是语法错误?

时间:2012-05-10 20:59:02

标签: linux bash shell

我有一个bash函数如下:

function folderSize{
    du -hs | awk '{print $1}'
}
folderSize

当我运行它时,我收到以下错误:

./size.sh: line 2: syntax error near unexpected token `du' ./size.sh:

line 2: `   du -hs | awk "{print $1}"'

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:5)

在{。

之前需要

空格

function folderSize {
  du -hs | awk '{print $1}'
}

此外,您调用该函数的方式仅为folderSize,没有美元符号,没有括号。

答案 1 :(得分:0)

我不确定您的变体的语法是否正确。我通常会这样做:

folderSize() {
  du -hs | awk '{print $1}'
}
folderSize

答案 2 :(得分:0)

function folderSize {
    du -hs $1 | awk '{print $1}'
}

folderSize '.'