LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 774|回复: 4

如何定义变量为文本文件的一行内容?

[复制链接]
发表于 2006-4-4 17:30:20 | 显示全部楼层 |阅读模式
我的思路是这样的
for EACHLINE in `cat content.txt`
do
done

如果content.txt中每一行没有分割符,这个思路可以。
如果有分割符,比如空格或者tab,就不行了。
这种情况该如何处理?
 楼主| 发表于 2006-4-4 18:28:26 | 显示全部楼层
版主把这个重复的给删掉吧!刚才网络慢,以为没发成功呢!
回复 支持 反对

使用道具 举报

发表于 2006-4-4 22:18:24 | 显示全部楼层

  1. while read line
  2. do
  3. break
  4. done < filename

  5. echo $line
复制代码


  1. line=`head -1 filename`

  2. echo $line
复制代码


try

编辑:呵呵,不好意思,我以为第一行,你要那一行?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-4-5 06:40:53 | 显示全部楼层
我是希望做一个循环,循环次数为某一文件的行数。
比如这个文件这么写的
$ cat prog.txt
ls -l -F
make -f Makefile
...
我希望脚本第n次循环中定义变量LINE为prog.txt第n行。
这样我就可以进一步用
PROG=`echo $LINE | cut -f1`
PAR1=`echo $LINE | cut -f2`
PAR3=`echo $LINE | cut -f3`
分析出程序名称,参数1,参数2。
回复 支持 反对

使用道具 举报

发表于 2006-4-5 13:12:21 | 显示全部楼层
Post by bexley
我是希望做一个循环,循环次数为某一文件的行数。
比如这个文件这么写的
$ cat prog.txt
ls -l -F
make -f Makefile
...
我希望脚本第n次循环中定义变量LINE为prog.txt第n行。
这样我就可以进一步用
PROG=`echo $LINE | cut -f1`
PAR1=`echo $LINE | cut -f2`
PAR3=`echo $LINE | cut -f3`
分析出程序名称,参数1,参数2。

那么你就用我上面的循环,自己在加一个变量控制行数就可以了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表