bash shell最基本的语法
1 shell语句的基本构成
shell每个基本的构成元素之间都相隔一个空格。
比如[ -e file ],[、-e、file、]这四个基本元素之间都相隔了一个空格。
同样的道理[ ! -e file ],[、!、-e、file、]这五个基本元素之间都相隔一个空格。
2 shell if expression combine
!、a、o,分别非、与和或,不需要带括号,它们本身就是分隔符。
3 bash shell的所有的true的概念是0,这个和其它编程语言的相反
4 x="hello"
" $x "等价于" hello ",注意两边的空格,它们是粘贴在一起的。
5 for c in $ABC; do
done,默认是以空格和tab键为分隔符的。
6 ||和&&
command1 || command2,command1执行失败了,执行command2
command1 && command2, command1执行成功了,执行command2
7 空格和等于号
当等于号前后都没有空格时,等于号是赋值的意思。当等于号前后都有一个空格时,等于号是判断是否相等的意思。
8 bash本身不关心命令或者脚本参数的形式
可以使“-”,可以使“--”,也可以什么都没有。
至于怎么去解析和使用这些参数,都有命令或者脚本自己去处理。
比如bash shell脚本,--enable-add-ons=nptl,脚本中处理的时候,先提取出enable-add-ons,然后给enable-add-ons赋值为nptl来set这个变量。在./configure –-enable-add-ons=nptl的时候,bash只是把—enable-add-ons赋值给位置参数$1,其它的什么都没有做,它并不会解析“--”。
9 bash shell的条件的通用格式
[ xxx yyy xxx ],"["、"xxx"、"yyy"、"xxx"、"]"这五者之间都加一个空格。其中前面的xxx是一个变量,后面的xxx是一个字符串。yyy等于的话用“=”,其它依次类推。
这个通用格式称为test-command。
bash shell最基本的语法的更多相关文章
- Linux bash shell环境变量以及语法规范
摘自: http://blog.csdn.net/abc_ii/article/details/8762739
- ~/.bashrc的常用alias设置,30 个方便的 Bash shell 别名
centos6.5/centos7系统中,alias定义在/etc/bashrc,分别写在/etc/profile.d/*.sh中,可以在此目录添加my.sh,或者~/.bashrc,或者~/.bas ...
- Bash shell编程的语法知识点(1)
Bash shell脚本编程知识点如下(初学,不全,欢迎讨论补充): shell简介 脚本的简单介绍 变量和引用 算术运算 交互式编程 选择判断 条件测试 循环 函数 shell简介 shell是一种 ...
- bash命令检测Shell脚本中的语法错误和查看详细执行过程
(1).bash命令检测Shell脚本中的语法错误 bash -v [脚本] [root@youxi1 ~]# vim a.sh #/bin/bash sum=$[$1+$2] echoo $sum ...
- bash shell命令(2)
在上篇<bash shell命令(1)>中,介绍了几种简单的linux shell命令,今天继续介绍bash shell命令 本文地址:http://www.cnblogs.com/arc ...
- 第四章:更多的bash shell命令
第四章:更多的bash shell命令 监测程序 ps (其他ps内容见#1 ) Unix风格的ps命令参数 参数 描述 -A 显示所有进程 -N 显示与指定参数不符的所有进程 -a 显示除控制进程( ...
- shell脚本学习之Bash shell 里各种括号的用法
今天在 SegmentFault 上看到又有人问起关于Shell里各种括号的问题.对于很多玩Shell的人,括号是个很尴尬的问题,用起来没问题,说起来不明白,我在这里总结一下Bash Shell几种括 ...
- 系统管理中 bash shell 脚本常用方法总结
在日常系统管理工作中,需要编写脚本来完成特定的功能,编写shell脚本是一个基本功了!在编写的过程中,掌握一些常用的技巧和语法就可以完成大部分功能了,也就是2/8原则 1. 单引号和双引号的区别 单引 ...
- (转)linux bash shell 入门教程
Shell Script(bash)简介 众所皆知地,UNIX上以小工具著名,利用许多简单的小工具,来完成原本需要大量软体开发的工作,这一点特色,使得UNIX成为许多人心目中理想的系统平台. 在众多的 ...
随机推荐
- spring运行时没有问题,在单元测试时,出现java.lang.ClassFormatError错误
Caused by: java.lang.ClassFormatError: Absent Code attribute in method that is not native or abstrac ...
- 对拍程序(Win)
代码如下: @echo off :again rand.exe echo "rand finish" asd.exe echo "1.exe finish" 未 ...
- HackerRank# Stock Maximize
原题地址 不知道为什么要用动态规划做,明明是扫几遍就行了啊 HackerRank上的题目特别喜欢long long类型啊,不用就爆.. 代码: #include <cmath> #incl ...
- [HNOI2008]越狱 (组合数学)
题目描述 监狱有连续编号为 1-N 的 N 个房间,每个房间关押一个犯人,有 M 种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱. 输入输出 ...
- Merge into语句用法及其效率问题
Merge into语句用法及其效率问题 /*Merge into 详细介绍MERGE语句用来合并UPDATE和INSERT语句.通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询, ...
- hihocoder #1290 : Demo Day
传送门 #1290 : Demo Day 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 You work as an intern at a robotics star ...
- 用CSS3变形创建半圆形导航
http://www.xuanfengge.com/create-a-semicircle-with-css3-variant-navigation.html demo:http://tympanus ...
- HDU 5905 Black White Tree(树型DP)
题目链接 Black White Tree 树型DP,设$f[i][j]$为以$i$为根的子树中大小为$j$的连通块中可以包含的最小黑点数目. $g[i][j]$为以$i$为根的子树中大小为$j$的 ...
- vSphere 6.5支持512e,NVMe SSD呢?
原创 2017-01-12 朱朋博 金笑雨 企事录 2016年底,VMware终于宣布,从vSphere 6.5开始支持512e扇区格式了. 这当然是好事.不过,不黑不舒服斯基说:原来以前的版本连51 ...
- docker 配置 direct-lvm
当前需要设置的宿主机是环境是搭建在vbox虚拟机上的centos7系统.测试环境中出现过一次意外情况,当时为了测试docker日志文件限制,运行了一个docker容器,但是后面忘记停止了,几天后发现了 ...