1、for FILE in $(ls); do [COMMAND]; done
创新互联-专业网站定制、快速模板网站建设、高性价比兴隆台网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式兴隆台网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖兴隆台地区。费用合理售后完善,10余年实体公司更值得信赖。
2、for a in {1..100}; do echo $RANDOM; done
3、for (( c=1; c=5; c++ )); do echo $RANDOM; done
4、for ((c=1; c21; c+=2)); do echo "Welcome $c times" ; done
5、for line in $(cat user.txt); do getent shadow $line; done
6、for FILE in $(cat file); do tar zcf $FILE.tar.gz $FILE;rm -rf $FILE; done
7、# awk计算所有行所有区域的总和
awk '{for (i=1; i=NF; i++) s=s+$i}; END{print s}'
额,目测没有这样的程序。
不过可以自己写一个c的实现
#include stdio.h
#include stdlib.h
int main(int argc, char *argv[])
{
int i, res = 0;
for (i = 1; i argc; i++)
res += atoi(argv[i]);
printf("%d", res);
return 0;
}
匆忙写的,可能有问题,见谅。
编译后用 ./a.out 1 2 3 4 5...... numberN调用即可。
因为使用管道后,生成了一个子shell,子shell里面的变量和外面的变量不是同一个变量,虽然变量名称是一样的。所以循环结束后,父shell的变量仍然没有变动。