#!/bin/bash
TESTCHARS=2
head="#!"
PATHNAME=$(pwd)
if [ "$#" -eq 1 ]; then
echo $PATHNAME
fi
结果执行时出现“syntax error near unexpected token `then’”,上网查了半天,终于搞明白了原因:if 与‘[‘之间没有加空格导致的。切记!
if [ "$test"x = "test"x ]; then
注意到” test"x最后的x,这是特意安排的,因为当 test为空的时候,上面的表达式就变成了x = testx,显然是不相等的。而如果没有这个x,表达式就会报错:[: =: unary operator expected