如何切割Linux shell的所有表格和空格?

时间:2011-03-24 12:59:55

标签: linux shell

我有.sh个文件:

test -e "$APP_SERVER_HOME"

if [ $? != 0 ]; then

   echo "Application server home $APP_SERVER_HOME does not exist"

   exit 6

fi

如何在测试命令之前从APP_SERVER_HOME变量中删除所有空格和表格?

2 个答案:

答案 0 :(得分:3)

APP_SERVER_HOME=`echo "$APP_SERVER_HOME" |sed 's/\s//g'`

这是你想要的吗?

注意:如果它包含“C:\ Program Files \ Foo \ bar.exe”,它现在将包含“C:\ ProgramFiles \ Foo \ bar.exe”,这可能不是你想要的。

APP_SERVER_HOME=`echo "$APP_SERVER_HOME" |sed 's/^\s\+//' |sed 's/\s\+$//'`

这个只会修剪前导空格和尾随空格,而不是内部空格。

答案 1 :(得分:2)

您也可以使用shell参数扩展方法(described here)执行此操作:

shopt -s extglob

${APP_SERVER_HOME##+([[:blank:]])}