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.取变量值的符号'$'和后边的变量或括号不能有空格
shell 编程空格注意事项相关推荐
- shell 编程中空格的使用,双引号,单引号,反引号
http://blog.csdn.net/panda19881/article/details/6626727 1.定义变量时, =号的两边不可以留空格. eg: gender=femal----ri ...
- Linux学习(十四)---大数据定制篇Shell编程
文章目录 一.为什么要学习shell编程 二.Shell 是什么 三.shell 编程快速入门-Shell 脚本的执行方式 3.1 脚本格式要求 3.2 编写第一个 Shell 脚本 3.3 脚本的常 ...
- shell编程之文本处理工具sed
shell编程之文本处理工具sed 文章目录 shell编程之文本处理工具sed 一.文件编辑器知多少 二.强悍的sed介绍 1. sed用来做啥? 2. sed如何处理文件? 三.sed使用方法介绍 ...
- Linux【shell】 shell编程
shell编程 一.shell脚本的执行方式 1.1 shell脚本的格式要求 脚本以#!/bin/bash开头 脚本需要有可执行权限 1.2 编写一个shell脚本 需求说明:创建一个shell脚本 ...
- linux编程 —— shell编程脚本常用语法总结 【学习笔记】
文档声明: 以下资料均属于本人在学习过程中产出的学习笔记,如果错误或者遗漏之处,请多多指正.并且该文档在后期会随着学习的深入不断补充完善.感谢各位的参考查看. 笔记资料仅供学习交流使用,转载请标明出处 ...
- shell编程入门(一天掌握shell编程)
一.背景 到新公司之后,发现好多地方需要使用shell来编写一些简单的程序来提升自己的工作效率,因此专门B站上查看视频(尚硅谷的视频),在这里学习总结下shell编程. 二.shell概述 shell ...
- 【Linux】Linux学习(四)Shell编程
Linux学习(四)Shell编程 Shell概述 Shell脚本入门 变量 系统预定义变量 自定义变量 特殊变量 运算符 条件判断 流程控制(重点) if判断 case语句 for循环 while循 ...
- 运维 - 第一阶段 - linux与shell编程
linux与shell编程 讲师:墨竹 系统运维与linux 1.系统运维是什么 简单来说运维(Operation and maintenance)是指对公司硬件和软件的维护. 硬件包括:机房.机柜. ...
- Shell编程从入门到入土
1. Shell 编程的作用 将一些复杂的命令简单化(平时我们提交一次github代码可能需要很多步骤,但是可以用Shell简化成一步) 可以写一些脚本自动实现一个工程中自动更换最新的sdk(库) 自 ...
最新文章
- 人脸识别中的rank-n
- 计算机CPU哪家好,2019年电脑cpu排行榜_电脑CPU哪个好 电脑CPU排行榜2019
- WINCE串口通讯经验小结
- C++总结笔记(八)—— 菱形继承
- 亲历腾讯WEB前端开发三轮面试经历及面试题
- wireshark过滤使用
- ubuntu 自动加载ko_linux驱动模块开机自动加载,以及应用程序开机自启动
- android怎样判断插入数据是否成功_MySQL一个表的自增id用完了,背井大佬让我用这些姿势再往里插数据...
- 我的飞鸽传书程序,很好!!!
- 2.4 线性相关和张成空间
- java 定义方法_java如何定义方法
- vue - rimraf
- php获取csv文件乱码,php使用fgetcsv读取csv文件乱码解决方法
- matplotlib柱状图之子柱状图不同颜色—20种颜色列表
- 基于WaveNet网络的英语语音识别
- 正弦定理c语言函数,正弦定理和余弦定理的所有公式
- ES index 管理
- 整理阿里巴巴社招最新面试题及答案,附复学习笔记,面试成功归来
- 王选:从Dijkstra谈帅才的洞察力
- Java 读取Word标题(目录)
热门文章
- 昭和書体 全書体一览
- 经纬M300赛尔102S航测全流程解析
- Android获取当前连接的wifi名称
- 算法(赛马问题)图解
- python办公自动化(4)拆分表格
- 程序员收入高,听说要被整治了?
- Ubuntu 下eclipse安装
- php redis setex如何获取,php-redis中文参考手册_Ping_echo_set_get_setex_psetex_...
- Android 使用百度飞桨做OCR的本地识别
- 2.2 华为-软件工程师-7.21笔试题