linux - 将一个变量一个一个地剪切到它的字段

标签 linux bash

我有一个这样的变量(制表符分隔):

“a b c d”

我想一个一个地读取字段,但问题是字段的数量不固定,我的意思是变量可能不包含字段或 3 个字段或 100 个字段或更多。

我不知道最好的处理方式。 谁能告诉我一个好方法?

最佳答案

这是我目前发现的:

$ x=$'a a\t*\t c\td\te'

$x 是我的测试变量,包含制表符分隔的字段。

$ IFS=$'\t'

单词仅由制表符分隔,不使用空格或换行符。

$ set -f

禁用通配。

$ for i in $x; do echo "$i"; done
a a
*
 c
d
e

使用 $i 中的每个元素循环遍历 $x 中的单词。

关于linux - 将一个变量一个一个地剪切到它的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15083064/

相关文章:

c++ - 通过 recvfrom (UDP) 接收一部分数据包

linux - CPU 亲和性是否在系统调用之间强制执行?

bash - 在 bash 中解析配置文件

ruby - 如何在 ruby​​ cli 中使用 bash clear

linux - 使用 lftp 比较远程目录而不执行传输

android - 无法在 Android 中加载固件

linux - Cacti 内存图表未显示正确的图表值?

bash - 获取实际提示长度

linux - 根据 AWS "--profile"更改用户的命令提示符颜色

bash - 为什么波浪号 (~) 不在双引号内展开?