shell脚本

DOS命令

谁说胖子不能爱 提交于 2020-04-08 07:25:03
DOS命令    DOS命令 ,是DOS操作系统的命令,是一种 面向磁盘的操作命令 ,主要包括目录操作类命令、磁盘操作类命令、文件操作类命令和其它命令。DOS命令 不区分大小写 ,比如C盘的Program Files,在dos命令中完全可以用"progra~1"代替, 加上英文引号是因为名称的中间有空格(即多于一个词) 。 . 代表当前文件夹 , .. 代表上层目录 ,如命令 cd .. 就是回到上层目录。文件夹是不能通过命令行(只能打开某个文件)打开的,因为它下边还有子目录,命令行只会进入到它的下级目录里。 DOS常用命令: cls   清屏 cd    改变当前目录        edit   文本编辑 dir    列文件名 ren    改变文件名 move   移动文件,改目录名 copy  拷贝文件          del    删除文件 md   建立子目录 rd    删除目录 deltree  删除目录树  tree    显示命令树结构      type   显示文件内容 more  分屏显示 attrib  设置文件属性 mem   查看内存状况        date   显示及修改日期 time   显示及修改时间 set    设置环境变量 debug   程序调试命令 shutdown   关机 ping    查看网络连通情况 diskcopy

shell编程9*9乘法表

风格不统一 提交于 2020-04-08 00:38:40
</pre>脚本内容<pre name="code" class="plain">#!/bin/bash for i in "1" "2" "3" "4" "5" "6" "7" "8" "9" do for j in "1" "2" "3" "4" "5" "6" "7" "8" "9" do if [ ${j} -lt ${i} ] then k=$((i * j)) echo -n ${i}*${j}=${k}$'\t' fi if [ ${j} -eq ${i} ] then k=$((i * j)) echo ${i}*${j}=${k} fi done done 输出结果 [iufo@iufo test]$ bash ./test.sh 1*1=1 2*1=2 2*2=4 3*1=3 3*2=6 3*3=9 4*1=4 4*2=8 4*3=12 4*4=16 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 9*1=9 9*2=18 9*3=27 9*4=36 9*5

