linux shell 核心编程
文章平均质量分 79
适用于脚本的编写
阿无@_@
学习中。。。。。。
展开
-
shell编程--linux性能监控脚本
#!/bin/bash#功能描述:监控服务器主要性能参数指标#监控项目:内核信息、主机名称、ip地址、登录账户、内存与swap信息、磁盘信息、CPU负载kernel=$(uname -r) #内核信息release=$(cat /etc/centos-release) #操作系统版本hostname=$HOSTNAME #主机名称loc原创 2022-03-01 14:10:00 · 1446 阅读 · 0 评论 -
shell编程--三剑客之awk
一、awk基础语法(常用,其他不常用)语法:awk [选项] ‘条件{动作} 条件{动作}’ 文件名 ...1、内置变量变量名描述FILENAME当前输入文件的名称FNR当前输入文档的当前行号,尤其当有多个输入文档时有用NR输入数据流的当前行号$0当前行的全部内容$n当前行的第n个字段内容(n>1)NF当前记录(行)的字段(列)个数FS字段分隔符,默认为空格或Tab制表符OFS输出字段分隔符,默认为空格原创 2022-02-28 16:45:34 · 775 阅读 · 0 评论 -
shell编程--脚本排错参数、终端属性(tput)、电子时钟案例
一、脚本排错参数-x二、终端属性设置三、电子时钟案例原创 2022-02-23 13:55:20 · 860 阅读 · 0 评论 -
shell编程--三剑客之sed
一、基本使用sed 常用的命令选项命令选项功能描述-n,-silent屏蔽默认输出功能,默认sed会把匹配到的数据显示在屏幕上-r支持扩展正则-i[SUFFIX]直接修改源文件,如果设置了SUFFIX后缀名,sed会将数据备份-e指定需要执行的sed指令,支持使用多个-e参数-f指定需要执行的脚本文件,需要提前将sed指令写入文件中sed 基本操作指令表基本操作指令功能描述p打印当前匹配的数据行l小写L ,打印当原创 2022-02-25 11:50:12 · 793 阅读 · 0 评论 -
密码检查、生成随机密码
一、密码检查1、下载地址:官网:http://www.openwall.com/john/连接:http://www.openwall.com/john/j/john-1.8.0.tar.gz 2、安装:tar zxvf john-1.8.0.tar.gzcd john-1.8.0/srcmake clean linux-x86-64 ##安装cd ../run/3、使用:(复杂密码无法破解)解shadow文件:./unshadow /etc/passwd /etc/sha原创 2022-02-22 15:19:10 · 1328 阅读 · 0 评论 -
bash下的进度条--progress
1、进度条的代码以及展示事情起源于今天的巡检脚本时间太长,不知是死是活,所以用一下进度条,没有花里胡哨的,都是一看就懂的那种代码。1、证明自己还活着的信息下面是代码[root@slave1 ~]# cat c.sh#!/bin/bashprogress(){ i=1 s=1 b='/' while [ $s -eq 1 ] do printf "please wait %s \r" $b sleep 0.3 let c=$i%4原创 2022-01-01 14:18:55 · 1857 阅读 · 0 评论 -
shell编程 -- exec、xargs、shift、trap、split、paste、sort、cut、tr、wc、vmstat、sar、pash
一、exec使用exec调用其他命令或脚本,语法如下:exec [命令] [参数]1)如下脚本,exec调用ls命令,执行以后就结束了整个脚本。但是可以看出exec之前的命令正常被执行。[root@localhost ~]# ./exec.sh 开始2 a anaconda-ks.cfg chess.sh exec.sh jiaofan mysql subshell_6.sh test test.txt ver1.txt ver2.txt[root@localhos原创 2022-02-18 20:17:33 · 1136 阅读 · 2 评论 -
shell 编程--shell的扩展功能(字符串切割与掐头去尾)、通配符、设置语言字符集
一、通配符1)通配符通配符描述*匹配任意字符串?匹配任意单个字符[…]匹配括号中的任意单个字符,使用-可以表示连续的字符;[ 后面使用!或^ 表示匹配不在括号中的所有其他内容;[] 中还支持POSIX标准字符类,如:[:alnum:]、等案例一:[root@localhost jiaofan]# ls fu?ctiom*functiom-demo1.sh functiom-demo3.sh functiom-demo4.sh[root@localho原创 2022-02-18 11:04:39 · 1659 阅读 · 0 评论 -
shell 编程--grep
一、数据过滤与正则表达式用法:grep [选项] 匹配模式 [文件]常用选项: -i 忽略字母大小写。 -v 取反匹配 -w 匹配单词 -q 静默匹配,不将结果显示在屏幕上。案例:[root@localhost jiaofan]# cat test.txt #<==文本内容th The cccthe bbbtheabchello world[root@lo原创 2022-02-17 10:58:03 · 509 阅读 · 0 评论 -
Shell编程--函数、变量作用域、return、wait、进程数控制(文件描述符、管道命令)
一、函数定义方法:方法一:函数名(){ 代码序列}方法二:function 函数名(){ 代码序列}方法三:function 函数名 { 代码序列}1)函数定义并不会导致函数内的任何命令被执行,仅当通过函数名称调用时,函数内的命令才会被触发执行。[root@localhost ~]# mymkdir(){ #<==定义函数> mkdir /tmp/test> touch /tmp/test/hi.txt> }[root@loca原创 2022-02-15 17:35:24 · 901 阅读 · 0 评论 -
Shell编程--数组、subshell、进程启动方式(fork、source、exec)
一、数组1、定义数组1)一维数组定义格式一:数组名[索引 1]=值 1数组名[索引 2]=值 2数组名[索引 n]=值 n2)一维数组定义格式二:数组名=(值1 值2 值3)3)关联数组定义:先声明后使用,关联数组的索引可以使任意字符。declare -A 数组名数组名[key1]=值1数组名[key2]=值2或者数组名=([key1]=值1 [key2]=值2... )案例一:定义数组[root@localhost jiaofan]# name[0]=jiao原创 2022-02-15 16:38:28 · 728 阅读 · 0 评论 -
shell编程--判断、选择、循环、中断、IFS
一、判断:if1、单分支模式if 条件测试then 命令序列fiif 条件测试 ; then 命令序列fi2、双分支模式if 条件测试 ; then 命令序列1else 命令序列2fi3、多分支模式if 条件测试1 ; then 命令序列1elif 条件测试2 ; then 命令序列2elif 条件测试3 ; then 命令序列4... ...else 命令序列nfi二、选择:case结束使用 ;; 还是 ;& 。如果使用 ;原创 2022-02-13 11:35:24 · 1457 阅读 · 0 评论 -
shell编程--变量、算数运算、比较判断、[]和[[]]的区别
一、变量1、自定义变量命名规则:只能使用字母、数字和下划线,而且不可以使用数字开头,不能使用关键字。1)定义变量:# name=”jiaofan”2)引用变量:# $name3)查看变量:# echo $name4)取消变量:# unset name5)查看所有变量:# set6)从键盘输入数据:read -p”输出内容” name7)三种引号的作用:””弱引 ‘’强引 ``优先执行2、环境变量export 全局变原创 2022-02-10 12:50:27 · 670 阅读 · 0 评论 -
shell编程--注释、执行方法、输出输入、重定向、引号
一、注释书写脚本的要求:脚本第一行要求使用 shebang(#!) 符号指定一个脚本的解释器,如 #!/bin/bash、#!/bin/sh、#!/usr/bin/env python等脚本文件使用 # 或 << 符号实现单行或多行注释,被注释的关键词或代码将不被执行,如记录脚本功能、版本、作者联系方式等。脚本内容是从上往下顺序执行,一行是一条命令。[root@localhost jiaofan]# vi a.sh[root@localhost jiaofan]# sh a.sh原创 2022-02-08 22:08:32 · 1801 阅读 · 0 评论
分享