脚本开头:

#!/bin/bash

每个脚本的开头都是以这一行开头,用于说明下面的脚本是用什么运行的


输出字符:

echo"要输出的字符"

变量:

新建变量:

变量名=赋值

注意:

命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。

中间不能有空格,可以使用下划线 _。

不能使用标点符号。

不能使用bash里的关键字(可用help命令查看保留关键字)。

使用变量:

$变量名

使用变量需要在变量名前面加一个美元符号$


获取键盘输入:

read -参数

参数:

参数 作用
-s 安静模式
-r 反斜杠不作为转义字符
-p"需要提示的文本" 用户输入行前面提示
-t 超时时间 指定超时时间,单位为秒
-u 文件描述符 从指定文件描述符读取输入
-e 如果标准输入时从终端来的,未来的readline被采用
-i 文本 如果readline是被采用来读取该行,文本时放置到编辑缓冲区编辑开始之前

例子:

现在运行脚本,需要用户输入“Y”和“N”来做选择,并且提示用户“请输入"Y"确定,输入"N"退出,默认为"N":”,然后把用户的选择赋值到yn变量中。

read -p "请输入"Y"确定,输入"N"退出,默认为"N":" yn

最后的yn为变量名,用户输入的内容会赋值到yn这个变量名中


if判断:

if [ 判断条件 ];then
条件符合后执行的操作
elif [ 判断条件 ];then
条件符合后执行的操作
else
以上条件都不符合执行的操作
fi

if如果,elif否则如果,else否则,fi结束语句

注意:

如果“=”两边没有空格时赋值,“=”两边有空格为比较

判断条件两头都要有空格

"$abc"="1"  #等号两边没有空格为赋值
"$abc" = "1" #等号两边有空格为比较

用户登录时自动执行脚本:

把脚本放到/etc/profile.d目录


自定义脚本启动命令:

alias 自定义的命令='输入自定义的命令后执行的操作'

/etc/bashrc文件最后添加

清屏命令:

clear

这个命令将会刷新屏幕,本质上只是让终端显示页向后翻了一页,如果向上滚动屏幕还可以看到之前的操作信息。一般都会用这个命令。


在指定文件最后插入一行或多行:

插入单行:

echo "要插入的内容" >> 文件名

注意:echo后面有空格,要插入的内容后面也有空格,>>后面也有空格

插入多行:

echo -e "要插入的第一行\n要插入的第二行\n要插入的第三行" >> 文件名

添加参数-e,使用\n换行


删除指定文件的指定行:

sed

删除指定行:

sed '行数d' 文件名

删除第5行

sed '5d' 文件名

删除最后一行:

sed '$d' 文件名

最后一行用美元符号代替

删除第几行到第几行:

sed '要删除的第一行,要删除的最后一行d' 文件名

删除第8行到第10行

sed '8,10d' 文件名

删除不连续的行:

sed '要删除的行d,要删除的行d,要删除的行d' 文件名

删除第3行,第8行和最后一行

sed '3d,8d,$d' 文件名

除了那几行其他的都要删除:

sed '不需要删除的开始行,不需要删除的最后一行!d' 文件名

除了第3行到第6行其他的都要删除

sed '3,6!d' 文件名

删除空白行:

sed '/^$/d' 文件名

删除包含特定字符的行:

sed '/特地字符/d' 文件名

需要删除包含install这个单词的行

sed '/install/d' 文件名

删除特定字符开头的行:

sed '/^特定字符/d' 文件名

需要删除linux开头的行

sed '/^linux/d' 文件名

二维码

发表评论