1.从两个不同维度来划分,是否交互式,是否登录 2.交互式shell和非交互式shell 交互式模式:在终端上执行,shell等待你的输入,并且立即执行你提交的命令.这种模式被称作交互式是因为shell与用户进行交互.这种模式也是大多数用户非常熟悉的:登录.执行一些命令.退出.当你退出后,shell也终止了. 非交互式模式:以shell script(非交互)方式执行.在这种模式 下,shell不与你进行交互,而是读取存放在文件中的命令,并且执行它们.当它读到文件的结尾EOF,shell也就终止…
1.以登录式shell切换用户 su - username 登录式shell读取配置文件及其顺序: /etc/profile /etc/profile.d/*.sh ~/.bash_profile ~/.bashrc /etc/bashrc 2.以非登陆式shell切换用户 su username 非登陆式shell读取配置文件及其顺序: ~/.bashrc /etc/bashrc /etc/profile.d/*.sh 附:bash配置文件 1.全局配置文件 /etc/profile /etc…
shell学习笔记 .查看/etc/shells,看看有几个可用的Shell . 曾经用过的命令存在.bash_history中,但是~/.bash_history记录的是前一次登录前记录的所有指令,成功登出后,才存到 .bash_history中. .man bash查看bash说明文件. .echo $ .变量的设定中,单引号与双引号的不同:双引号仍然可以保留变量的内容,单引号内只能是一般字符,不会有特殊符号. .反单引号`符号:在一串指令中,在`之内的指令都会被先执行,而其执行出来的结果将…
Shell学习之环境变量配置文件 目录 环境变量配置文件简介 环境变量配置文件作用 其他配置文件和登录信息 环境变量配置文件简介 环境变量配置文件简介 环境变量配置文件中主要是定义对系统操作环境生效的系统默认环境变量,比如PATH.HISTSZE.PS1.HOSTNAME等默认环境变量. 让配置文件直接生效,不用重新登陆 source命令 source配置文件 .配置文件 有哪些配置文件 /etc/profile /etc/profile.d/*.sh ~/.bash_profile ~/.ba…
[Bash Shell] Shell学习笔记 http://www.cnblogs.com/maybe2030/p/5022595.html  阅读目录 编译型语言 解释型语言 5.1 作为可执行程序 5.2 作为解释器参数 6.1 定义变量 6.2 使用变量 6.3 重新定义变量 6.4 只读变量 6.5 删除变量 6.6 变量类型 命令行参数 ∗和∗和@ 的区别 退出状态 命令替换 变量替换 9.1 算术运算符 9.2 关系运算符 9.3 布尔运算符 9.4 字符串运算符 9.5 文件测试运…
由于项目要招聘需要有经验shell开发人员(awk编程),而作为技术面试官(暂时)的我对shell编程不太熟:当然以前也写过一些shell脚本来满足项目的需求—备份环境,数据库(逻辑).假如只是针对awk编程的,那我绝对可以问倒他,呵呵….所以我最近学习了shell编程.入门还不是很深,但是还是有点心得的.以下是本人的一些心得:大伙们觉得好,就拍个砖,不好也拿起你们的手鼓个掌…当然文中有什么错误,遗漏的也请指正我,大伙们对shell的总结也可以在下面回复. 1.   shell之read命令 1…
SHELL学习笔记----IF条件判断,判断条件 前言: 无论什么编程语言都离不开条件判断.SHELL也不例外.  if list then           do something here       elif list then           do another thing here       else          do something else here fi  EX1: #!/bin/bash if [ `uname -m` == "x86_64" ]…
在shell中有3种变量:系统变量,环境变量和用户变量,其中系统变量在对参数判断和命令返回值判断时会使用,环境变量主要是在程序运行时需要设置,用户变量在编程过程中使用量最多. 1 系统变量  变量名      含义  $#   命令行参数的个数  $n  $1表示第一个参数,$2表示第二个参数,以此类推  $0  当前程序的名称  $?  前一个命令或许或函数的返回码  $*  以“参数1 参数2 ...”形式保存所有参数  $@  以“参数1”“参数2”...形式保存所有参数  $$  本程序…
Shell学习之结合正则表达式与通配符的使用 目录 通配符 正则表达式与通配符 通配符 通配符的使用 正则表达式 正则表达式 正则表达式的使用 通配符 正则表达式与通配符 正则表达式用来在文件中匹配符合条件的字符串,正则是包含匹配.grep.awk.sed等命令可以支持正则表达式. 通配符用来匹配符合条件的文件名,通配符是完全匹配.ls.find.cp这些命令不支持正则表达式,所以只能使用shell自己的通配符来就行匹配. 通配符 符号 作用 * 匹配任何字符串/文本,包括空字符串:*代表任意字…
1.shell脚本中函数使用 函数定义在前,调用在后,顺序反了就没有效果了.函数调用为:函数名 参数列表 函数内部通过以下变量访问函数的参数:shell脚本函数中: $0: 这个脚本的名字 $n: 这个脚本传入的参数值,n取1..9 $*: 这个脚本所有参数 $#: 这个脚本参数个数 $$: 这个脚本运行时的PID $!: 执行上一个背景指令的PID $?: 执行上一个指令的返回值 举例说:脚本名称叫test.sh 入参三个: 1 2 3运行test.sh 1 2 3后 $*为"1 2 3&qu…