Linux 管理员 - 读取和写入文件
在 BASH 中,读取和写入文件都可以通过输入和输出重定向器完成。我们在之前的脚本中都遇到过。
#!/bin/bash
myFile = "myLines.txt"
while read -a FILENAME;
do
if [ `echo $FILENAME | grep 004` ];
then
echo "line was $FILENAME" >> LineFile.txt
break
fi
echo $FILENAME
done < $myFile
现在,我们的条件分支不再回显到终端,而是回显到名为 LineFile.txt 的文件。
从文件中读取有两种方式,cat 和 read。read 通常被认为是最佳实践。而 cat 只是传递文件中的文本流。read 意味着脚本读取实际文件并对正在读取的文件负责。
以下脚本再次读取文本文件,将每一行放入数组中,然后将数组打印到终端。
#!/bin/bash
myFile = "myLines.txt"
line = ()
while read -r FILELINE;
do
line+=($FILELINE)
done < $myFile
for i in `seq 0 ${#line[@]}`;
do
echo $i " -> " ${line[$i]}
done
以下是输出。
0 -> line001 1 -> line002 2 -> line003 3 -> line004 4 -> line005 5 -> line006 6 -> line007 7 -> line008 8 -> line009 9 -> line010
linux_admin_shell_scripting.html

