shell 编程笔记】的更多相关文章

Shell编程笔记与Windows下熟悉的批处理类似,也可以将一些重复性的命令操作写成一个脚本方便处理.   修改别人的脚本,运行后遇到个问题 setenv: command not found 查证后,原来setenv是csh的命令,我用bash去执行脚本自然就出错了.在脚本的首行加上一句#!/bin/csh,调用csh来运行脚本. 记录几个命令: 查看系统支持的所有shell:more /etc/shells 查看当前的shell类型:echo $SHELL 查看或修改某个用户的默认shel…
shell编程: 编译器,解释器 编程语言:机器语言.汇编语言.高级语言 静态语言:编译型语言    强类型(变量)    事先转换成可执行格式    C.C++.JAVA.C#            动态语言:解释型语言, on the fly    弱类型    边解释边执行    PHP.SHELL.python.perl 面向过程:Shell, C面向对象: JAVA, Python, perl, C++ 变量:内存空间,命名 内存:编址的存储单元 进程:1+100:1+10000001…
一.特殊变量($0.$1.$2. $?. $# .$@. $*) shell编程中有一些特殊的变量可以使用.这些变量在脚本中可以作为全局变量来使用. 名称 说明 $0 脚本名称 $1-9 脚本执行时的参数1到参数9 $? 脚本的返回值 $# 脚本执行时,输入的参数的个数 $@ 输入的参数的具体内容(将输入的参数作为一个多个对象,即是所有参数的一个列表) $* 输入的参数的具体内容(将输入的参数作为一个单词) $@与$*的区别: $@与$*都可以使用一个变量来来表示所有的参数内容,但这两个变量之间…
1.变量 a.需要给变量赋值时,可以这么写: b.要取用一个变量的值,只需在变量名前面加一个$ ( 注意: 给变量赋值的时候,不能在"="两边留空格 ) c.然后执行 chmod +x first 使其可执行,最后输入 ./文件名 执行该脚本. #!/bin/bash # 对变量赋值: a="hello world" #等号两边均不能有空格存在 # 打印变量a的值: echo "A is:" $a 如果变量与字符串混合,则按此方法 num=2 e…
Shell控制流程结构 本章内容有:   退出状态   While.for和until loops循环   If then else语句   脚本中动作   菜单 条件控制语句 If then else语句if语句测试条件,测试条件返回真(0)或假(1)后,可相应执行一系列语句.if语句结构对错误检查非常有用.其格式为: if 条件1then 命令1elif 条件2then 命令2else 命令3fi 让我们来具体讲解if语句的各部分功能.  If 条件1 如果条件1为真 Then 那么 命令1…
#! /bin/sh 寻找shell解释器 /bin/sh  是一个路径 #! /usr/bin/python 仅仅是寻找一个python的解释器 执行linux程序的方法: 使得文件具有可执行的权限 直接执行 调用解释器来运行 使用source来运行 shell 存在着内部命令 和外部命令 内建命令就是shell 程序本身的命令 运行内部命令的时候 不包含进程的创建和消亡 可是在运行外部命令的时候,存在着进程是创建和消亡.以此同一时候 外部命令运行的步骤例如以下:. 创建一个子进程 查找路径…
http://xiaosu.blog.51cto.com/2914416/531247 Shell函数类似于Shell脚本,里面存放了一系列的指令,不过Shell的函数存在于内存,而不是硬盘文件,所以速度很快,另外,Shell还能对函数进行预处理,所以函数的启动比脚本更快. 1.  函数定义 function 函数名() { 语句 [return] } 关键字function表示定义一个函数,可以省略,其后是函数名,有时函数名后可以跟一个括号, 符号“{”表示函数执行命令的入口,该符号也可以在函…
参考文章:1 http://blog.csdn.net/wuwenxiang91322/article/details/9259877   通过chmod改变文件权限 补充知识: 1Linux文件的三种身份和四种权限,三种身份分别为: u:文件的拥有者 g:文件所属的群组 o:其他用户 对于每个身份,又有四种权限,分别为: r:读取文件的权限(read) w:写入文件的权限(write) x:执行的权限(execute) s:特殊权限 2 Linux中有两种表示文件权限的方式,分别为数字以及符号…
and 命令 if  [   A  -a   B ] then else fi while [ ] do done set command set  these are parameters $1 set strings str="A is a" echo "$str" a=30 b=15echo `expr $a + $b`echo `expr $a - $b`echo `expr $a \* $b`echo `expr $a / $b`echo `expr $a…
重定向和管道  输出重定向:把在终端输出的内容保存到文件上  输入重定向:通过文件的格式输入内容到终端  管道:把上一条命令的输出作为下一条命令的输入,如同管道一样,所有命令同时进行,同时处理数据,不产生临时文件  每个程序三个句柄:标准输入 标准输出 标准错误    标准输入  缩写 stdin        序号 0 读数据  终端连接(默认)  标准输出  缩写 stdout      序号 1 显示程序输出 终端显示设备  标准错误  缩写 stderr      序号 2  显示错误信…
LinuxShell编程学习笔记目录附笔记资源下载 目录(?)[-] 写在前面 第一部分 Shell基础编程 第二部分 Linux Shell高级编程技巧 资源下载 写在前面 最近花了些时间学习Shell,视频学习过程中做了笔记,留给大家参考. 第一部分 Shell基础编程 第一部分 Shell基础编程——第一章 Shell简介 http://blog.csdn.net/wentasy/article/details/8702846 第一部分 Shell基础编程——第二章变量和运算符 http:…
shell编程中可以实现for循环遍历 先来写一个最简单的吧,循环输出从1到10,脚本内容为: #! /bin/sh for i in {1..10} do echo $i done 上面的代码从1到20循环输出,使用for关键字进行循环,循环体以do开始,以done结束. 再看第二个例子,这个例子循环遍历一个集合: #! /bin/sh list="a b c d" for item in $list do echo $item done 上面的代码会把集合循环遍历输出,分别输出a.…
目前在学习Shell编程,我会把我的学习笔记记录在这里.大神可以直接略过~ 嗯,第一段代码,肯定是要输出Hello World了~ 以下蓝色字体的内容为linux命令,红色字体的内容为输出的内容: # cd /opt # mkdir scripts # vim script01.sh 开始编写script01.sh的脚本,脚本内容为: #! /bin/sh echo "hello world!" # chmod +x script01.sh # ./script01.sh hello…
<Linux命令.编辑器与shell编程>第三版 学习笔记---001 Linux命令.编辑器与shell编程 Shell准备 1.识别Shell类型 echo  $0 echo $BASH echo $SHELL 上边三个命令结果都是: /bin/bash 2.终端常用操作 a.删除单个字符 c+h或退格键 b.删除单个单词 c+w c.删除单个行 c+u d.重复编辑命令行 arrowUp或arrowDown e.中断命令执行c+C 3.切换为root用户 a.su命令后,输入root密码…
本文为本人学习笔记,如有转载请注明出处,谢谢 一.Bourne Shell 有如下四种变量: 用户自定义变量 位置变量,即命令行参数 预定义变量 环境变量 二.位置变量 $ 与键入的命令行一样,包含脚本文件名 $, $, ……. $ 分别包含第一个到第九个命令行参数 $# 包含命令行参数的个数 $@ 包含所有命令行参数: “$, $, ……. $”会一个一个拆分解析 $? 包含前一个命令的退出状态 $* 包含所有命令行参数: “$, $, ……. $”所有包括在一起解析的 $$ 包含正在执行进程…
1. 正则表达式 (1) 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配.grep.awk.sed等命令可以支持正则表达式:通配符用来匹配符合条件的文件名,通配符是完全匹配.ls.find.cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来进行匹配了. (2) 基础正则表达式 元字符 作用 * 前一个字符匹配0次或任意多次 . 匹配除了换行符外任意一个字符 ^ 匹配行首,如:^hello会匹配以hello开头的行 $ 匹配行尾,如:hello$会匹配以hello结尾的…
Shell编程基础入门     1.shell格式:例 shell脚本开发习惯 1.指定解释器 #!/bin/bash 2.脚本开头加版权等信息如:#DATE:时间,#author(作者)#mail:邮箱,#function(功能),#Version:版本 3.脚本注释(用英文注释 中文可能乱码.) 4.脚本以.sh结尾 不是必须的 5.成对的符号,一次性写全,退格补内容.特殊符号[ xxxx ] 中括号中间内容两边都有空格. 6 .代码有条理性(通过缩进). 2.执行:1.sh xxx.sh…
导读 关于shell编程基础的学习,网上有很多资源,如果在校图书馆应该也有一些教程,所以这里对于零碎的基础不做详细记录,而只是对一些常用的概念.命令与操作做一个简要的记录,以备方便查找. (本文所有语句的测试均在 Ubuntu 16.04 LTS 上进行) 目录 终端.shell 和 bash 常用的基础命令 Linux Shell 的变量 编程语法 与 文本处理 正则表达式 进程相关 1.终端.shell 和 bash 详细的区别与联系:点这里 一个最简单的 “Hello world” 显示…
最近不断在接触Linux操作系统,对它一个终端走天下的特性感到十分新奇和伟大.同时也被各种命令折磨的死去活来...公司的一个老同事给我讲,在公司的极品geek宅都是只用一个黑黑的框完成一切的.结果我一下就想到了[\邪恶的笑] 好吧,不扯了,为了能够在公司的美女同事面前秀一下,我决心从Shell脚本开始,嘻嘻 1.Shell 简述 Shell其实是一种具备特殊功能的程序, 他提供了用户与内核进行交互操作的接口,Shell接受用户的命令并将其发送到内核进行执行.内核是Linux系统的心脏,在加电运行…
第一章    文件安全与权限 文件访问方式:读,写,执行.     针对用户:文件属主,同组用户,其它用户.     文件权限位最前面的字符代表文件类型,常用的如         d 目录:l 符号链接:p 命名管道文件:- 普通文件 ...     用chmod改变文件权限位的设置:         chmod [who] operator [permission] filename         who: u 属主:g 同组:o 其它:         operator:+ 增加权限:-…
Shell编程-变量及表达运算 [内容简列] 1. shell变量简介 2. 定义变量 3. 使用变量 4. 修改变量的值 5. 单引号和双引号的区别 6. 将命令的结果赋值给变量 7. 删除变量 8. 变量类型 9. 特殊变量列表 10. 退出状态 11. shell表达式与运算符 11.1 条件表达式 11.2 整数比较符 11.3 字符串比较符 11.4 文件测试 11.5 布尔运算符 11.6 逻辑判断符 11.7 整数运算 11.8 其他运算工具 11.9 shell括号用途总结 [一…
Shell 编程 [内容简列]: 1.shell简介 2. shell分类 3. 查看shell 4. 第一个shell脚本 5. shell编程常用命令 5.1 grep 5.2 cut 5.3 sort 5.4 uniq 5.5 seq 5.6 tr [导引]: 什么是脚本? 脚本简单地说就是一条条的文字命令(一些指令的堆积),这些文字命令是可以看到的(如可以用记事本打开查看.编辑). 常见的脚本:JavaScript(JS,前端),VBScript, ASP,JSP,PHP(后端),SQL…
编程语言中都有条件判断,shell编程也不例外,下面我们来看一下shell中应该怎么使用if条件判断 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts # vim script07.sh 开始编写script07.sh的脚本,脚本内容为: #! /bin/sh if [ 3 -gt 2 ] then echo "3>2" fi if [ 3 -lt 2 ] then echo "3<2" else ech…
这一篇不是讲shell编程的,专门讲cat命令.shell编程书用到了这个cat命令,顺便说一下cat命令. cat命令有多种用法,我一一来列举(以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容): 1.查看文件内容 # cat file1.txt helloworld 2.把一个文件的内容复制到另一个文件,如果另一个文件不存在,则自动创建该文件 # cat file1.txt > file2.txt # cat file2.txt helloworld 使用-n参数会在复制的新文件…
在执行Shell脚本的时候,可以在执行时带上参数,相当于传递参数给脚本,下面我们看一下怎么使用这个参数 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts # vim script05.sh 开始编写script05.sh的脚本,脚本内容为: #! /bin/sh echo "$# 个参数" echo "参数内容:$@" echo "第一个参数内容:$1" ps -ef|grep $1 # chmo…
第一章 第一个Shell程序 以 #!解析器名称 开头,表示选择哪个解释器解释shell脚本 source命令 export命令 env命令 unset命令 第二章 shell编程基础 函数传递 标准输入输出符号 第三章 编程的基本元素 获取命令执行返回值 $((数值计算)) 获取数值计算结果 如:$((100 - 2*100/400)) 替换运算符 模式匹配运算符 shift命令可以截取参数列表最左端的一个参数 type命令判断被执行命令的来源(别名.关键字.函数.内置命令.外部命令) tes…
特殊变量($0.$1.$2. $?. $# .$@. $*) shell编程中有一些特殊的变量可以使用.这些变量在脚本中可以作为全局变量来使用. 名称 说明 $0 脚本名称 $1-9 脚本执行时的参数1到参数9 $? 脚本的返回值 $# 脚本执行时,输入的参数的个数 $@ 输入的参数的具体内容(将输入的参数作为一个多个对象,即是所有参数的一个列表) $* 输入的参数的具体内容(将输入的参数作为一个单词) $@与$*的区别: $@与$*都可以使用一个变量来来表示所有的参数内容,但这两个变量之间有一…
在shell编程中,大多数处理的都是文本文件.对文本文件进行处理除了使用交互式文本编辑器(vi[m],gedit......)也可以使用另外一类:流编辑器. 流编辑器:使用预定义的编辑规则来对文本进行处理.如sed,gawk 本文将会记录学习的sed的一些命令,以及一些正则联合使用来对文本进行操作案例. 第一部分:sed简述 1.1 sed的使用方法 sed编辑器是以行为单位来对文本处理的编辑器.它的使用方法有两种: sed [选项] 命令 目标文本 sed [选项] -f 脚本文件 目标文件…
转载自: http://www.cnblogs.com/stephen-liu74/archive/2011/11/04/2228133.html 五.BASH SHELL编程: 1.    初始化顺序: /etc/profile    ( ~/.bash_profile | ~/.bash_login | ~/.profile )    ~/.bashrc 2.    set -o allexport 当前shell变量对其所有子shell都有效.       set +o allexport…
Shell是什么? Shell 是一个应用程序,它连接了用户和 Linux 内核,让用户能够更加高效.安全.低成本地使用 Linux 内核,这就是 Shell 的本质. Shell 本身并不是内核的一部分,它只是站在内核的基础上编写的一个应用程序,它和 QQ.迅雷.Firefox 等其它软件没有什么区别.然而 Shell 也有着它的特殊性,就是开机立马启动,并呈现在用户面前:用户通过 Shell 来使用 Linux,不启动 Shell 的话,用户就没办法使用 Linux. Shell 是如何连接…