Shell
我要变蘑菇了_o
这个作者很懒,什么都没留下…
展开
-
5.shell脚本中常用命令(3)-awk报告生成器
【实验-awk】命令是逐一处理的awk ‘{print FILENAME}’ passwdcat -b passwdawk ‘{print NR}’ passwdawk -F : ‘{print NF}’ passwdawk -F : ‘BEGIN{print “NAME”}{print $1}END{print “END”}’ passwdawk -F : ‘BEGIN{print...原创 2019-08-18 17:18:44 · 435 阅读 · 0 评论 -
7.脚本编写练习1---显示当前主机ip地址 / 显示能登陆系统的用户 / 显示当前主机名&ip&能够登陆系统的用户 / 清空日志
练习1:执行ip_show.sh,显示当前主机ip地址vim ip_show.shcat ip_show.sh ################################## # Author: zxy # # Create_Date:2019-08-19 23:03 # # Mail: zxy@zxyos.com # # Description: # # ...原创 2019-08-21 22:12:29 · 268 阅读 · 0 评论 -
8.shell中的变量(内含:su - 与su的区别)
1.什么是变量?变量 在程序运行过程中值是允许改变的量。变量可以保存程序运行时用户输入的数据、特定运算的结果以及要在窗体上显示的一段数据等。简而言之,变量是用于跟踪几乎所有类型信息的简单工具。变量是用一串固定的字符来表示不固定值的一种方法变量是一种使用方便的占位符,用于引用计算机内存地址.该地址可以存储Script运行时可更改的程序信息。使用变量并不需要了解变量在计算机内存中的地址,只...原创 2019-08-22 15:01:47 · 331 阅读 · 0 评论 -
9.脚本编写练习2---用户添加(1)
echo -e “\033[31m~~~~\033[0m” 内容显示为红色字体([0m—关闭属性)练习1:使命令/mnt/create_users.sh /mnt/userfile可为系统添加用户/mnt/userfil中写入user1 user2 user3#!/bin/bash[ “$USER” != “root” ] && {echo -e “\033[31mErr...原创 2019-08-22 16:37:03 · 162 阅读 · 0 评论 -
11.脚本编写练习3---用户添加(3)(函数方式)
练习:编写create_user.sh脚本<1>please input username:lee ,当lee存在,输出显示"lee is exist";<2>please input username:lee1 ,当lee1不存在,please input password: 输入密码,建立lee1并设定密码;<3>please input username:...原创 2019-08-22 17:02:22 · 117 阅读 · 0 评论 -
10.脚本编写练习4---用户添加(2)(-b|-c)
『练习』:userctrl.sh -d#!/bin/bash[ “$USER” != “root” ] && {echo -e “\033[31mError:Permission Denied !!!\033[0m”exit 0}[ -z “$1” ] && {echo -e “\033[31mError:Please Input userfile ...原创 2019-08-22 17:25:32 · 159 阅读 · 0 评论 -
12.脚本编写练习5---主机检测
『练习』:检测哪些主机(172.25.254.1~172.25.254.20)是开启的,并将其ip放入/mnt/host_ip文件#!/bin/bash[ -e “/mnt/host_ip” ] && {echo -e “\033[31m/mnt/host_ip is already exist !!!\033[0m”echo “[O]verwrite [B]ackup [...原创 2019-08-22 23:12:22 · 111 阅读 · 0 评论 -
13.脚本编写练习6---倒计时1(10秒倒计时 & 1分10秒倒计时)
『练习1』:10秒的倒计时#!/bin/bashfor DATE in {10..1}do echo -n "After ${DATE}s is end " echo -ne "\r" sleep 1done -n 显示新数据时不换行-ne “\r” 刷新,用新数据刷掉前边旧数据『练习2』:1分10秒倒计时#!/bin/bash...原创 2019-08-22 23:28:14 · 435 阅读 · 0 评论 -
14.Shell脚本中的 for 循环
foedodone原创 2019-08-26 19:01:29 · 195 阅读 · 0 评论 -
15.Shell脚本中的while语句和until语句
whiledodone原创 2019-08-26 20:28:59 · 185 阅读 · 0 评论 -
25.Sheel脚本中的if语句、case语句、expect语句、语句控制(exit、break、continue)
的范围的份额为原创 2019-08-26 22:43:12 · 348 阅读 · 0 评论 -
26.Shell中的运算
原创 2019-08-26 22:49:24 · 99 阅读 · 0 评论 -
6.什么是Shell?什么是Shell Script?
1.什么是内核?内核 是操作系统最基本的部分,是一个操作系统的核心,是基于硬件的第一层软件扩充,提供操作系统最基本的功能,是操作系统工作的基础,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,但这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。内核的分类可分为单内核和双内核以及微...原创 2019-08-21 17:14:42 · 564 阅读 · 0 评论 -
24.脚本编写练习15---计算器
『练习』:#!/bin/bashread -p "Please input first number: " NUM1read -p "Please input action: " ACTIONread -p "Please input second number: " NUM2[ -z "$NUM1" -o -z "$ACTION" -o -z "$NUM2" ] &&...原创 2019-08-25 17:00:30 · 130 阅读 · 0 评论 -
23.脚本编写练习14---1分10秒倒计时2
『练习』:编写脚本实现1分10秒倒计时使用四则运算方式实现在倒计时时:分钟=总秒数/60取整秒钟=总秒数/60取余<方式1>#!/bin/bashMIN=1SEC=10((NUM=MIN*60+SEC))for (($NUM;NUM>0;NUM--))do ((min=$NUM/60)) ((sec=$NUM%60)) ...原创 2019-08-25 16:42:28 · 270 阅读 · 0 评论 -
4.shell脚本中常用命令(2)-sed行编辑器
【实验1-sed(-d/-a/-i)】-n 屏蔽模式空间中的内容-d 删除sed ‘1,3d’ zxyos /删除1到3行/sed ‘1d;3d’ zxyos /删除第1行,第3行/sed ‘1,7d’ zxyos /删除1到7行/sed ‘1,7!d’ zxyos /1到7行不删除,删除其他/sed ‘/^UID/d’ zxyos /删除以UID开头的行/sed -n ‘/^UI...原创 2019-08-20 00:22:58 · 141 阅读 · 0 评论 -
16.脚本编写练习7---判断文件类型
『练习1』:编写脚本check_file.sh,判断文件类型(是否存在—普通文件/软链接/目录)使用test方式实现 #!/bin/bash [ -z "$1" ]&&{ echo "Please Input filename following script!!!" exit } [ -e "$1" ]||{ ec...原创 2019-08-23 20:57:04 · 572 阅读 · 0 评论 -
17.脚本编写练习8---文件管理(-a|-b|-p)
『练习』:编写脚本filectl.sh,filectl.sh -a filename添加文件;filectl.sh -d filename删除文件;filectl.sh -p filename备份文件;若非-a|-d|-p,则提醒“Please Input -a|-d|-p following filectl.sh“<方法1:使用函数方式+if语句实现>#!/bin/bashEC...原创 2019-08-24 00:17:41 · 139 阅读 · 0 评论 -
18.脚本编写练习9---自动登陆
『练习』:编写脚本/mnt/auto_ssh.exp,使用“/mnt/auto_ssh.exp 172.25.254.1 westos”命令实现自动登陆当登陆172.25.254.1时,会出现以下提示:在登陆时会出现问题需要回答,在编写自动登陆脚本时的关键是需要实现自动回答问题使用expect自动应答命令实现#!/usr/bin/expectset timeout 5set IP ...原创 2019-08-24 22:50:56 · 138 阅读 · 0 评论 -
19.脚本编写练习10-批量管理(Shell脚本+expect自动应答)
『练习1』:将1~10台主机中开着的主机的主机名放入host_list文件#!/bin/bashAUTO_CONNECT(){/usr/bin/expect <<EOFspawn ssh root@$1 $2expect {"yes/no" { send "yes\r";exp_continue }"password:" { send "$PASSWORD\r" }}...原创 2019-08-25 11:26:46 · 260 阅读 · 0 评论 -
3.shell脚本中常用命令(1)-grep文本过滤命令
【实验-awk】命令是逐一处理的awk ‘{print FILENAME}’ passwdcat -b passwdawk ‘{print NR}’ passwdawk -F : ‘{print NF}’ passwdawk -F : ‘BEGIN{print “NAME”}{print $1}END{print “END”}’ passwdawk -F : ‘BEGIN{print...原创 2019-08-20 23:30:17 · 717 阅读 · 0 评论 -
2.shell中的基本命令---test
介绍Test 变量测试语句命令,Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。格式:test 测试条件注意在流程控制语句中,都可以省略test,直接写成[ 测试条件 ]测试范围:整数,字符串,文件文章目录一.字符串测试和变量测试字符串不相等比较字符串相等比较字符串是否为空判断二.数值测试三.文件测试一.字符串测试和变...原创 2019-08-21 01:22:12 · 510 阅读 · 0 评论 -
1.shell中的基本命令(diff patch cut sort uniq && || tr)
地址伪装(192.168.0.218不能ping通172.25.254.18):(1)检查192.168.0.218客户端能不能ping通192.168.0.118()sysctl -a | grep ip_forwardvim /etc/systemctl.confnet.ipv4.ip_forward=1sysctl -pPOSTROUTING路由之后:数据进来,经内核到达另一网...原创 2019-08-21 02:21:29 · 176 阅读 · 0 评论 -
20.脚本编写练习11---用户添加(4)
『练习』:方法1:使用if语句+test命令+for语句实现#!/bin/bashif [ "$#" -lt "2" ]then echo -e "\033[31mPlease Input userlist|passlist following script !\033[0m" exit 0elif [ ! -e "$1" ] /*当判断脚本后所跟第...原创 2019-08-25 14:03:08 · 123 阅读 · 0 评论 -
21.脚本编写练习12---数据库备份
『练习』:实验前安装mariadb数据库,并初始化设置超级用户密码为westos当数据库mariadb存在并开启时,/var/lib/mysql/mysql.sock文件才会存在#!/bin/bashif [ ! -e "/var/lib/mysql/mysql.sock" ] /*判断mariadb数据库是否存在并开启*/then echo -e "\033...原创 2019-08-25 15:36:02 · 121 阅读 · 0 评论 -
22.脚本编写练习13---自动部署论坛
『练习』:#!/bin/bashecho "install software..."yum install httpd mariadb-server php php-mysql -y &> /dev/nullsed '/^Listen 80/cListen 8080' -i /etc/httpd/conf/httpd.confsed '1askip-networking=1...原创 2019-08-25 16:13:20 · 143 阅读 · 0 评论 -
7.Python的输入输出练习
要求如下:求平均成绩(python3解释器)输入学生姓名;依次输入学生的三门科目成绩;(语文 数学 英语)计算该学生的平均成绩, 并打印;平均成绩保留一位小数点;计算该学生语文成绩占总成绩的百分之多少?并打印。eg: 78%;NAME = input ('请输入学生姓名:')Chinese = float(input ('依次输入学生的语文成绩:'))Math = float...原创 2019-09-01 20:04:33 · 1589 阅读 · 0 评论