首页 > 综合知识 > shell脚本for循环,N到1递减写法|shell怎么写1到n的循环

shell脚本for循环,N到1递减写法|shell怎么写1到n的循环

   来源:人文屋    阅读: 3.09W 次
字号:

用手机扫描二维码 在手机上继续观看

手机查看
1.shell脚本for循环,N到1递减写法

为什么识别不了?

shell怎么写1到n的循环 shell脚本for循环,N到1递减写法

n=10

for ((i=n;i>=1;i--))

do

echo $i

done在Bash下测试是可以的。

你还可以使用for。in。语句或while语句。

for i in {10..1} #这里不能用变量

do

echo $i

done

n=10

while [ $n -ge 1 ] #或 while ((n>=1))

do

echo $n

let n-=1

done

2.shell语言 循环语句怎么写

echo –n “input:”

read user

if 多条指令,这些命令之间相当于“and”(与)

grep $user /etc/passwd >/tmp/null

who -u | grep $user then 上边的指令都执行成功,返回值$?为0,0为真,运行then

echo "$user has logged"

else 指令执行失败,$?为1,运行else

echo "$user has not logged"

fi

3.怎么样用linux命令求1到N之间质数的和

#!/bin/bashfunction fu(){ f=$1 i=2 while (($i<$f));do if (($f%$i==0));then return $f fi i=$(($i+1)) done}

j=2sum=0if [ -n "$(echo $1 | grep '^[1-9][0-9]*$')" ];then N=$1 echo -n "1到$1的质数有:" while (($j<=$N));do fu $j if (($?==0));then echo -n "$j," sum=$(($sum+$j)) j=$(($j+1)) else j=$(($j+1)) fi done echo -e "n1到$1的所有的质数的和是$sum"else echo "必须要有一个正整数做参数" exit 0fi

包括了求质数和求和的功能,,自己把while改成untile的形式就好了,,,

可能显示不出换行所以不要复制粘贴。

4.shell里for循环的几种写法

#从文件循环进入,注意aaa.txt每行中不能有空格,不然会有问题

for i in `cat aaa.txt`

do

echo $i

done

#数字循环

for i in `seq 1 100`

do

echo $i

done

#while,可以无视行中的空格

while read line

do

echo $line

done

5.linux shell for循环怎么写

去百度文库,查看完整内容>

内容来自用户:王晓波

Shell中的for循环语句与一般编程语言里的for语句有些不同,在shell中,for的作用是对一组参数都执行一个操作。其语法形式为:

for curvar in list

do

statements

done

列表是在for循环的内部要操作的对象,它们可以是字符串。如果它们是文件,那么这些字符串就是文件名。变量curvar是在循环内部用来指代当前所指列表中的对象的。如果希望对List中的每个值都执行一次statements,可以使用这种格式。在每一次循环中,将List中的当前值赋给curvar。list可以是包含一组元素的变量或者是用空格分开的值列表。for语句的第2种格式为:

for curvar

do

statements

done

在这种形式中,对传递给shell程序的每个位置参数执行statements一次。在每次循环中,将位置参数的当前值赋给变量curvar。这种格式也可以写成如下所示的形式:

for curvar in $@

do

statements

done

这里的$@是传递给shell程序的位置参数列表,引用的方式与用户初始调用命令时一致。

下面的shell脚本将使用for循环依次显示列表中5个变量的值,假定这些脚本位于当前用户的工作目录root/look中,其文件名为test5,内容如图15所示。

在该程序的for语句中,首先定义了一个名为var的变量,它的值依次是:one、two、three、four和five。因为有5个变量值,所以do和done之间的命令会被循环执行

6.shell脚本做一个循环

1、看不出规律,假如是按++

#!/bin/sh

N=100

for((i=1;i<$N;i++))

{

((j=N-i))

echo ID="0000:03:00.${j}",NAME="xgbe${i}"

}

2、如果没有规律,就先做一个列表文件

例如

1 mgt1

2 mgr2

3 xgbe21

然后创建b.sh

#!/bin/sh

while read x y;

do

echo ID="0000:03:00.${x}",NAME="${y}";

done < a.txt

学习教育
IT科技
财经金融
旅游出行
生活妙招
美食美味
健康养生
体育健身