shell练习Day1

Day3 Kali Shell基本命令 关注和公众号,这里会定期更新与 OSCP、渗透测试等相关的最新文章,帮助你理解网络安全领域的最新动态。 阅读详情

1.猜数字

#!/bin/bash

#-eq //equals等于
#-ne //no equals不等于
#-gt //greater than 大于
#-lt //less than小于
#-ge //greater equals大于等于
#-le //less equals小于等于

#注:
#1 在shell中进行比较时,结果为0代表真,为1代表假。
#2 -eq,-ne等比较符只能用于数字比较,有字符也会先转换成数字然后进行比较。

echo "Welcome to NumberGuessing game!"

num=$[RANDOM%100+1]
tell_num=$(((( $num/10  ))*10))
cycle=0
while :
do
    read -p "Please input the number you guess:" GuessNumb

    if [ $GuessNumb -eq $num ];then
        echo "Bingo! You win!"
    exit
    elif [ $GuessNumb -gt $num ];then
        echo "Wrong numb! Your numb is greater than real numb."
    else
        echo "Wrong numb! Your numb is less than real numb."
    fi
    cycle=$[ $cycle+1 ]
    if [ $cycle -eq 3 ];then
        echo "You have tried 3 times, the real numb is closed to $tell_num"
    elif [ $cycle -gt 6  ];then
        echo "You have tried more than 6 times, the real numb is $num"
        echo "You lost!"
        exit
    else
        continue
    fi
done

2.石头剪刀布

#!/bin/bash

echo "Welcome to Rock Scissor Paper game!"
echo "Please input like the following examples."
echo "1.Rock"
echo "2.Scissor"
echo "3.Paper"

array=(Rock Scissor Paper)
num=$(expr $RANDOM % 2 + 1)

#computer=${array[$num]}

read -p "Please input you number(1-3):" number

case $num in
1)
    if [ $number -eq 1 ];then
        echo "Play even."
    elif [ $number -eq 2 ];then
        echo "You lost."
    elif [ $number -eq 3 ];then
        echo "You win."
    else
        echo "Please input correct number(1-3)"
    fi;;
2)
    if [ $number -eq 1 ];then
        echo "You win."
    elif [ $number -eq 2 ];then
        echo "Play even."
    elif [ $number -eq 3 ];then
        echo "You lost."
    else
        echo "Please input correct number(1-3)"
    fi;;
3)
    if [ $number -eq 1 ];then
        echo "You lost."
    elif [ $number -eq 2 ];then
        echo "You win."
    elif [ $number -eq 3];then
        echo "Play even."
    else
        echo "Please input correct number(1-3)"
    fi;;
*)
    echo "error number"
esac

3.三个数,从小到大排序

#!/bin/bash

read -p "Please input your first num:" num1
read -p "Please input your second num:" num2
read -p "Please input your third num:" num3

temp=0
if [ $num1 -gt $num2 ];then
    temp=$num1
    num1=$num2
    num2=$temp
fi

if [ $num1 -gt $num3 ];then
    temp=$num1
    num1=$num3
    num3=$temp
fi

if [ $num2 -gt $num3 ];then
    temp=$num2
    num2=$num3
    num3=$temp
fi

echo "$num1,$num2,$num3"

4.1-100求和

#!/bin/bash
#1-100求和
sum=0
for i in `seq 100`
do
    sum=$[sum+i]
done

echo $sum

shell中if条件字符串、数字比对,[[ ]]和[ ]区别 先说[]和test,两者是一样的,在命令行里test expr和[ expr ]的效果相同。test的三个基本作用是判断文件、判断字符串、判断整数。支持使用与或非将表达式连接起来。要注意的有: 1.test中可用的比较运算符只有==和!=,两者都是用于字符串比较的,不可用于整数比较,整数比较只能使用-eq, -gt这种形式。无论是字符串比较还是整数比较都千万不要使用大于号小于号。当然,如... 阅读详情

相关推荐

Shell比较两个文本

awk内置参数$0表示整行,$1,$2...分别表示各域,内置参数NR,表示记录的计数,awk '{print NR, $0}' file1 file2表示依次读取file1 file2,打印出每行,并且在前面添加行号。方法一中的前一部分,在文件file1中匹配模板来反向匹配文件file2中的内容,即输出文件file2中,在file1中没有内容。命令comm的功能就是逐行比较两个排序好的文件,默认输出有三列:只在file1中有的行,只在file2中有的行,file1和file2中共同有的部分。

xiaoqixiaoguai的博客 2777

shell脚本