shell中$(cd \"$(dirname \"$0\")\",pwd) 解析

本秂侑毒 提交于 2020-04-07 19:02:27
BIN_FOLDER = $(cd "$(dirname "$0")",pwd) 解析: 1、取当前运行脚本的所在路径: $0 2、取当前脚本所在路径的父目录: dirname "$0" 3、取返回的父目录的值: $(dirname "$0") 4、cd到返回的父目录: cd "$(dirname "$0")" 5、 输出地址 :  cd "$(dirname "$0")",pwd 6、取输出的地址,并赋值给BIN_FOLDER: BIN_FOLDER = $(cd "$(dirname "$0")",pwd) 来源: https://www.cnblogs.com/Linux-guowen/p/12654795.html

Linux shell入门基础(六)

折月煮酒 提交于 2020-04-07 14:55:32
六、Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行的角色是不一样的; #shell scripts(UNIX Like系统的原则有一条:程序越短越好) #bash csh tcsh ksh #which startx(查看文件的路径) /usr/X11R6/bin/startx #vi `which startx` #!/bin/sh …… #vi /etc/rc.d/rc.sysinit (修改系统名,颜色等属性) #echo $SHELL /bin/bash 脚本中的#表示注释,但第一行中的#有特殊的意义: 如:第一行字符非#,表示这是一个bash脚本 第一行中是#,但第二个字符不是i,表示这是一个csh脚本 第一行字符是#,且第二个字符是!,表示调用其后指定 的/usr/bin/python2.2程序来执行以下这个脚本 02.shell中正则表达式 bash本身不提供正则表示式的支持,只支持通配符* ? 正则表达式可以通过一些命令去执行,比如grep,vi,sed,awk 比如Linux shell入门基础(二)中的介绍 03.与shell脚本的交互 #cd /tmp/ddd/ #ls …… #rm -rf * #vi a #!

脚本编程进阶

冷暖自知 提交于 2020-04-07 14:33:59
1、chmod -rw /tmp/file1,编写脚本/root/bin/per.sh,判断当前用户对/tmp/fiile1文件 是否不可读且不可写 #!/bin/bash [ ! -r /tmp/file1 ] && [ ! -w /tmp/file1 ] && echo "不可读写" || echo "可读写" [root@centos7 shell]# chmod -rw /tmp/file1 [root@centos7 shell]# ll /tmp/file1 ----------. 1 root root 0 Aug 10 16:22 /tmp/file1 [root@centos7 shell]# bash per.sh 可读写 [root@centos7 shell]# su cent [cent@centos7 shell]$ bash per.sh 不可读写 2、编写脚本/root/bin/nologin.sh和login.sh,实现禁止和充许普通用户登录系统 思路:当/etc/目录下存在 nologin 文件时,普通用户会无法登陆,因此,我们只需要通过删除或增加该文件来限制普通用户是否可登陆 [root@centos7 shell]# cat login.sh nologin.sh #!/bin/bash [ -e /etc/nologin ] && echo

四行shell脚本实现zabbix_server的高可用

二次信任 提交于 2020-04-07 11:21:08
场景模拟: 高可用的重要性 一家中小型企业需要使用zabbix_server监控大量设备,某天,一位新来的员工操作服务器失误,导致zabbix_server服务器系统奔溃无法开机。这时候zabbix_server服务中断了,这家企业的所有设备都无法进行监控,假如此时,监控的设备中有重要的业务主机,出现了告警,但是由于zabbix_server无法采集数据,导致运维人员不知道业务主机出现了一个严重的告警,业务也受到了影响。最后给企业带来巨大的经济损失。 名词解析: 什么是高可用? 高可用技术简单的说就是,保障业务在出现故障的时候,进行快速的切换,从而不影响到业务的正常运转。 什么是VIP(虚拟IP)? 高可用技术离不开VIP,高可用的原理其实就是用户通过VIP访问业务,而VIP会映射到对应的服务器IP。 默认情况下,客户端通过192.168.74.150的IP映射到的192.168.74.149这台主zabbix_server的服务,如果主zabbix_server服务器的关机了,那么客户端继续使用192.168.74.150的ip就会映射到备用zabbix_server(192.168.74.148)这台服务。 准备内容: 安装两台zabbix_server,一台数据库服务器(主zabbix_server和备zabbix_server的数据都保存在这台数据库上) 备:zabbix

使用 shell 自动释放磁盘空间

拈花ヽ惹草 提交于 2020-04-06 22:44:23
有一台测试机上面部署了 Web 服务,很多人代码会打 debug 日志。机器磁盘有限,需要自动去清理历史的日志。 脚本 #clean_trash.sh #!/usr/bin/env bash df > disk.dat remain=`sed -n "3, 1p" disk.dat | awk 'END{print $4}'` if [[ $remain -lt 2000000 ]];then echo "Space No Left: $remain" find /home/qspace/log/info/ -cmin +120 -name "*" -exec rm -rf {} \; find /home/qspace/log/error/ -cmin +120 -name "*" -exec rm -rf {} \; find /home/qspace/upload/ -type f -size +100M -exec rm -rf {} \; else echo "Space OK: $remain" fi 使用 df 去检查磁盘空间,一旦磁盘剩余空间小于 2G,将 log 和 error 中 2 小时前的日志删除。另外,也删除上传目录中大于 100 M 的 文件。 配置 crontab crontab 是 linux 自带的定时任务管理器,将上述脚本配置为每十分钟执行一次

马哥博客作业第三周

戏子无情 提交于 2020-04-06 02:09:08
正则表达式 一.文本编辑工具 1.文本编辑之神vim 1.1 vim的三种模式: 命令或普通(Normal)模式:默认模式,可以实现移动光标,剪切/粘贴文本 插入(Insert)或编辑模式:用于修改文本 扩展命令(extended command )或命令(末)行模式:保存,退出等 1.2 模式切换: 插入模式 --- ESC-----> 命令模式 命令模式 ---- : ----> 扩展命令模式 扩展命令模式 ----ESC,enter----> 命令模式 1.3 扩展模式的基本命令 w 写(存)磁盘文件 wq 写入并退出 x 写入并退出 X 加密 q 退出 q! 不存盘退出,即使更改都将丢失 r filename 读文件内容到当前文件中 w filename 将当前文件内容写入另一个文件 !command 执行命令 r!command 读入命令的输出 1.4 命令模式的基本命令 ZZ 保存退出 ZQ 不保存退出 1.4.2 光标跳转 字符间跳转: h: 左 L: 右 j: 下 k: 上 单词间跳转: w:下一个单词的词首 e:当前或下一单词的词尾 b:当前或前一个单词的词首 当前页跳转: H:页首 M:页中间行 L:页底 zt:将光标所在当前行移到屏幕顶端 zz:将光标所在当前行移到屏幕中间 zb:将光标所在当前行移到屏幕底端 行首行尾跳转: ^ 跳转至行首的第一个非空白字符

自动化运维Ansible之常用模块

醉酒当歌 提交于 2020-04-05 17:51:30
目录 0、Ansible模块语法 1、Command模块 2、Shell模块 3、Scripts模块 4、Copy模块 5、File模块 6、Yum模块 7、Service模块 8、Cron模块 9、Group模块 10、User模块 11、Mount模块 12、Unarchive模块 13、Git模块 14、Systemd模块 0、Ansible模块语法 在ansible中是指需要快速执行一条命令,并且不需要保存的命令,对于复杂的命令则为playbook 查看模块帮助:ansible-doc -l // 统计模块数量 $ ansible-doc -l |wc -l 3387 // ansible有大量的模块 Ansible模块语法: ansible [管理主机信息或者主机组信息] -m [模块名称] -a [相关模块参数] 主机信息:远程主机IP地址;远程主机组名称;远程所有主机all -m:指定相应模块 -a:利用模块中某些参数功能 -f :定义每次输出内容的数量 Ansible注意事项颜色信息: 绿色:对远程节点不进行相应修改,或者只是对远程节点信息进行查看 红色:操作执行命令有异常 黄色:对远程节点进行相应修改 深紫色:表示对命令执行发出警告信息(可能存在的问题,给你提示建议) 1、Command模块 command模块的作用:默认模块, 在远程主机执行命令 ;默认模块

shell命令三剑客之sed命令详解

守給你的承諾、 提交于 2020-04-05 17:29:58
目录 1.初识sed命令 1.1 sed命令是什么 1.2 sed工作原理 1.3 sed 命令怎么用 1.4 示例 1.4.1 sed的n选项和编辑命令p的示例 1.4.2 sed的d编辑命令(不删除原文件内容)示例 1.4.3 sed的编辑命令之a追加命令示例 1.4.4 sed的编辑命令之i插入命令示例 1.4.5 sed的编辑命令之c替换命令示例 1.4.6 sed的编辑命令之r读入命令示例 1.4.7 sed的编辑命令之w写入命令示例(w命令不加-i也是直接修改原文件!) 1.4.8 sed的编辑命令之替换s命令示例 1.5 sed的s编辑命令可以使用任意分隔符作为定界符 1.6 sed 命令的-i 选项 1.7 sed的编辑命令补充之:G命令 1.8 sed命令特殊用法 1.9 sed的s命令中支持\t \n \s(正则里表示空白) 2 练习 shell中最核心的三个命令grep、sed、awk。 其中, grep:文本搜索。 sed:文本处理。 awk:文本分析工具、语言。 本文主要讲述sed命令的用法。 1.初识sed命令 1.1 sed命令是什么 sed是一种支持正则表达式的非交互式流编辑器。是脚本中修改文本或者文本替换的最佳工具。 1.2 sed工作原理 sed工作在内存,有两个空间: pattern space(模式空间):缓存空间,较多使用