笔记5——shell基础
来源:互联网 发布:淘宝网男运动套装 编辑:程序博客网 时间:2024/06/14 01:46
shell简介
命令解释器 shell,是用户和Linux内核的交互界面,且shell可以直接调用Linux系统命令。shell主要有Bourne shell和C shell两种语法类型,Bourne shell包括sh、ksh、bash、zsh,C shell包括csh、tcsh,两种语法不兼容。Linux的标准语法是bash。
脚本执行方式
1) 赋予文件执行权限
$ chmod 755 filename
$ ./filename
2) 通过bash调用执行脚本
$ bash filename
bash基本功能
命令别名————
1) 设定命令别名
语法:alias 别名='原命令'
2) 查看命令别名
语法:alias
3) 取消命令别名
语法:unalias 别名
历史命令————
1) 查询执行过的命令
语法:history 选项 历史命令保存文件
选项:n 显示最近n条命令
-c 清空历史命令
-w 将缓存内容写入命令保存文件
命令补全————
[Tab]键可在命令与文件输入时自动补全名称
常用快捷键————
快捷键作用[Ctrl] + A光标移至命令行开头[Ctrl] + E光标移至命令行结尾[Ctrl] + L清屏[Ctrl] + C强制终止当前命令[Ctrl] + D退出当前终端[Ctrl] + U删除或剪切光标前面的命令[Ctrl] + K删除或剪切光标后面的命令[Ctrl] + Y粘贴命令[Ctrl] + R在历史命令中搜索内容[Ctrl] + Z暂停执行命令,并放入后台[Ctrl] + S暂停屏幕输出[Ctrl] + Q恢复屏幕输出
重定向输入输出————
1) 标准输入输出
名称代码符号作用standard input(stdin)0<或<<将文件内容或命令行数据作为输入内容standard output(stdout)1>或>>以覆盖或追加的方式将正确的数据输出到指定的文件或设备standard error output(stderr)22>或2>>以覆盖或追加的方式将错误的数据输出到指定的文件或设备
2) stdout和stderr同时保存
以覆盖的方式保存到同一文件
语法1:命令>filename 2>&1
语法2:命令 &> filename
以追加的方式保存到同一文件
语法1:命令>>filename 2>&1
语法2:命令 &>> filename
stdout保存到file1,stderr保存到file2
语法:命令>>file1 2>>file2
3) stdin实例
实例1
$ wc < filename
实例2(内联输入重定向<<)
$ wc << EOF
> string1
> string2
>EOF
详解:内联重定向将命令行数据作为输入重定向数据,指定任一自定义文本标记划分输入数据的开始和结束。
多命令顺序执行————
命令格式说明cmd1 ; cmd2多命令顺序执行,不考虑命令相关性cmd1 && cmd2若cmd1执行结果正确($?=0),执行cmd2
若cmd1执行结果错误($?!=0),不执行cmd2cmd1 || cmd2若cmd1执行结果正确($?=0),不执行cmd2
若cmd1执行结果错误($?!=0),执行cmd2
实例:ls 文件 && echo "exist" || echo "not exist"
管道命令(pipe)————
作用:cmd1的正确输出作为cmd2的操作对象
语法:cmd1 | cmd2
通配符————
符号意义?代表任一字符*代表0个或多个任意字符[ ]匹配[ ]中任一字符[ - ]匹配[ - ]范围中任一字符[ ^ ]代表非[ ]中任一字符
Bash的变量
环境变量————
bash中的环境变量用来存储shell会话和系统操作环境的相关数据,这些数据用来识别用户账户、系统、shell特性及用户需要存储的信息。很多脚本和程序通过环境变量访问系统信息、存储临时数据和配置信息。环境变量分为两类:
1) 局部环境变量
作用范围:只在当前shell生效
查看所有环境变量语法:set
设置局部环境变量:变量名=变量值
删除环境变量:unset 变量名
查看单个环境变量:echo $变量名
2) 全局环境变量
作用范围:当前shell和此shell的所有子shell生效
查看全局变量语法:printenv
设置全局变量语法:export 变量名=变量值
备注:环境变量、等号和值之间没有空格
用户自定义变量————
shell允许用户自定义变量。变量名称可以由字母、下划线和数字组成,不能以数字开头。
变量定义语法:变量名=变量值
变量值的使用语法:$变量名
预定义变量————
预定义变量是bash中系统已定义的变量,变量名不能更改,作用固定,可修改变量值。
预定义变量说明$?返回命令执行结果,正确执行返回0,执行错误返回非0$$当前进程的进程号(PID)$!最后一个后台运行进程的进程号(PID)
位置参数变量————
位置参数变量是预定义参数中的一种,主要用来向脚本文件传递参数或数据,变量名不能更改,作用固定,可修改变量值。
位置参数变量说明$n$0表示命令本身,10之后的参数需用${ }表示$*代表所有参数,且为一个整体$@代表所有参数,且区分每个参数$#代表参数个数Bash运算
方法1
运用declare声明变量类型
语法:declare +/- 选项 变量名
选项:- 给变量设定类型属性
+ 取消变量的类型属性
-i 将变量声明为整型
-x 将变量声明为环境变量
-p 显示指定变量的声明类型
方法2
expr数值运算工具
语法:变量=$(expr operation)
备注:运算符左右需加空格
方法3
使用方括号或双括号
$[operation]或$((operation))
- 笔记5——shell基础
- 初学shell笔记——基础篇
- 自学笔记——shell(基础)
- shell学习笔记(一)——shell入门基础
- 【Linux学习笔记】Shell 基础(1) — Shell简介
- ubuntu学习笔记——shell基础应用(1)
- shell学习笔记1——基础篇
- shell——基础
- 基础shell编程 笔记
- shell编程笔记-基础
- Shell编程基础笔记
- shell基础笔记
- shell基础笔记
- shell编程基础笔记
- shell脚本学习笔记(一)—— shell基础及sed
- 【Linux学习笔记】Shell 基础(3) — Shell流程控制语句
- Linux Shell 基础学习笔记
- shell最基础的笔记
- C代码:一阶二阶多项式曲线拟合
- hdu 2036 改革春风吹满地
- 模拟面试总结
- easyui_Datagrid 数据网格 loadData
- 1010. 一元多项式求导 (25)
- 笔记5——shell基础
- Linux----sshd服务
- 2017 多校 TrickGCD
- Dubbo 程序实例
- 为什么使用where 1 =1 或者 where 1 = 0
- iterator、for遍历集合的优缺点
- JAVA微信公众号开发之二维码的创建与获取
- 小e开发板(esp8266)连接Arduino实现WiFi扫描
- 1.7 HashMap源码分析