linux的SHELL编程
管道 | 特殊的重定向
前一个命令的输出作为后一个命令的输入;
管道连接的命令数没有限制;
who|wc−l统计用户数ps |sort|more 按序显示当前进程名
字符:具有特定作用的特殊字符
,<,>>,<< 重定向
| 符号 | 功能 |
|---|---|
| > | 输出重定向 |
> |
输出重定向并追加到文件; |
| < | 输入重定向; |
| << | 输入重定向并追加到文件; |
” 字符串定界符
字符串一般放在一对双引号中间,防止变量
被空格分开,同时又允许$扩展
通配符
| 符号 | 功能 |
|---|---|
| * | 匹配零个或多个字符 |
| ? | 匹配任意单个字符 |
| […] | 匹配方括号内包含任何一个字符 |
| [^…] | 匹配不包含在方括号内的任何一个字符 |
| {s1,s2,…,sn } | 匹配集合中任意一个字符串 |
命令替换
command , $(command):替换为command的输出
$echo the date is `date`
the date is 2017年 12月 13日 星期三 21:26:35 CST
$echo there are$(who|wc -l)users on the system
there are1users on the system
命令序列和组合命令
| 符号 | 功能 |
|---|---|
| ; | 组成命令序列 |
| (…..) | 组合命令 |
$date;pwd;ls
$date>date.txt;ls;pwd>pwd.txt
(date;ls;pwd)>out.txt
条件执行序列
| 符号 | 功能 |
|---|---|
| 或 | 如果前一个命令执行失败,执行下一个命令 |
| && | 如果前一个命令执行成功,执行下一个命令 |
(或代表 ||)
& 后台运行
| 符号 | 功能 |
|---|---|
| command & | 后台运行,你关掉终端会停止运行 |
| nohup command & | 后台运行,你关掉终端也会继续运行 |
shell脚本
一个shell脚本可以包含:
(1)命令
(2)位置参数
(3)变量及表达式
(4)结构控制语句
(5)函数
(6)其他shell脚本
Shell脚本常用命令
| 符号 | 功能 |
|---|---|
| break | 跳出一层循环 |
| : | 空命令 |
| continue | 跳出一次循环 |
| . | 在当前shell中执行命令 |
| echo | 输出字符串(带换行符) |
| eval | 对参数求值 |
| exit n | 以退出码结束脚本运行(0表示运行成功) |
| export | 声明环境变量 |
| printf | 输出字符串(可指定格式) |
| $((…)) | 表达式求值 |
| return | 函数返回(默认返回最后一条命令的退出码) |
| set | 为shell设置参数变量 |
| shift | 除了$0的所有参数变量左移一位 |
| find | 搜索文件 |
| grep | 过滤字符串 |
正则表达式
如何
linux的SHELL编程的更多相关文章
- Linux 下shell 编程学习脚手架
linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...
- Linux下Shell编程
Linux的shell编程 1.什么是shell? 当一个用户登录Linux系统之后,系统初始化程序init就为每个用户执行一个称为shell(外壳)的程序. shell就是一个命令行解释器,它为用户 ...
- 【Hadoop离线基础总结】linux的shell编程
linux的shell编程 基本了解 概述 Shell是一个用C语言编写的程序,通过shell用户可以访问操作系统内核服务,它类似于DOS下的command和后来的cmd.exe.Shell既是一种命 ...
- linux中shell编程
shell编程 1 echo -e 识别\转义符 \a \b \t \n \x十六进制 \0八进制 等等 #!/bin/bash echo -e "hello world" 执行脚 ...
- linux下shell编程示例-获取进程id
今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo ...
- linux之shell编程基本语法
Shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为bash Shell.Shell也是一门编程语言<解释型的编程语言>,即shell脚本<就是在用linux的s ...
- Linux学习——shell编程之变量
shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...
- 3. Linux的shell编程
Shell 是一个用 C 语言编写的程序, 通过 Shell 用户可以访问操作系统内核服务.它类似于 DOS 下的 command 和后来的 cmd.exe.Shell 既是一种命令语言,又是一种程序 ...
- Linux之shell编程的基本使用
1.Shell shell是一个命令行解释器,它为用户提供了一个向 Linux 内核发送请求以便运行程序的系统级程序 2.shell编程打印hello world 2.1 代码部分 #!/bin/ba ...
- Linux学习——shell编程之正则表达式和字符处理命令
shell编程之正则表达式 一 正则表达式 1 什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分隔.匹配.查找及替换操作. 2 shell编程之正则表达式 ...
随机推荐
- 重载OverLoad。隐藏new
<1> using System; using System.Collections.Generic; using System.Linq; using System.Text; name ...
- gbk转utf-8 iconv 编码转换
linux以下有时候 字符须要进行编码转换(爬虫将gbk转为utf-8编码...).一般能够选择iconv函数. 终端以下 输入 man 3 iconv 得到 iconv函数的用法. 个人看习惯了 ...
- MongoDB中对象反序列化的一个小问题
今天在mongoDB存取对象数据的时候,碰到一个小问题:对象的某一个字段类型是抽象类或者接口.在存入的时候没有问题.可是在读取的时候,因为没有详细类的信息,无法完毕对象的又一次构建.就会报错: Can ...
- WHU-1551-Pairs(莫队算法+分块实现)
Description Give you a sequence consisted of n numbers. You are required to answer how many pairs of ...
- Servlet访问Javabean并传结果给jsp
1.先建立包名: 2.建立实体类 参考二维表,考虑各个字段名字.类型 在entity包里面建立一个类,代码如下: public class House { private String id; pri ...
- 【视频】零基础学Android开发:蓝牙聊天室APP(三)
零基础学Android开发:蓝牙聊天室APP第三讲 3.1 ImageView.ImageButton控件具体解释 3.2 GridView控件具体解释 3.3 SimpleAdapter适配器具体解 ...
- UC技术博客开放通知
国内知名浏览器UC开放技术博客( http://tech.uc.cn/),技术博客所涵盖技术点有: Hadoop Linux MySQL 前端与client技术 图像处理 开发语言和框架 数据存储 数 ...
- 2016/2/25 onchange 应用
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- C++ pair(对组)用法(转)
类模板:template <class T1, class T2> struct pair 参数:T1是第一个值的数据类型,T2是第二个值的数据类型. 功能:pair将一对值组合成一个值, ...
- 并不对劲的bzoj3932: [CQOI2015]任务查询系统
传送门-> 离线操作听上去很简单,遗憾的是它强制在线. 每个时刻可以看成可持久化线段树中的一个版本,而每一个版本的线段树维护的是值某一段区间且在这个版本对应的时刻出现的数之和. 会发现同一时刻可 ...