学习笔记:shell学习第二天

今天请假了,没上成课,感觉自己啥也不会

dd if=/dev/zero of=/tmp/$file bs=1M count=1

5/14/21个人笔记
一控多

测试-------test条件测试
test 能够理解3中类型的表达式
1.文件测试
2.字符串比较
3.数字比较

字符串的比较

#!/usr/bin/bash
#strcmp
#by dy
if [ $UID -ne 0 ] ;then
        echo "你没有权限"
   else
        yum -y install lsof &>/dev/null
        echo "lsof 已安装完毕。"
   exit
fi

文件已存在,显示文件信息;文件不存在,开始创建

#!/usr/bin/bash
#Determine whether the file exists
#by dy

read -p "请输入你要查询的文件:" file
if [ -f /tmp/$file ] ;then
      echo "文件已存在,显示文件信息"
      sleep 1
      ls -l /tmp/$file
   else
      echo "文件不存在,即将创建"
      touch /tmp/$file
      echo "$file 文件已创建."
fi

数字比较

-eq(equal) 等于
-ne(not equal) 不等于
-ge(Greater than or equal to) 大于等于 
-le(Less than or equal to) 小于等于 
-gt(greater than) 大于

-lt(less than) 小于
-f #存在且是正规文件
-d #存在且是目录
-h 存在且是符号链接
-b 块设备
-c 字符设备
-e #文件存在

创建用户

编写批量添加用户及密码脚本,要求可以自己定义用户名及密码
例如一次添加zhao1- zhao10

#!/usr/bin/bash
#Custom bulk useradd
#by dy

read -p '请输入你要添加的用户的前缀:' user
for i in {1..5}
do
      echo "正在添加用户 $user$i ,请稍等.."
      useradd $user$i
         echo "用户 $user$i 已创建!"
      read -p '请输入$user$i 用户的密码:' passwd
      passwd $user$i
      $passwd
         echo "已创建用户$user$i ,密码为$passwd"
done

题:

dd if 几个文件 .html结尾的, 不能创建空文件。
脚本要求:使用for循环 累计出当前 .html结尾文件的大小总和
提示: 1 sum= ( ( (( ((sum+$size)) 2 awk切出来每个文件大小

#!/bin/bash
#
#
sum=0
read -p "请输入你要创建的非空文件名:" file
dd if=/dev/zero of=/tmp/$file bs=1M count=1
for i in `ls -ll /tmp/$file | awk '{print $5}'`
do
        size=$(($i))
        sum=$(($sum+$size))
done
        echo "以.html结尾的文件的大小总和为:$sum"

检测yum源及dns脚本,如果yum源不可用,执行完后,变成可用

#!/usr/bin/bash
#chack yum & DNS 
#by dy
        read -p "请输入本机的IP: " ip
        ping www.baidu.com -c5 &>/dev/null
        if [ $? -eq 0 ] ;then
                echo "$ip 网络正常通讯,DNS可用"
                echo "正在检测yum源是否可用,如果不可用,将为您更改为国内yum源"
                yum -y install lsof &>/dev/null
                    echo "yum源不可用,正在为您更改yum源,过程漫长,请耐心等待"
                    sleep 5
                    rm -rf /etc/yum.repos.d/* &>/dev/null
                    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo &>/dev/null
                    yum -y install epel-release &>/dev/null
                    echo "yum源安装完成,请放心使用。"

            else
                echo "$ip  无法连接到网络,请检查网络后再进行本脚本的使用。"
        fi    

a机器给b机器使用scp命令拷贝4个文件过去
提示:先做免密(主要是还没学怎么shell做免密)

#!/bin/bash
#scp file host-->other,
#by dy
reap -p "嗨,您想要拷贝到哪个服务器呢,请输入它的IP地址:  " ip
reap -p "请输入您想要拷贝过去的文件名称和它所在的位置: " file
reap -p "您想拷贝到哪个地址呢,请给它指定一个地址:" adr
scp -r $file $ip:$adr
echo "已拷贝成功!"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值