Bash:
阅读文本文件

How to: (如何操作:)

# Reading a whole file with 'cat'
cat myfile.txt

# Reading line by line using a while loop
while IFS= read -r line
do
  echo "Line: $line"
done < "myfile.txt"

输出示例:

Line: 第一行内容
Line: 第二行内容
...

Deep Dive (深入钻研)

历史上,文本文件始终是信息交换的基础。Unix哲学强调使用简单的、文本形式的数据交换格式。Bash 借此传统,内置了许多读取文本文件的工具,如 cat, less, grep。而 bash 脚本中,读取文件通常用 cat 一次性读取; 或者 read 命令配合循环逐行读取。逐行读取允许你在读取过程中处理每一行数据,比如过滤或替换文本。

除了Bash内置命令,也有awksed等文本处理工具。它们功能强大,用于复杂文本处理。

每种方法都有其场景。快速查看文件内容用 catless。需要复杂处理时,awksed可能更合适。要注意的是,对于大文件,一次性读取可能会占用大量内存,逐行读取更有效。

See Also (另请参阅)