摘要:信号(Signal):信号是在软件层次上对中断机制的一种模拟,通过给一个进程发送信号,执行相应的处理函数。 linux通过信号来在运行在系统上的进程之间通信,也可以通过信号来控制shell脚本的运行 进程可以通过三种方式来响应一个信号: 1)忽略信号,即对信号不做任何处理,其中有两个信号不能忽略:S
阅读全文
随笔分类 - shell
摘要:信号的类别 信号 值 描述 1 SIGHUP 挂起进程 2 SIGINT 终止进程 3 SIGQUIT 停止进程 9 SIGKILL 无条件终止进程 15 SIGTERM 优雅的终止进程 17 SIGSTOP 无条件停止进程,但不是终止进程 18 SIGTSTP 停止或暂停进程,但不是终止进程 19
阅读全文
摘要:围绕以下几个问题来学习export命令: 1.什么是export命令? 2.为什么要用export命令? 3.怎么使用export命令? 1.什么是export命令? ♦ 用户登录到Linux系统后,系统将启动一个用户shell。在这个shell中,可以使用shell命令或声明变量,也可以创建并运行
阅读全文
摘要:Linux 下设置开机启动的三种简单但可行的开机启动设置方法。 方法一:修改 /etc/rc.d/rc.local 文件 /etc/rc.d/rc.local 文件会在 Linux 系统各项服务都启动完毕之后再被运行。所以你想要自己的脚本在开机后被运行的话,可以将自己脚本路径加到该文件里。 但是,首
阅读全文
摘要:示例: #! /bin/bash echo "测试写文件" cat>test<<EOF 这是一个由shell创建的文件 this is a file created by shell. we want to make a good world. EOF 其中,<<EOF 表示当遇到EOF时结束输入,
阅读全文
摘要:在Linux中,语句中的分号一般用作代码块标识 1、单行语句一般要用到分号来区分代码块,例如: if [ "$PS1" ]; then echo test is ok; fi test is ok 该脚本或命令行中,需要两个分号才为正确的语句,第一个分号是then前的分号,用于标识条件块结束,第二个
阅读全文
摘要:一、定义变量variableName="value"注意:变量名和等号之间不能有空格,这和编程语言都不一样。 同时,变量名的命名须遵循如下规则: 首个字符必须为字母(a-z,A-Z)。中间不能有空格,可以使用下划线(_)。不能使用标点符号。不能使用bash里的关键字(可用help命令查看保留关键字)
阅读全文
摘要:最近学到了shell脚本编程,觉得脚本中的不同括号有不同的用处,以及有些括号的格式也有特殊要求,下面我就总结一下各种括号的用法。 一、小括号();双小括号(()) 1、单小括号 () 1:命令替换。等同于`comm`,shell扫描一遍命令行,发现了$(comm)结构,便将$(comm)中的comm
阅读全文
摘要:先来说一下主要以下有几种方式: fork: 如果脚本有执行权限的话,path/to/foo.sh。如果没有,sh path/to/foo.sh。 exec: exec path/to/foo.sh source: source path/to/foo.sh fork fork 是最普通的, 就是直接
阅读全文
摘要:Shell 变量的作用域(Scope),就是 Shell 变量的有效范围(可以使用的范围)。在不同的作用域中,同名的变量不会相互干涉,就好像 A 班有个叫小明的同学,B 班也有个叫小明的同学,虽然他们都叫小明(对应于变量名),但是由于所在的班级(对应于作用域)不同,所以不会造成混乱。但是如果同一个班
阅读全文
摘要:Linux下一条命令或一个进程执行完成会返回一个一个状态码。 0 成功执行 非0 执行过程中出现异常或非正常退出 在Shell脚本中 最后执行的一条命令将决定整个shell脚本的状态. 此外 shell的内部命令exit也可以随时终止shell脚本的执行,返回Shell脚本的状态码 当shell脚本
阅读全文
摘要:变量 简介 变量就是程序设计语言中的一个可以变化的量,当然,可以变化的是变量的值。变量几乎所有的程序设计语言中都有定义,并且其涵义也大同小异。从本质上讲,变量就是在程序中保存用户数据的一块内存空间,而变量名就是这块内存空间的地址。在程序的执行过程中,保存数据的内存空间的内容可能会不断地发生变化,但是
阅读全文
摘要:对于初学者来说这几个意思可能只知道其中几个的意思,下面我们来看一下。 1、竖线‘|’ ,在linux中是作为管道符的,将‘|’前面命令的输出作为'|'后面的输入。举个例子 [18066609@root~]$ cat /etc/passwdroot:x:0:0:root:/root:/bin/bash
阅读全文
摘要:什么是SSH?简单说,SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995年,芬兰学者Tatu Ylon
阅读全文
摘要:在shell中常用的特殊符号罗列如下: # ; ;; . , / \\ 'string'| ! $ ${} $? $$ $* \"string\"* ** ? : ^ $# $@ `command`{} [] [[]] () (()) || && {xx,yy,zz,...}~ ~+ ~- & \\
阅读全文
摘要:tr命令主要用于删除文件中控制字符或进行字符转换。本文主要介绍tr命令的基本语法和使用实例。 tr基本语法 tr命令格式:tr [ -d ] [ -c ] [ -s ] [ 字符串1 ] [ 字符串2 ] 文件名。其中字符串1用于查询,字符串2用于处理各种转换。 选项介绍: -c 用字符串1中字符集
阅读全文
摘要:方法一:ifconfig -aifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:" 命令解释 ifconfig -a 和window下执行此命令一样道理,返回本机所有ip信息 grep
阅读全文
摘要:概述 在Linux的grep命令中如何使用or,and,not操作符呢? 其实,在grep命令中,有or和not操作符的等价选项,但是并没有grep and这种操作符。不过呢,可以使用patterns来模拟and操作的。下面会举一些例子来说明在Linux的grep命令中如何使用or,and,not。
阅读全文
摘要:在shell中如何判断一个变量是否为空判断一个脚本中的变量是否为空,我写了一个这样的shell脚本: #!/bin/sh #filename: test.sh para1= if [ ! -n $para1 ]; then echo "IS NULL" else echo "NOT NULL" fi
阅读全文
摘要:截取文件名和后缀 编写Shell脚本的过程中,经常会和文件名和文件路径打交道。如果用户输入了一个文件的全名(可能包含绝对路径和文件后缀),如何得到文件的路径名,文件名,文件后缀这些信息呢。Shell脚本拥有强大的字符串处理能力,如果把文件名当做字符串,我们不难使用cut或sed这样的工具得到我们想要
阅读全文