第一列达到100的时候 第二列数字从100向1 处理
第二列数字到50 第三列数字从100递增
第二列数字为0时不显示 第四列数字从1递增
=======================================================================
#!/bin/sh
num1=0
num2=0
num3=0
num4=0
num_2_bak=0
for x in {1..10000}
do
num1=$x
if [ $num2 -gt 0 ];then
num_2_bak=$num2
num2=`expr $num2 - 1`
fi
if [ $x -eq 100 ] ;then
num2=100
fi
if [ $num3 -gt 0 ] ;then
num3=`expr $num3 + 1 `
fi
if [ $num2 -eq 50 ];then
num3=100
fi
if [ $num4 -gt 0 ];then
num4=`expr $num4 + 1 `
fi
if [ $num_2_bak -eq 1 ] ;then
num4=1
num_2_bak=0
fi
if [ $num2 -ne 0 ] ;then
if [ $num3 -ne 0 ];then
echo $num1" "$num2" "$num3
else
echo $num1" "$num2
fi
else
if [ $num3 -ne 0 ];then
if [ $num4 -ne 0 ] ;then
echo $num1" "" "" "$num3" "$num4
else
echo $num1" "" "" "$num3
fi
else
echo $num1
fi
fi
sleep 0.1
done
=============================================================================================
#!/bin/bash
#循环打印1到1000
for i in 【1..1000】; do
echo $i
sleep 0.1
done
==================================================================
#!/bin/sh
#循环打印1..1000 如果是100的倍数,则显示并停止一秒
for i in 【1..1000】; do
result =`expr $1 % 100`
if [ $result -eq 0 ] ; then
echo $i '是100的倍数'
sleep 1
else $i
sleep 0.01
fi
done
================================================================
#!/bin/sh
#奇数偶数的判断
read -p '请输入一个数字: ' number
data = `expr $number % 2'
if [ $data -eq 1 ]; then
echo $number'是奇数'
else
echo $number'是偶数'
fi
==================方式二
if (( $(number) % 2 ==0)) ;then
echo $number'是偶数'
else
echo $number'是奇数'
fi
===================方式三,连接数据库
export num1
sqlplus scott/tiger@orcl<<EOF
set echo off;
set 等其他属性;
define num1=$num
spool /root/lianxi/number.txt
select mod( $num1,2) from dual;
spool off;
EOF
data=`cat number.txt`
if [ $data -eq 0 ]; then
echo $number'是偶数'
else
echo $number'是奇数'
fi
==================================================================================
vi 1.sh
#!/bin/sh
echo $1
sh 1.sh 111 aaa 5
调用第一个变量用:$1 结果就是:111
调用第二个变量用:$2 结果就是:aaa
调用第三个变量用:$3 结果就是:5
=========================================================================
(1)创建一个文件a.txt在/tmp文件夹下
(2)创建一个lianxi1文件夹
(3)使用ftp连接本机ftp服务器(127.0.0.1)
(4)进入/tmp文件夹,并下载文件a.txt到/tmp/lianxi1文件夹
(5)退出ftp模式
(6)显示下载成功
Cd Desktop
Touch kuozhan.sh
Chmod +x kuozhan.sh
Vi kuozhan.sh
#!bin/sh
If [ ! -e /tmp/a.txt ];then
Touch /tmp/a.txt
Fi
Fi [ ! -e /tmp/lianxi ];then
Mkdir /tmp/lianxi
Fi
ftp -v -n 127.0.1 << EOF
User root root123
Cd /tmp
Lcd /tmp/lianxi
Get a.txt a.txt
Bey
EOF
If [ -e /tmp/lianxi/a.txt ]
Then
Echo “下载成功”
Fi
Esc:wq
./kuozhan.sh
========================================================================
while 循环读取文件的内容
cat a.txt | while read line ---循环的逐行读取
do
echo $line
done 循环读取文件中的每一行
=======================================================================
奇数行打印*,偶数行打印#
Touch jioushu.sh
Chmod +x jioushu.sh
#!/bin/sh
#奇数偶数判断
Read -p `请输入最大数字: ` pnum
For i in `seq $pnum` ---从1开始取值
Do
If (( $i % 2 ==0 ));then ---偶数
If [ `expr $i % 2` ==0 ];then
-----第二种写法
Echo ‘#’
Else --奇数
Echo $i‘*’
fi
done
====================================
本文是一篇关于Linux Shell脚本的综合教程,涵盖各种烧脑题,包括数字处理、条件判断、循环控制、文件操作、进程控制等。通过示例代码,介绍了如何编写和运用复杂的Shell脚本,例如计数、循环打印、文件操作、定时任务等。文章适合有一定基础的Shell脚本学习者,旨在提升读者在实际问题中的解决能力。
最低0.47元/天 解锁文章
29万+

被折叠的 条评论
为什么被折叠?



