简单的shell脚本出错

时间:2016-05-17 13:44:15

标签: shell

我写了一个自动设置环境的shell脚本

#!/bin/sh

set path=(/dv/project/ $path)

我通过

更改执行位
chmod +x init.sh

当我将其作为

运行时
./init.sh

它提示我错误

./init.sh: line 3: syntax error near unexpected token `('
./init.sh: line 3: `set path=(/dv/project/ $path)'

这可能是什么问题?谢谢!

1 个答案:

答案 0 :(得分:0)

如果不需要使用set,请尝试以下方法:

#!/bin/bash

path=(/dv/project/ $path)

正如我所注意到的,您正试图扩展您的$PATH环境变量,对吧?有一个更好的办法。试试this approach

# Extend $PATH without duplicates
function _extend_path() {
  if ! $( echo "$PATH" | tr ":" "\n" | grep -qx "$1" ) ; then
    PATH="$1:$PATH"
  fi
}

# Add custom bin to $PATH
[ -d ~/.bin ] && _extend_path "$HOME/.bin"