随笔分类 -  shell

摘要:[root@server01 ~]# vi 1.txt 1111111111111111111 121212aaasdasdf asdfasdfasdfasdfasdf 12121212aklsdfjaklsdfkjk *****#)#((@#*@)1121212 root@gitlba-aming 阅读全文
posted @ 2021-02-19 12:30 星火撩原 阅读(31) 评论(0) 推荐(0) 编辑
摘要:题目要求 服务器上跑的是LNMP环境,近期总是有502现象。502为网站访问的状态码,200正常,502错误是nginx最为普遍的错误状态码。 由于502只是暂时的,并且只要一重启php-fpm服务则502消失,但不重启的话,则会一直持续很长时间。 所以有必要写一个监控脚本,监控访问日志的状态码,一 阅读全文
posted @ 2021-02-19 12:20 星火撩原 阅读(66) 评论(0) 推荐(0) 编辑
摘要:题目要求 设计一个shell脚本来备份数据库,首先在本地服务器上保存一份数据,然后再远程拷贝一份,本地保存一周的数据,远程保存一个月。 假定,我们知道mysql root账号的密码,要备份的库为discuz,本地备份目录为/bak/mysql, 远程服务器ip为192.168.123.30, 远程提 阅读全文
posted @ 2021-02-19 11:29 星火撩原 阅读(43) 评论(0) 推荐(0) 编辑
摘要:题目要求 写一个脚本,判断本机的80端口(假如服务为httpd)是否开启着,如果开启着什么都不做,如果发现端口不存在,那么重启一下httpd服务, 并发邮件通知你自己。脚本写好后,可以每一分钟执行一次,也可以写一个死循环的脚本,30s检测一次。 核心要点 * 检测80端口使用nmap -p 80 1 阅读全文
posted @ 2021-02-19 11:27 星火撩原 阅读(147) 评论(0) 推荐(0) 编辑
摘要:#### 题目要求 找到/123目录下所有后缀名为.txt的文件 1. 批量修改.txt为.txt.bak 2. 把所有.bak文件打包压缩为123.tar.gz 3. 批量还原文件的名字,即把增加的.bak再删除 #### 核心要点 * find用来查找所有.txt文件 * tar打包一堆文件 * 阅读全文
posted @ 2021-02-19 10:42 星火撩原 阅读(135) 评论(0) 推荐(0) 编辑
摘要:#### 核心要点 ping -c10 180.163.26.39 通过ping来判定对方是否在线 发邮件脚本 https://coding.net/u/aminglinux/p/aminglinux-book/git/blob/master/D22Z/mail.py #### 参考答案 #!/bi 阅读全文
posted @ 2021-02-19 10:30 星火撩原 阅读(96) 评论(0) 推荐(0) 编辑
摘要:#### 题目要求 写一个脚本计算一下linux系统所有进程占用内存大小的和。 #### 核心要点 * ps命令用法 * for循环 * 加法运算 #### 参考答案 #!/bin/bash sum=0 for n in `ps aux |grep -v 'TIME COMMAND'|awk '{p 阅读全文
posted @ 2021-02-19 10:22 星火撩原 阅读(112) 评论(0) 推荐(0) 编辑
摘要:[root@server02 ~]# cat weblog.txt 112.111.12.248 – [25/Sep/2013:16:08:31 +0800]formula-x.haotui.com “/seccode.php?update=0.5593110133088248″ 200″http: 阅读全文
posted @ 2021-02-19 09:58 星火撩原 阅读(63) 评论(0) 推荐(0) 编辑
摘要:【题目要求】 请按照这样的日期格式(xxxx-xx-xx)每日生成一个文件, 例如生成的文件名为2017-12-20.log, 并且把磁盘的使用情况写到到这个文件中, 不用考虑cron,仅仅写脚本即可 【习题答案】 本题答案: #! /bin/bash d=`date +%F` logfile=$d 阅读全文
posted @ 2021-02-19 09:51 星火撩原 阅读(45) 评论(0) 推荐(0) 编辑
摘要:#!/bin/bash access_web_status() { if [ $(curl -o /dev/null -s -w "%{http_code}" $URL) -eq 200 ]; then echo "$URL Access successful." continue fi } whi 阅读全文
posted @ 2021-02-18 14:45 星火撩原 阅读(82) 评论(0) 推荐(0) 编辑
摘要:function local_ip() { local NUM ARRAY_LENGTH NUM=0 for NIC_NAME in $(ls /sys/class/net|grep -vE "lo|docker0"); do NIC_IP=$(ifconfig $NIC_NAME |awk -F' 阅读全文
posted @ 2021-02-18 14:29 星火撩原 阅读(165) 评论(0) 推荐(0) 编辑
摘要:#!/bin/bash #方法1 function check_ip(){ IP=$1 VALID_CHECK=$(echo $IP|awk -F. '$1<=255&&$2<=255&&$3<=255&&$4<=255{print "yes"}') if echo $IP|grep -E "^[0 阅读全文
posted @ 2021-02-18 14:05 星火撩原 阅读(317) 评论(0) 推荐(0) 编辑
摘要:#!/bin/bash # 方法1 # 将失败次数放到数组里面进行判断 IP_LIST="192.168.18.1 192.168.1.1 192.168.18.9" for IP in $IP_LIST; do NUM=1 while [ $NUM -le 3 ]; do if ping -c 1 阅读全文
posted @ 2021-02-18 13:44 星火撩原 阅读(257) 评论(0) 推荐(0) 编辑
摘要:1)本地磁盘监控 USE_RATE_LIST=$(df -h |awk '/^\/dev/{print $1"="int($5)}') #结果/dev/sda1=10 for USE_RATE in $USE_RATE_LIST; do PART_NAME=${USE_RATE%=*} USE_RA 阅读全文
posted @ 2021-02-18 11:11 星火撩原 阅读(149) 评论(0) 推荐(0) 编辑
摘要:一、什么是grep和egrep 首先解释下为什么叫grep,他从理解和发展来看应该拆解为gp和re。 据《UNIX编程艺术》此书上的记载,在UNIX早期文本编辑器ed提供一种操作:g/字符/p ,g代表global,p代表print,很显然这个功能的意思大概是在文本中全局寻找到有这个特定字符的行,然 阅读全文
posted @ 2020-11-24 10:26 星火撩原 阅读(545) 评论(0) 推荐(0) 编辑
摘要:命令行参数 #./admin 10 30 读取参数 [root@localhost scrips]# vi test28.sh #!/bin/bashfactorial=1for ((number=1; number<=$1; number++))do factorial=$[ $factorial 阅读全文
posted @ 2019-11-25 14:47 星火撩原 阅读(100) 评论(0) 推荐(0) 编辑
摘要:归档压缩 [root@client ~]# tar -zcf boot.tar.gz /boot/* &> /dev/null [root@client ~]# ls boot.tar.gz boot.tar.gz 使用多个命令 [root@client ~]# ls ; whoanaconda-k 阅读全文
posted @ 2019-11-15 23:21 星火撩原 阅读(233) 评论(0) 推荐(0) 编辑
摘要:for循环语句、 在计算机科学中,for循环(英语:for loop)是一种编程语言的迭代陈述,能够让程式码反复的执行。 它跟其他的循环,如while循环,最大的不同,是它拥有一个循环计数器,或是循环变数。这使得for循环能够知道在迭代过程中的执行顺序。 1.1.1 shell中的for循环 she 阅读全文
posted @ 2019-11-15 15:59 星火撩原 阅读(144) 评论(0) 推荐(0) 编辑
摘要:条件表达式 文件判断 文件测试操作符 常用文件测试操作符 说明 -d文件,d的全拼为directory 文件存在且为目录则为真,即测试表达式成立 -f文件,f的全拼为file 文件存在且为普通文件则为真,即测试表达式成立 -e文件,e的全拼为exist 文件存在则为真,即测试表达式成立。注意区别于“ 阅读全文
posted @ 2019-11-14 19:35 星火撩原 阅读(142) 评论(0) 推荐(0) 编辑
摘要:Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户。 这种对话方式可以是: 交互的方式:从键盘输入命令,通过/bin/bash的解析,可以立即得到Shell的回应 [root@localhost ~ 阅读全文
posted @ 2019-11-14 11:40 星火撩原 阅读(160) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示