管道 | 特殊的重定向

前一个命令的输出作为后一个命令的输入;

管道连接的命令数没有限制;

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编程的更多相关文章

  1. Linux 下shell 编程学习脚手架

    linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-t ...

  2. Linux下Shell编程

    Linux的shell编程 1.什么是shell? 当一个用户登录Linux系统之后,系统初始化程序init就为每个用户执行一个称为shell(外壳)的程序. shell就是一个命令行解释器,它为用户 ...

  3. 【Hadoop离线基础总结】linux的shell编程

    linux的shell编程 基本了解 概述 Shell是一个用C语言编写的程序,通过shell用户可以访问操作系统内核服务,它类似于DOS下的command和后来的cmd.exe.Shell既是一种命 ...

  4. linux中shell编程

    shell编程 1 echo -e 识别\转义符 \a \b \t \n \x十六进制 \0八进制 等等 #!/bin/bash echo -e "hello world" 执行脚 ...

  5. linux下shell编程示例-获取进程id

    今天初步学习了一下linux下的shell编程,简单记录一下测试用例 1.编辑shell脚本文件如下: #!/bin/bashecho "hello bash linux"echo ...

  6. linux之shell编程基本语法

    Shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为bash Shell.Shell也是一门编程语言<解释型的编程语言>,即shell脚本<就是在用linux的s ...

  7. Linux学习——shell编程之变量

    shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...

  8. 3. Linux的shell编程

    Shell 是一个用 C 语言编写的程序, 通过 Shell 用户可以访问操作系统内核服务.它类似于 DOS 下的 command 和后来的 cmd.exe.Shell 既是一种命令语言,又是一种程序 ...

  9. Linux之shell编程的基本使用

    1.Shell shell是一个命令行解释器,它为用户提供了一个向 Linux 内核发送请求以便运行程序的系统级程序 2.shell编程打印hello world 2.1 代码部分 #!/bin/ba ...

  10. Linux学习——shell编程之正则表达式和字符处理命令

    shell编程之正则表达式 一 正则表达式 1 什么是正则表达式 正则表达式用于描述字符排列和匹配模式的一种语法规则.它主要用于字符串的模式分隔.匹配.查找及替换操作. 2 shell编程之正则表达式 ...

随机推荐

  1. Citrix XenServer

    Citrix XenServer xenserver-test cpu特性码:77fafbff-bfebfbff-00000021-2c100800 xe snapshot-list xen还原快照 ...

  2. Solidworks drwdot文件如何打开,如何制作Solidworks工程图模板

    1 直接把这个文件拖放进Solidworks窗口   2 文件-保存图纸格式,另存为模板(slddrt文件)   3 搜索"Solidworks工程图如何使用,替换图纸格式模板文件.doc& ...

  3. hdu5399Too Simple

    //给m个函数 //其相应是自变量x属于{1,2,...n} //f(x)属于{1,2...3} //给出当中一些函数,问有多少种不同的函数集合使得 //1<=i<=n f1(f2(f3. ...

  4. 【Mongodb教程 第七课 】MongoDB 查询文档

    find() 方法 要从MongoDB 查询集合数据,需要使用MongoDB 的 find() 方法. 语法 基本的find()方法语法如下 >db.COLLECTION_NAME.find() ...

  5. devres in linux driver

    写 driver 时, probe 中常常要为设备分配一些资源, 如 内存 / irq / gpio / iomap 等. 而在 probe 中失败时又要小心的释放掉这些资源. 底层驱动开发人员可能会 ...

  6. NS3网络仿真(9): 构建以太网帧

    快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 在NS3使用了一个叫Packet的类来表示一个数据帧,本节尝试用它构造一个以太网帧. 以下是一个典 ...

  7. instruction set汇总

    1 aarch64 它armv8-A架构的一种执行状态,之所以说它是一种执行状态是因为,armv8-A还有aarch32这个执行状态.aarch64是64位执行状态,aarch32是32位的执行状态. ...

  8. 深入研究java.lang.Object类

    前言:Java的类库日益庞大.所包括的类和接口也不计其数.但当中有一些非常重要的类和接口,是Java类库中的核心部分.常见的有String.Object.Class.Collection.ClassL ...

  9. Latex 1: 解决latex中遇到一个常见错误:"Improper alphabetic constant."

    1.问题: 本人是在WIN7下用texlive 2016,编辑器用的是WinEdt 10.1 ,运行如下代码: \documentclass{ctexbook} \begin{document} \t ...

  10. GitHub Pages使用入门

    1.什么是GitHub Pages GitHub Pages可以当做项目的Websites,GitHub Pages有两种最基本的用法: 作为你自己(或者组织)的网站(访问地址示例:http://us ...