for line in `cat $filename`
do
echo $line
done
或者
for line in $(cat $filename)
do
echo $line
done
二、使用while循环
while read -r line
do
echo $line
done <$filename
While循环中read命令从标准输入中读取一行,并将内容保存到变量line中。在这里,-r选项保证读入的内容是原始的内容,意味着反斜杠转义的行为不会发生。输入重定向 *** 作符<file打开并读取文件file,然后将它作为read命令的标准输入
或者
cat $filename | while read LINE
do
echo $LINE
done
或者
cat datafile.txt | while myline=$(line)
do
echo "LINE:"$myline
done
while myline=$(line)
do
echo "LINE:"$myline
done <datafile.txt
或者使用read命令读取变量数据
cat datafile.txt | while read paraa parab parac
do
echo "PARAA:"$paraa
echo "PARAB:"$parab
echo "PARAC:"$parac
done
或
while read paraa parab parac
do
echo "PARAA:"$paraa
echo "PARAB:"$parab
echo "PARAC:"$parac
done <datafile.txt
在shell脚本中,用来读取文件内各个域的内容并将其赋值给Shell变量的命令是:
read -p "input a val:" val echo $val。
read - 从标准输入读取数值。这个 read 内部命令被用来从标准输入读取单行数据。这个命令可以用来读取键盘输入,当使用 重定向的时候,读取文件中的一行数据。
含义
shell script就像早期dos年代的.bat,最简单的功能就是将许多指令汇整写一起,让使用者很容易地就能够一个 *** 作执行多个命令,而shell script更是提供了数组,循环,条件以及逻辑判断等重要功能,让使用者可以直接以shell来写程序,而不必使用类似C程序语言等传统程序编写的语法。
linux脚本文件中,从文件中读取数据并赋值给变量的 *** 作方法和步骤如下:
1、首先,创建一个名�¸.shell.shçæ件ï¼vi shell.shï¼å¦ä¸å¾æ示ã
2ãå ¶æ¬¡ï¼å®æä¸è¿°æ¥éª¤åï¼è¾å ¥å¤´æ件#!/bin/bashï¼å¦ä¸å¾æ示ã
3ãæ¥çï¼å®æä¸è¿°æ¥éª¤åï¼ä¿å并æå¼æéï¼chmod +x shell.shï¼å¹¶è¿è¡ï¼./shell.shï¼å¦ä¸å¾æ示ã
4ãç¶åï¼å®æä¸è¿°æ¥éª¤åï¼è¾å ¥ä¸ä¸ªå符串ï¼å¦ä¸å¾æ示ã
5ãéåï¼å®æä¸è¿°æ¥éª¤åï¼è¦è®¡ç®ä¹ä»¥5çå¼ï¼éè¦æå¦ä¸æ¹å¼ç¼è¾shell.shï¼vi shell.shï¼èæ¬å½ä»¤ï¼å¦ä¸å¾æ示ã
6ãæåï¼ä¿åï¼å¼æéè¿è¡ï¼è¾åºä¸ä¸ªæ´æ°ï¼å¦ä¸å¾æ示ãè¿æ ·ï¼é®é¢å°±è§£å³äºã
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)