bash脚本基础概念注意点
一、环境设定
1.bash变量类型:
本地变量:只对当前shell进程有效;对其子shell及其它shell都无效;
局部变量:local VAR_NAME=Value,仅对局部代码有效,其作用范围不包括当前shell的所有位置;
环境变量:export VAR_NAME=Value, 对当前shell及其子shell有效;
位置变量:$1, $2, ...
特殊变量:
$$是脚本运行的当前PID,
$!在后台运行的最后的工作的PID,
$#传递给脚本的参数个数,
$? 命令,函数或者脚本本身的退出状态,0为正确执行.
$*所有的位置参数,被作为一个单词.注意:"$*"必须被""引用.即"$1$2$3"
$@与$*同义,但是每个参数都是一个独立的""引用字串. 即"$1"、"$2"、"$3"
bash变量也可声明,甚至可以指定类型:declare
declare -i VAR_NAME: 声明一个整型变量
declare -x VAR_NAME: 声明一个环境变量
declare -a VAR_NAME: 声明一个数组
bash查看环境变量的命令:
printenv
export
查看所有变量:
set
unset 取消变量(本地、局部、环境)
2.变量命名
变量命名:只能使用字母、数字和下划线;尽量使用首字母大写避免与系统环境变量冲突,如:User 不与USER冲突。
3.变量引用:${VAR_NAME}
变量替换:只有在双引号中才能实现
bash中的引号:
双引号:弱引用,可以实现变量替换;
单引号:强引用,不替换,而显示字符串本身;
反引号:命令引用,引用的是命令的结果 ``或 $() 如`date`
4.bash的快捷键:
Ctrl+a: 跳至命令行首
Ctrl+e: 跳至命令行尾
Ctrl+u: 删除命令行首至当前光标所在处的内容
Ctrl+k: 删除当前光标所有处至命令行尾的内容
Ctrl+l: 清屏,相当于clear命令
Ctrl+c: 取消或终止;
Ctrl+z: 将当前命令送至后台
转载于:https://blog.51cto.com/wind365/1345134
bash脚本基础概念注意点相关推荐
- bash脚本基础知识
一.简介 1.bash脚本是什么? bash是一个为GNU计划编写的Unix shell.它是一些命令的堆积,配合简单的语法组成. 二.基础知识 1.脚本调试 1)bash -n /path/to/s ...
- BASH脚本基础:与、或、格式
这篇文章介绍一下BASH下的常用的与.或同编写格式的基础知识. 常用场景 之所以将这三个基础知识点放到一起,是因为在实际的使用中,当需要在将若干条语句在一行执行时,除了简顺次执行之外,可能还需要一些简 ...
- Bash脚本基础:环境变量定义与使用
脚本中会遇到很多使用环境变量的地方,这篇文章介绍一下BASH中使用的基础知识. 环境变量的分类 环境变量有很多中分类,根据环境变量的定义方式可以分为自定义环境变量和系统环境变量.自定义环境变量为使用者 ...
- BASH脚本基础:环境变量PROMPT_COMMAND介绍
这篇文章介绍一下Bash中的环境变量PROMPT_COMMAND. PROMPT_COMMAND 是什么 PS1-PS4介绍了一些用于提示信息控制的环境变量,而在此之前可以进行回调的一个环境变量就是P ...
- BASH脚本基础:环境变量PS1介绍
这篇文章介绍一下Bash中的环境变量PS1. PS1 是什么 PS1 是Prompt String 1的缩写,它是Linux/Unix下的一个用于控制提示信息的环境变量,PS1是交互式的shell用于 ...
- BASH脚本基础:环境变量PS2介绍
这篇文章介绍一下Bash中的环境变量PS2. PS2 是什么 PS2 是Prompt String 2的缩写,它是Linux/Unix下的一个用于控制提示信息的环境变量,PS2是交互式的shell中一 ...
- BASH脚本基础:使用md5命令生成消息摘要指纹
这篇文章介绍一下MD5和md5命令的使用方法. MD5:信息摘要算法 什么是消息摘要算法 信息摘要算法MD5是Message-Digest Algorithm的缩写,它以散列函数方式对文件可以产生出一 ...
- linux的逻辑运算参数,Linux基础之bash脚本编程初级-逻辑运算与测试
引言 前面介绍了bash编程的基础变量与算术表达式,本文介绍在脚本中的进阶知识:测试 在bash中测试大体分两部分:条件测试.组合测试. 而条件测试又分:数值测试.字符串测试.文件测试. 组合测试则有 ...
- Bash脚本编程学习笔记02:脚本基础和bash配置文件
脚本基础 参考资料:Shell Scripts (Bash Reference Manual) 不严谨地说,编程语言根据代码运行的方式,可以分为两种方式: 编译运行:需要先将人类可识别的代码文件编译成 ...
- linux内核与bash脚本接囗,Bash脚本编程之脚本基础和bash配置文件
脚本基础 不严谨地说,编程语言根据代码运行的方式,可以分为两种方式: 编译运行:需要先将人类可识别的代码文件编译成机器可运行的二进制程序文件后,方可运行.例如C语言和Java语言. 解释运行:需要一个 ...
最新文章
- PaddleDetection 个人测评
- python blp模型 估计_第三章 BLP模型(Bell-La Padula模型) | 学步园
- python里面temp是啥-Python tempfile模块学习笔记(临时文件)
- 【运筹学】线性规划数学模型 ( 单纯形法原理 | 单纯形法流程 | 查找初始基可行解 )
- 【技术综述】有三AI不得不看的技术综述
- Kafka C++客户端库librdkafka笔记
- c++控制台应用每一列数据如何对齐_懂Excel就能轻松入门Python数据分析包pandas(十六):合并数据...
- alert点击完确定关闭浏览器窗口_为Microsoft Edge浏览器开启标签组功能
- micropython logging文档
- github桌面版_桌面版Linux内核介绍
- 力软java版_力软未来产品发展方向
- oracle11204补丁包,Oracle 11.2.0.4 RAC 最新补丁下载(11.2.0.4.200714)
- 我是怎么做到开源系统的角色权限功能的?
- HP暗影精灵7笔记本OMEN16.1inch Gaming Laptop PC16-b0000原装出厂Win11系统恢复原厂OEM系统
- STM32在CubeMX下HAl库编程MISO为何设置和MOSI相同
- vue/react/web前端项目部署到阿里云服务器_nginx_pm2流程及部署前的准备
- epub格式电子书剖析
- html中的input框中的value值到底是什么
- Ubuntu搭建Http服务器用于下载Ubuntu文件
- 使用 Flutter 加速应用开发
热门文章
- day11--Matplotlib--柱形图与盒图
- JS学习总结(6)——函数/弹出框
- android实现Materia Design风格APP(一):开篇
- C2597 LNK2001 C++静态成员函数、变量理解
- 数据结构-----平衡二叉树
- Kubernetes部署项目报错ImagePullBackOff日志提示rpc error: code..http: server gave HTTP response to HTTPS client
- Flutter音频播放插件just_audio入门指南
- Picasso源码的简单解析(一)
- Alink、Tensorflow on Flink 在京东的应用
- aix系统怎么开启ftp服务器,liunx和aix 系统开启ftp服务