一。shell简单脚本 创建hello.sh文件 编辑hello.sh文件 内容:echo “hello world” 执行hello.sh文件 输出内容hello world 二。变量设置(首字母为a-z,A-Z只能用_连接) 三。设置背景颜色 四if语句 if 与‘['之间加空格。 ‘=’两边必须也得加空格。[]前后要加空格 可以根据输入的参数输出($0:表示文件名 $1:表示文件名后的第一个参数 $2:表示第二个,以此类推。) 五。循环判断主机是否连通 1.不管通不通都返回no;因为标准输出

mingzirenyichang的博客 246

linux shell 流程控制(条件if,循环【for,while】,选择【case】语句实例

linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法。 一、shell条件语句(if用法) if语句结构[if/then/elif/else/fi] if 条件测试语句 then action [elif 条件 action else action...

weixin_30344795的博客 797

[Bash基础] 0表示真,1表示假 + 解释

例子: touch item01.txt test -e item01.txt echo $? 输出:0 一种解释: (隐含前提:习惯上我们会更关注“0”或“非0”的划分) 在bash语言中,0, 1只表示返回状态码。 而作为状态码,我们希望“成功”是一种返回,“失败”则有多种返回,对应多种出错信息。 而0只有一种类型;如果返回非零数字,则有1~255,可以表示各种错误。一些常见的错误码如下: Table1.ReservedExit Codes 状态码 描述 0 ...

mathemagics的博客 1493

shell练习day1

题目要求 1.检查输入的路径是否为空,如果路径为空,提示输入一个存储在的路径 2.检查输入的路径是个文件还是目录,如果不是文件,也不是目录,把它创建为文件 3.如果路径是个文件,把/bin/所有的文件保存到文本中 思路 这里涉及到 shell 的test语句,test命令的博文,可以先看一下这篇博文,熟悉一下test命令是如何使用的,然后根据题目,先来一个循环,执行体包含提示用户输入,并且判断输入...

荆州张球王的博客 324

DAY1 shell练习

DAY1 2016/12/31 1、编写shell脚本,计算1-100的和; $ cat sum_day1.sh #!/bin/bash ...

cjb07031300的博客 157

shell脚本练习---day1

1、编写脚本 argsnum.sh,接受一个文件路径作为参数;如果参数个数小于 1,则提示用户“至少应该给一个参数”,并立即退出;如果参数个数不小于 1,则显示第一个参数所指向的文件中的空白行数; #!/bin/bash # #********************************************************************** #Author: awakening #QQ:

weixin_50904580的博客 538

shell练习day1,终端打开执行bash

shell练习二,terminnal启动,运行命令 编写脚本,实现每一次打开终端,就执行脚本自动记录什么时候打开过终端,把数据记录到一个叫 terminal.log 存放在Desktop "open terminal at: date" //启动终端,在bashrc运行脚本,脚本启动,判断terminal.log是否存在,如果否,创建,然后把数据写到日志中 如果存在,直接写里面 //启动终端,在b...

荆州张球王的博客 515

shell脚本练习1

【代码】shell脚本练习1

m0_74028286的博客 357

Day1 C 高级 shell指令

weixin_42019010的博客 227

shell DAY1

1.Shell介绍 2.命令历史 3.命令补全和别名 4.通配符 5.输入输出重定向 Shell介绍 什么是shell shell是一个命令解释器,提供用户和机器之间的交互 支持特定...

112

SHELL DAY1

可以包括数字、字母、下划线不能以数字开头变量名区分大小写赋值时等号两边不要有空格尽量不要使用关键字和特殊字符给同一个变量多次赋值时,最后一次的赋值生效$$保存当前运行进程的(PID)号保存命令执行结果的(返回状态)$0保存当前运行的(进程名)或(脚本名)$#保存位置变量的(个数)$*保存所有位置变量的(值)保存后台(最后一个进程)的PID号。

ShiLiu_mtx的博客 799

linux shell 脚本练习,Linux Shell练习小例子

原标题:Linux Shell练习小例子1、安装cmatrix准备工具包安装Url:wget http://www.asty.org/cmatrix/dist/cmatrix-1.2a.tar.gz如果连接不能正确显示,下面是URL地址 我在下载的时候出现问题 官网上这个页面找不到 在网上下载一个包,上传到虚拟机中 解压文件 进入目录 安装yum install ncurses-devel –y ...

weixin_36048947的博客 360

系统编程day1-shell

文章摘要:本文介绍了Shell编程的基础知识,包括Shell的概念、作用及分类(解释型语言与编译型语言的区别)。重点讲解了Shell脚本的执行方式、变量定义与操作(取值、清除、只读变量)、条件测试语句(文本、字符串、数值测试)以及流程控制结构(if、case、for、while等)。同时涵盖了函数定义与调用方法,并对比了不同括号()和{}的作用域差异。通过具体代码示例,帮助读者理解Shell脚本的语法特性和应用场景,为系统编程学习打下基础。全文约1500字,包含30余个代码片段。

学习嵌入式的人捏 1249

day1shell

shell

m0_59550403的博客 110

Shell脚本完成练习03

1、编写脚本,判断当前系统剩余内存大小,如果低于100M,邮件报警管理员,使用计划任务,每10分钟检查一次。 综合练习 第一题 1.判断某个文件是否存在,若不存在则给一个Filename does not exist的信息,并终端程序; -e file 检测文件(包括目录)是否存在,如果存在,返回true [ -r $file ] 返回 true。 2.若文件存在,则判断它是文件或者目录,结果输出Filename is regular

weixin_46616161的博客 851

Shell脚本学习-阶段二十八-shell练习

文章目录-练习2前言1.编写shell脚本程序,完成如下功能: 输出hello world !2.编写shell脚本程序,完成如下功能: 输入你的姓名,输出 hello, nice to meet you 你的姓名!3.编写shell脚本程序,完成如下功能: 输出当前登录用户的身份及当前所在目录(使用whoami及pwd命令)4.编写shell脚本程序,完成如下功能: 输入一个合法的目录名, 判断当前目录是否存在该目录, 如果不存在则创建目录, 如果存在则输出提示信息5..

qq_43058317的博客 1997

Shell day1

shell介绍 shell是一段应用程序,是用户和操作系统交互的桥梁,它是弱类型语言,不需要指定变量的类型 shell脚本是以sh结尾的文件 sh文件的第一行内容为#!/bin/bash,表示使用shell进行编程 shell注释:# shell语法 变量 变量名=变量值,等于号两边不能有空格 变量名规范 不能以数字开头,字母、数字、下划线组成 输出变量内容echo $变量名 变量的释放 unset 变量名 特殊的变量 带有空格的变量定义 双引号如果变量值存在变量名的话,那么输出结果就是变量名对应的变量值,

weixin_44747653的博客 287
上一篇: C++ Primer Plus 第二章练习题答案
下一篇: shell练习Day2
阿凯kk
博客等级 码龄6年 0粉丝 · 3原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿凯kk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值