linux学习第二周;shell编程

pstree -p #显示进程编号(树状)

echo $$ #显示当前shell进程编号

脚本的基本结构 :

#!SHEBANG (表明使用什么shell打开文件,一般使用bash)

CONFIGURATION_VARIABLES #定义变量

FUNCTION_DEFINITIONS#定义函数

MAIN_CODE #主要执行命令

检测脚本中的语法错误

bash -n /path/to/some_script

调试执行

bash -x /path/to/some_script

变量命名法则:

1、不能使程序中的保留字:例如if, for

2、只能使用数字、字母及下划线,且不能以数字开头

3、见名知义

4、统一命名规则:驼峰命名法 (HostName或hostName)

variables=`命令`#将命令执行结果赋给变量,需要用反向单引号``或$()

export 变量名="定义变量" # 变量名前加export,即将变量定义为环境变量,可以传给子进程

位置变量:$1 $2 $3等

特殊变量:$* 、[email protected]、 $#(显示参数共几个)

set #显示已定义的所有变量

unset  name #删除变量

测试命令:当语句中有正则表达式时用[[  ]],一般用text或[  ]

test EXPRESSION

[ EXPRESSION ]

[[ EXPRESSION ]]

read -p "Enter a content : " variablesname #将输入的内容付给一个或多个变量

原文地址:https://www.cnblogs.com/byy18/p/8591697.html

时间: 2024-10-05 02:56:53

linux学习第二周;shell编程的相关文章

Linux学习笔记(17) Shell编程之基础

1. 正则表达式 (1) 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配.grep.awk.sed等命令可以支持正则表达式:通配符用来匹配符合条件的文件名,通配符是完全匹配.ls.find.cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来进行匹配了. (2) 基础正则表达式 元字符 作用 * 前一个字符匹配0次或任意多次 . 匹配除了换行符外任意一个字符 ^ 匹配行首,如:^hello会匹配以hello开头的行 $ 匹配行尾,如:hello$会匹配以hello结尾的

Linux学习之路-Shell编程

Shell的编程 Bash是用得最广泛的shell,是大多数Linux 系统的缺省 shell.Bourne Again shell (bash), 正如它的名字所暗示的,是Bourne shell 的扩展.bash 与Bourne shell 完全向后兼容,并且在 Bourne shell 的基础上增加和增强了很多特性.bash 也包含了很多 C 和 Korn shell 里的优点.bash 有很灵活和强大的编程接口,同时又有很友好的用户界面. 下面具体来介绍bash. Bash语法基本介绍

Linux学习笔记之shell编程基础

编程语言: 机器语言.汇编语言 .高级语言 静态语言:编译性语言 ,特点: 强类型(变量在使用前,必须先声明,甚至还需要初始化):事先转换成可执行文件.包含语言如: C .C++.JAVA.C# 动态语言:解释性语言 ,特点: 弱类型(变量用时声明,甚至不区分类型):边解释边执行.包含语言如: ASP.ASP.NET .PHP .SHELL .Python .PERL 编程能力: 面向过程 :Shell.C 面向对象:Python .Perl .JAVA .C++ Bash :变量 类型 环境变

Linux学习笔记(18) Shell编程之流程控制

1. if语句 (1) 单分支if条件语句 格式为: # 注意条件判断式两端的空格if [ 条件判断式 ];then 程序员 fi 或者 if[ 条件判断式 ] then 程序 fi 例:判断分区使用率 #!/bin/bash #获取根分区的使用率 rate=$(df -h | grep "/dev/sda5" | awk '{print $5}' | cut -d "%" -f 1) if [ $rate -ge 10 ] then echo "/dev

Linux学习第二周作业

1.Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示. Linux上的文件管理类命令: cp命令:复制文件或目录 单源复制:cp [OPTION]...[-T] SRC DEST 多源复制:cp [OPTION]...SRC...DIRECTORY cp [OPTION]...[-T] SRC DEST 其常用选项为:-i 交互式,提醒目标存在,是否覆盖. -r,-R:递归复制源目录下所有目录与文件 -a 归档复制,保留所有的文件的元数据,相当于-dR --preserv=

Linux学习篇之shell编程基础

设置环境变量: ① export 变量名=变量值   #设置环境变量 ② 变量名=变量值    #设置环境变量 export 变量名 set   #显示当前shell所有变量 env   #查看环境变量 unset 变量名  #删除变量 常用环境变量: PATH变量:系统查找命令的路径 echo $PATH    #查看PATH的值 PATH="$PATH":/root/sh   #将/root/sh目录加到PATH变量中(临时生效) PS1变量:命令提示符变量 当前语系查询: loc

linux学习第二周;rpm包管理;yum管理;定制yum库

rpm安装(无法解决包之间依赖性问题): rpm -ivh # 安装包(需要给出包绝对路径) rpm -V #用作包校验,包无变化则不执行操作,包被改变则显示包改变的属性 rpm -e # 卸载包 rpm -qi rpm -ql rpm -qf rpm -K yum安装(可解决包之间依赖性问题): 定制yum库: 1.先移走/etc/yum.repos.d/文件里默认的互联网yum源 2.cd  /etc/yum.repos.d/ 3.vim  base.repo #后缀为.repo,名字随便起

Linux学习8之Shell编程--基础正则表达式

1. 正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配的.grep.awk.sed等命令可以支持正则表达式. 通配符是用来匹配符合条件的文件名,通配符是完全匹配的.ls.find.cp等这些命令不支持正则表达式,所有只能使用Shell自己的通配符来进行匹配. 2. 基础正则表达式 原文地址:https://www.cnblogs.com/anchun7080/p/10311257.html

linux学习第二周;vim文本编辑器

扩展模式下: r file绝对路径  # 将file文件内容写入当前光标下一行 w filename  # 将当前vim打开的文件当前内容写入到filename中(新建文件filename,将内容写入) w!file1  # 强制将vim打开的文件当前内容写入到file1中,即覆盖file1中原来的内容(file1已存在) !command  # 临时执行command命令(该命令不能是别名) r!command  # 将command执行结果写入当前光标下面(该命令不能是别名) 原文地址:ht