shell怎么写1到n的循环,shell 循环加1
怎么样用linux命令求1到N之间质数的和篇1
#!/bin/bashfunctionfu(){f=$1i=2while(($i<$f));doif(($f%$i==0));thenreturn$ffii=$(($i+1))done}
j=2sum=0if[-n"$(echo$1|grep'^[1-9][0-9]*$')"];thenN=$1echo-n"1到$1的质数有:"while(($j<=$N));dofu$jif(($?==0));thenecho-n"$j,"sum=$(($sum+$j))j=$(($j+1))elsej=$(($j+1))fidoneecho-e"\n1到$1的所有的质数的和是$sum"elseecho"必须要有一个正整数做参数"exit0fi
包括了求质数和求和的功能,,自己把while改成untile的形式就好了,,,
可能显示不出换行所以不要复制粘贴。
shell脚本做一个循环篇2
1、看不出规律,假如是按++
#!/bin/sh
N=100
for((i=1;i<$N;i++))
{
((j=N-i))
echoID="0000:03:00.${j}",NAME="xgbe${i}"
}
2、如果没有规律,就先做一个列表文件
例如
1mgt1
2mgr2
3xgbe21
然后创建b.sh
#!/bin/sh
whilereadxy;
do
echoID="0000:03:00.${x}",NAME="${y}";
done<a.txt
shell里for循环的几种写法篇3
#从文件循环进入,注意aaa.txt每行中不能有空格,不然会有问题
foriin`cataaa.txt`
do
echo$i
done
#数字循环
foriin`seq1100`
do
echo$i
done
#while,可以无视行中的空格
whilereadline
do
echo$line
done
shell语言循环语句怎么写篇4
echo–n“input:”
readuser
if多条指令,这些命令之间相当于“and”(与)
grep$user/etc/passwd>/tmp/null
who-u|grep$userthen上边的指令都执行成功,返回值$?为0,0为真,运行then
echo"$userhaslogged"
else指令执行失败,$?为1,运行else
echo"$userhasnotlogged"
fi
shell脚本for循环,N到1递减写法篇5
为什么识别不了?
n=10
for((i=n;i>=1;i--))
do
echo$i
done在Bash下测试是可以的。
你还可以使用for。in。语句或while语句。
foriin{10..1}#这里不能用变量
do
echo$i
done
n=10
while[$n-ge1]#或while((n>=1))
do
echo$n
letn-=1
done
linuxshellfor循环怎么写篇6
去百度文库,查看完整内容>
内容来自用户:王晓波
Shell中的for循环语句与一般编程语言里的for语句有些不同,在shell中,for的作用是对一组参数都执行一个操作。其语法形式为:
forcurvarinlist
do
statements
done
列表是在for循环的内部要操作的对象,它们可以是字符串。如果它们是文件,那么这些字符串就是文件名。变量curvar是在循环内部用来指代当前所指列表中的对象的。如果希望对List中的每个值都执行一次statements,可以使用这种格式。在每一次循环中,将List中的当前值赋给curvar。list可以是包含一组元素的变量或者是用空格分开的值列表。for语句的第2种格式为:
forcurvar
do
statements
done
在这种形式中,对传递给shell程序的每个位置参数执行statements一次。在每次循环中,将位置参数的当前值赋给变量curvar。这种格式也可以写成如下所示的形式:
forcurvarin[email protected]
do
statements
done
这里的[email protected]是传递给shell程序的位置参数列表,引用的方式与用户初始调用命令时一致。
下面的shell脚本将使用for循环依次显示列表中5个变量的值,假定这些脚本位于当前用户的工作目录root/look中,其文件名为test5,内容如图15所示。
在该程序的for语句中,首先定义了一个名为var的变量,它的值依次是:one、two、three、four和five。因为有5个变量值,所以do和done之间的命令会被循环执行