bash - 将输出拆分为两个变量
问题描述
我正在尝试使用 tvservice 命令将树莓派分辨率读取到两个变量中:X 和 Y。
运行时:
tvservice --status | awk '{print $9}'
我正进入(状态:
1920x1800
这正是我正在寻找的。
我想弄清楚的是如何将它们拆分为两个 bash 变量,其中 X=1920 和 Y=1800,以便稍后在我的脚本中使用它们。
解决方案
请您尝试以下操作。我们在这里简单地创建了 2 个名为X
andY
的变量,尽管打印了它们,但$9
我们使用split
函数将其拆分awk
,然后为变量 X 打印它们的第一个元素,为第二个元素打印第二个元素。
X=$(tvservice --status | awk '{split($9,array,"x");print array[1]}')
Y=$(tvservice --status | awk '{split($9,array,"x");print array[2]}')
推荐阅读
- python - 我想编写一个函数 distance(x, y),它以两个向量作为输入并输出它们之间的距离
- python - 如何在没有*任何*假设的情况下安装 Beautiful Soup 4
- java - 为什么我必须将泛型方法称为类。
func() 插入 func() 在它自己的类里面? - c# - ASP.Net CORE 请求端点并从端点解析随机字符串
- reactjs - CORS 在开发模式下工作而不是在生产中。ExpressJS / ReactJS
- julia - 将 `missing` 参数传递给 Turing.jl 中的伯努利模型
- postgresql - How to import a Postgres 9.4 extension in windows?
- gitlab - 从 appveyor 构建推送到远程 gitlab Git 存储库
- parse-platform - Parse Server 主密钥可以为每个实例随机化吗?
- azure - Azure SSIS 包 - 执行 SQL 任务