【读书笔记】Linux Shell脚本攻略(一)打印 环境变量 计算 文件 数组 别名 日期 调试 函数

简介

Bash(Bourne Again Shell),是大多数GNU/Linux系统默认的Shell环境。

$代表普通用户   #代表root管理员权限

sudo可以获取管理员权限

.sh文件存储脚本,以 #! /bin/bash开头主要用来定位bash解释器所在的位置

运行脚本 

bash script.sh
或者赋予用户权限后直接运行

chmod a+x script.sh
./script.sh #./表示当前目录
;和换行等价用来区分两条命令

终端打印

echo指令


-e可以使用转义序列

\e[1;31m使得颜色变为红色

\e[0m重置

常用颜色有重置=0;黑色=30;红色=31;绿色=32;黄色=33;蓝色=34;洋红=35;青色=36;白色=37.


printf指令

//需要自己换行


printf类型有如下:具体格式参考 地址

d	以十进制形式输出带符号整数(正数不输出符号)
o	以八进制形式输出无符号整数(不输出前缀0)
x,X	以十六进制形式输出无符号整数(不输出前缀Ox)
u	以十进制形式输出无符号整数
f	以小数形式输出单、双精度实数
e,E	以指数形式输出单、双精度实数
g,G	以%f或%e中较短的输出宽度输出单、双精度实数
c	输出单个字符
s	输出字符串

变量和环境变量

变量直接赋值就好,使用的时候加$,大括号可有可无


首先看下PATH这个变量里存了啥


想要修改Path可以利用export


数学计算

所有内容都被存储为 字符串,但也有办法进行数学计算

let操作


操作符[] //和let类似

expr表达式操作

bc高级工具

文件描述符

>覆盖写入文件
>>不覆盖写入文件

查看文件内容 cat XXX.XX


0--stdin(标准输入
1--stdout(标准输出
2--stdeer(标准错误

数组

基础用法

定义关联数组



别名

alias new_command='command sequence'
只对当前终端有效,为了使得所有的有效需要放入~/.bashrc里

转义别名可以用\command

获取终端信息

tputstty是另个终端处理工具

tput 获取终端行列  tput cols   tput lines
        设置背景颜色0-7 tput setab 2
        设置文本颜色0-7 tput setaf  2

还可以移动光标设置下划线之类的参考 地址

stty在输入密码时起作用,不显示
stty -echo开始
stty echo结束

日期

date函数,注意用法即可,更具体的见 博客




调试脚本

bash -x script.sh
或者在代码里手动加set -x和set +x

函数和参数


function fname(){ statements; }
或者fname(){ statements; }



输出作为输入
利用|


子shell

反引用(不是单引号是~的那个键)



好困,明天再继续好了……



猜你喜欢

转载自blog.csdn.net/zmdsjtu/article/details/79207811