我一直在从我创建的文件中读取行,并希望使用变量并避免写入存储。不确定这是否可以轻松完成。工作代码开始如下
sensors | grep "Core" > temp.tmp
input=./temp.tmp
while IFS= read -r line
do
--etc--
done < "$input"
Run Code Online (Sandbox Code Playgroud)
以上工作正常,但我需要为临时文件找到一个合适的位置,并认为我可以完全避免写入存储。尝试了以下
input=`sensors | grep "Core"`
while IFS= read -r line
do
--etc--
done < "$input"
Run Code Online (Sandbox Code Playgroud)
这不起作用,因为换行符被删除,并且变量有一个巨大的“行”,可以一次全部读入。变量字符串有“)”,它以正确的位置结尾以用作分隔符,但“读取”键在换行符上。有什么容易解决的吗?
..感谢您的关注...
你甚至不需要变量,更不用说文件了:
sensors | grep "Core" | while IFS= read -r line
do
command
done
Run Code Online (Sandbox Code Playgroud)
但是,是的,您也可以从变量中读取:
input=$(sensors | grep Core)
$ while IFS= read -r line; do echo "$line"; done <<<"$input"
Core 0: +80.0°C (high = +100.0°C, crit = +100.0°C)
Core 1: +80.0°C (high = +100.0°C, crit = +100.0°C)
Core 2: +81.0°C (high = +100.0°C, crit = +100.0°C)
Core 3: +80.0°C (high = +100.0°C, crit = +100.0°C)
Run Code Online (Sandbox Code Playgroud)
有关<<<运营商及其兄弟的更多详细信息,请参阅:
| 归档时间: |
|
| 查看次数: |
257 次 |
| 最近记录: |