开个帖,开始学习shell编程
恩,就这么开始了
首先说一下这个小小的插曲。。。写着写着,它就崩溃了,然后我也崩溃了。。。崩溃的我到处找一个不会让我崩溃的工具,然后找来找去就找到了scribefire。
1. 关于从Command Line取参数进来
| ~ Shell Built in Variables | ~ Meaning |
| $# | Number of command line arguments. |
| $? | Exit Status |
| $* | string that contains all arguments to shell |
| $@ | Same as above, except when quoted. |
| $- | Option supplied to shell |
| $$ | PID of shell |
| $! | PID of last started background process (started with &) |
另外,还有$1,$2,$3...代表低N个参数。
2. 关于方括号
这货是一个函数!它不是符号!不是符号!它等同于test命令,那个吧,你要是不给它整个空格啥的,等着报错吧,解释器会告诉你找不到符号啊啊啊。
#!/bin/sh
#
#Script to test if..elif...else if [ $# -eq 0 ]
then
echo "$0 : You must give one integers!"
exit 1
fi if [ $1 -gt 0 ]
then
echo "$1 is positive"
elif [ $1 -lt 0 ]
then
echo "$1 is negative"
elif [ $1 -eq 0 ]
then
echo "$1 -eq 0"
else
echo "Opps! $1 is not number, give number please!"
fi
千万记得`[`后面要加空格,`]`前面也要空格啊啊啊。
3.
有事先放一下:
source
http://linux.vbird.org/linux_server/0250simple_firewall.php
http://tille.garrels.be/training/bash/
http://freeos.com/guides/lsst/index.html
http://www.hlevkin.com/Shell_progr/hellobash.htm
http://www.cyberciti.biz/faq/bash-for-loop/
http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html
http://www.ibm.com/developerworks/linux/library/l-bash/index.html
开个帖,开始学习shell编程的更多相关文章
- Linux学习——shell编程之环境变量配置文件
小白学习,在学习中总结! shell编程之环境变量配置文件 一:环境变量配置文件 1 shell编程之环境变量配置 变量类型: 用户自定义变量(本地变量) 环境变量 :定义每个用户的操作环境,如pat ...
- Linux学习——shell编程之运算符
shell编程之运算符 一:shell中常见算术运算符号和优先级 二:算术运算符 Shell 变量:是弱类型!不能进行加减乘除!比较麻烦! 例子 :shell变量弱类型 a=11 b=22 echo ...
- Linux学习——shell编程之正则表达式和字符处理命令
shell编程之正则表达式 一 正则表达式 1 什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分隔.匹配.查找及替换操作. 2 shell编程之正则表达式 ...
- Linux学习——shell编程之变量
shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...
- 大数据学习——shell编程
03/ shell编程综合练习 自动化软件部署脚本 3.1 需求 1.需求描述 公司内有一个N个节点的集群,需要统一安装一些软件(jdk) 需要开发一个脚本,实现对集群中的N台节点批量自动下载.安装j ...
- 学习Shell编程
目录 1 什么是Shell 2 Linux的启动过程 3 怎样编写一个Shell脚本 4 Shell脚本的执行方式 5 内建命令和外部命令的区别 6 管道和重定向 7 变量赋值 8 环境变量配置文件 ...
- Linux学习 -- Shell编程 -- 流程控制
if语句 单分支 if [ 条件判断式 ]; then 程序 fi 或者 if [ 条件判断式 ] then 程序 fi 例子: 双分支 if [ 条件判断式 ] then 程序 else 程序 fi ...
- Linux学习 -- Shell编程 -- 条件判断
按照文件类型进行判断 两种格式 test -e /root/install.log [ -e /root/install.log ] 注意空格 适合用于脚本中 echo $?可以看到结果 [ - ...
- Linux学习 -- Shell编程 -- 字符处理命令
sort排序命令 sort [选项] 文件名 -f 忽略大小m写 -n 按数值型,默认字符串型 -r 反向 -t 指定分隔符 -k n[,m] 指定字段范围,默认行尾 eg. sort -n -t & ...
随机推荐
- Android -- 桌面悬浮,QQ管家火箭实现
续上一篇博客<Android -- 桌面悬浮,仿360>,传送门:http://www.cnblogs.com/yydcdut/p/3909888.html,在此代码上继续添加实现. 比起 ...
- 【干货分享】JPager.Net MVC超好用轻量级分页控件
JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现非常简单,使用也非常简单. JPager.Net M ...
- ALinq Dynamic 使用指南——慨述(上)
一.使用 1.程序集与命名空间的引用使用 ALinq Dynamic,你需要引用ALinq.Dynamic.dll(ALinq用户)或者System.Data.Linq.Dynamic.dll (Li ...
- (六)观察者模式详解(包含观察者模式JDK的漏洞以及事件驱动模型)
作者:zuoxiaolong8810(左潇龙),转载请注明出处,特别说明:本博文来自博主原博客,为保证新博客中博文的完整性,特复制到此留存,如需转载请注明新博客地址即可. 本章我们讨论一个除前面的单例 ...
- nios II--实验7——数码管IP软件部分
软件开发 首先,在硬件工程文件夹里面新建一个software的文件夹用于放置软件部分:打开toolsàNios II 11.0 Software Build Tools for Eclipse,需要进 ...
- Ryu
What's Ryu? Ryu is a component-based software defined networking framework. Ryu provides software co ...
- android之短信拦截器
下面通过短信拦截器来介绍短信中的广播 布局文件 在布局文件中可以设置需要拦截的号码 <?xml version="1.0" encoding="utf-8" ...
- 从 MySQL+MMM 到 MariaDB+Galera Cluster : 一个高可用性系统改造
很少有事情比推出高可用性(HA)系统之后便经常看到的系统崩溃更糟糕.对于我们这个Rails运行机的团队来说,这个失效的HA系统是MySQL多主复制管理器(MMM). 我们已经找寻MMM的替代品有一段时 ...
- android wifi热点 socket通信
1.首先建立wifi热点服务器 wifi客户端连接 2.开启一个子线程循环监听某个端口,进行数据流输入输出 /* 服务器 接收数据 */ class Receiver extends Thread ...
- Jetty应用服务器的安装详解
Jetty是一个开源的Servlet容器和应用服务器,它极度轻量级.高便携性.功能强大.灵活和扩展性好,而且支持各种技术如SPDY.WebSocket.OSGi.JMX.JNDI和JAAS.Jetty ...