循环计数

sh/bash/dash/ksh/zsh等Shell脚本
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#16

帖子 syfnet » 2009-08-09 12:04

roylez 写了:

代码: 全选

for i in {1..100} ; do echo $i ; done
roylez的方法不行。我放到循环后,执行结果显示了{1..100}。

怎么回事?
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 循环计数

#17

帖子 BigSnake.NET » 2009-08-09 12:13

syfnet 写了:
O_O_BOT 写了:irc <iNutshell> say: for i in `seq 100` ; do echo $i ; done
已经在循环之中,这个循环语句好像放不到里面。
我想定义一个变量,每执行一个循环便使这个变量+1,然后显示这个变量。
什么叫"放不到里面"
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

Re: 循环计数

#18

帖子 roylez » 2009-08-09 14:00

syfnet 写了:
roylez 写了:

代码: 全选

for i in {1..100} ; do echo $i ; done
roylez的方法不行。我放到循环后,执行结果显示了{1..100}。

怎么回事?
也许你的bash版本不够新不支持这种语法。

代码: 全选

roylez@Lancelot:~/workspace/ib/prog$ bash --version
GNU bash, version 4.0.28(2)-release (i686-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
弄个dropbox空间来备份文件或者做私人代码服务器
配置:[url]git://github.com/roylez/dotfiles.git[/url]
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#19

帖子 syfnet » 2009-08-09 16:04

怎么升级bash,我的是3.X版本的。用apt-get upgrade bash好像不行
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

Re: 循环计数

#20

帖子 roylez » 2009-08-09 17:31

升级不着急吧?seq也可以用的,只要脚本能用就行了。

我用的是archlinux,估计下个版本的ubuntu很快就会升级过去了。
弄个dropbox空间来备份文件或者做私人代码服务器
配置:[url]git://github.com/roylez/dotfiles.git[/url]
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#21

帖子 syfnet » 2009-08-09 20:05

我的很多必需程序用ubuntu编译都不成功。非常烦恼。 :em06

roylez先生推荐一个比较好的linux用一下。主要用于计算和编译程序。redflag用过也不行。
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#22

帖子 syfnet » 2009-08-09 20:34

BigSnake.NET 写了:
syfnet 写了:
O_O_BOT 写了:irc <iNutshell> say: for i in `seq 100` ; do echo $i ; done
已经在循环之中,这个循环语句好像放不到里面。
我想定义一个变量,每执行一个循环便使这个变量+1,然后显示这个变量。
什么叫"放不到里面"
这个语句是这么放到我的脚本中吗?
for i in `seq 100`
for f in ZI*.pd; do
b=`basename $f .pdbqt`
echo Processing ligand $b
do echo $i
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
done
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 循环计数

#23

帖子 BigSnake.NET » 2009-08-09 21:19

你这几句什么意思啊。。。 乱七八糟的
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#24

帖子 syfnet » 2009-08-09 21:39

这个是别人编好的可用的脚本。

代码: 全选

for f in ZI*.pd; do
b=`basename $f .pdbqt`
[color=#0000FF]echo Processing ligand $b[/color]
do echo $i
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
在蓝色的字下面一行我要显示进行到第几个循环,如何写进去?
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 循环计数

#25

帖子 eexpress » 2009-08-09 21:42

自己去坚持看完下1,2个教程吧。
● 鸣学
头像
roylez
帖子: 1928
注册时间: 2005-10-04 10:59
来自: 上海

Re: 循环计数

#26

帖子 roylez » 2009-08-09 21:44

i=1
for f in ZI*.pd; do
b=`basename $f .pdbqt`
echo Processing ligand $b
echo $i
i=$((i+1))
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
弄个dropbox空间来备份文件或者做私人代码服务器
配置:[url]git://github.com/roylez/dotfiles.git[/url]
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#27

帖子 syfnet » 2009-08-09 22:01

roylez 写了:i=1
for f in ZI*.pd; do
b=`basename $f .pdbqt`
echo Processing ligand $b
echo $i
i=$((i+1))
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
:em11 终于成功。学习了。还望推荐一个编译功能比较全面的linux,这个ubuntu编译我的很多必需程序都告失败。 :em20
头像
yingfei
帖子: 273
注册时间: 2007-09-03 18:34
来自: 羊城通

Re: 循环计数

#28

帖子 yingfei » 2009-08-10 17:33

syfnet 写了:
roylez 写了:i=1
for f in ZI*.pd; do
b=`basename $f .pdbqt`
echo Processing ligand $b
echo $i
i=$((i+1))
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
:em11 终于成功。学习了。还望推荐一个编译功能比较全面的linux,这个ubuntu编译我的很多必需程序都告失败。 :em20

Ubuntu 默认没装那么多编译的东西。 要编译的可以看看 Gentoo。 它大部分都是编译出来的。编译环境肯定没问题了。。
头像
BigSnake.NET
帖子: 12522
注册时间: 2006-07-02 11:16
来自: 廣州
联系:

Re: 循环计数

#29

帖子 BigSnake.NET » 2009-08-10 18:33

syfnet 写了:这个是别人编好的可用的脚本。

代码: 全选

for f in ZI*.pd; do
b=`basename $f .pdbqt`
[color=#0000FF]echo Processing ligand $b[/color]
do echo $i
mkdir -p $b
vv --config conf --ligand $f --out ${b}/out.pdbqt --log ${b}/log.txt
rm $b.pdbqt
done
在蓝色的字下面一行我要显示进行到第几个循环,如何写进去?
显然有问题啊.. 怎么会有两个 do
^_^ ~~~
要理解递归,首先要理解递归。

地球人都知道,理论上,理论跟实际是没有差别的,但实际上,理论跟实际的差别是相当大滴。
syfnet
帖子: 213
注册时间: 2009-07-13 16:23

Re: 循环计数

#30

帖子 syfnet » 2009-08-11 10:36

gentoo看来也很难用阿。U盘都不能访问。痛苦中
回复