shell 编程中空格的使用方法

 更新时间:2015年01月24日 18:00:26   投稿:mdxy-dxy  
这篇文章主要介绍了shell 编程中空格的使用方法,需要的朋友可以参考下

1.定义变量时, =号的两边不可以留空格.
eg:
gender=femal————right
gender =femal———–wrong
gender= femal———–wrong
2.条件测试语句 [ 符号的两边都要留空格.
eg:
if [ $gender = femal ]; then——-right.
echo “you are femal”;
fi

if[ $gender...-----------------------wrong
if [$gender...----------------------wrong.

3.条件测试的内容,如果是字符串比较的话, 比较符号两边要留空格!
eg:
if [ $gender = femal ]; then——-right.
if [ $gender= femal ]; then——–wrong.
if [ $gender=femal ]; then———wrong.

4.如果if 和 then写在同一行, 那么,注意, then的前面要跟上 ; 号.如果 then 换行写, 那么也没问题.
eg:
if [ $gender = femal ]; then——-right.
if [ $gender = femal ]
then——————————-right.
if [ $gender = femal ] then——-wrong. then前面少了 ; 号.
提示出错信息:
syntax error near unexpected token then
同理,还有很多出错信息 比如
syntax error near unexpected token fi 等都是这样引起的.

5.if 后面一定要跟上 then. 同理
elif 后面一定要跟上 then.
不然提示出错信息:
syntax error near unexpected token else

1)if 语句后面需要跟着then,同时前面要有分号;
2) 空格非常重要,shell 会认为空格前的为一个命令,如果a=3 认为是赋值操作,如果写成a = 3,那么就会认为a为一个命令 this=`ls -l |grep ‘^-' | wc -l `
3) 操作符之间要用空格分开 ,如 test ! -d $1,其中的!和-d就要用空格分开
空格是命令解析中的重要分隔符

6. 命令和其后的参数或对象之间一定要有空格

if [ -x"~/Workspace/shell/a.sh" ];then


只有 -x 后有空格才表示紧跟其后的字符串是否指向一个可执行的文件名,否则就成了测试 -x"~/Workspace/shell/a.sh" 这个字符串是不是空。

7.取变量值的符号'$'和后边的变量或括号不能有空格

相关文章

  • Linux系统links和elinks命令的基本使用教程

    Linux系统links和elinks命令的基本使用教程

    links和elinks都是Linux系统下的命令行浏览器,主要用于在终端中查看网页内容,这篇文章主要介绍了Linux系统之links和elinks命令的基本使用,需要的朋友可以参考下
    2023-09-09
  • shell脚本实现多彩进度条

    shell脚本实现多彩进度条

    这篇文章主要介绍了shell脚本实现多彩进度条的相关资料,需要的朋友可以参考下
    2017-07-07
  • 用内置变量调试shell脚本的方法

    用内置变量调试shell脚本的方法

    这篇文章主要介绍了用内置变量调试shell脚本的方法,需要的朋友可以参考下
    2014-03-03
  • shell获取命令行参数示例分享

    shell获取命令行参数示例分享

    这篇文章主要介绍了shell获取命令行参数示例分享,需要的朋友可以参考下
    2014-03-03
  • linux top命令基本实战

    linux top命令基本实战

    top命令的功能是用于实时显示系统运行状态,包含处理器、内存、服务、进程等重要资源信息,这篇文章主要介绍了linux top命令 实战,需要的朋友可以参考下
    2023-02-02
  • 详解Shell $*和$@之间的区别

    详解Shell $*和$@之间的区别

    这篇文章主要介绍了详解Shell $*和$@之间的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • 把mysql查询结果保存到文件的shell脚本

    把mysql查询结果保存到文件的shell脚本

    这篇文章主要介绍了把mysql查询结果保存到文件的shell脚本,使用mysql的SELECT INTO OUTFILE备份语句,需要的朋友可以参考下
    2014-03-03
  • rhel5.7下安装gearmand及启动的方法

    rhel5.7下安装gearmand及启动的方法

    这篇文章主要介绍了rhel5.7下安装gearmand及启动的方法,需要的朋友可以参考下
    2014-07-07
  • 检查linux网络状态的两个脚本

    检查linux网络状态的两个脚本

    检查linux网络状态的两个脚本,包括通过定时收发email检测网络连通性、定时检测网络状态通过email发送,有需要的朋友可以参考下
    2013-02-02
  • Linux下Shell编程之sed命令的用法详解

    Linux下Shell编程之sed命令的用法详解

    sed(stream editor)是一种流编辑器,它能够对文本进行过滤和转换,sed 非常适合于在管道中处理文本数据,下面小编来和大家聊聊它的具体用法吧
    2025-01-01

最新评论