![读取文件的第一行,给定 BASH 中的文件路径](https://linux22.com/image/750214/%E8%AF%BB%E5%8F%96%E6%96%87%E4%BB%B6%E7%9A%84%E7%AC%AC%E4%B8%80%E8%A1%8C%EF%BC%8C%E7%BB%99%E5%AE%9A%20BASH%20%E4%B8%AD%E7%9A%84%E6%96%87%E4%BB%B6%E8%B7%AF%E5%BE%84.png)
我有一个文件存储在某个位置/x/y/z/file.txt
。此文件中仅存储了一个无符号整数。
我如何读取它并将其存储到变量中?
答案1
您可以执行以下操作:
var=$(cat /x/y/z/file.txt)
上述命令将打印文件并将输出分配给 var 变量。
如果您只想明确抓取第一行,您可以做另一件事:
var=$(head -1 /x/y/z/file.txt)
答案2
另一个选择是使用read
内置命令:
IFS= read -r var </x/y/z/file.txt
IFS=
和位-r
用于默认禁用某些“有用”的功能read
- 删除行首和行末的空格(前缀IFS=
禁用此功能),并将反斜杠处理为转义/连续标记(选项-r
禁用此功能)。