当前位置: 首页 > 知识库问答 >
问题:

Echo bash变量(按分隔符)[duplicate]

何高旻
2023-03-14

我发誓前几天我偶然发现了一种方法,但我不记得了:

a="blah,test"
echo ${a[,1]}
blah

基本上,它似乎是在数组中设置一个分隔符,并指定要使用变量的哪一部分。与awk中的基本相同:

echo $a | awk -F "," '{print $1}'

我是在吃疯狂的药片,还是可能有这种事?我需要这个,因为我正在从句子中间的变量中回显文本,并且需要选择使用哪一部分。

共有1个答案

司马洲
2023-03-14
a="blah,test"
IFS=',' read -a array <<< "$a"
echo "${array[1]}"

ifs是输入字段分隔符,read使用它将行拆分为单词(参见此处)。通过-a字被分配给数组的顺序索引。<<<在这里是字符串,导致$a展开并提供给read命令。

 类似资料:
  • 问题内容: 当需要将多个目录串联在一起时(例如在可执行文件搜索路径中),存在一个与OS相关的分隔符。对于Windows ,对于Linux 。Python中有没有一种方法可以分割哪个字符? 在对这个问题的讨论中,如何使用python找出我的python路径?,建议这样做。这个答案是错误的,因为它是目录或文件名的分隔符,等于或。 问题答案:

  • 有没有办法在gridview中显示行之间的(水平)分隔线? 我试着在每个网格项目下面放置一个小的分隔线,但是这不是一个解决方案,因为当一行没有完全填满项目时,它不会跨越整行。 有没有办法在每一行之间添加一个图像?我只能找到改变行之间空间的方法。

  • 给我一个字符串“23 45”,我需要得到两个值为23的变量(int a)和值为45的变量(int b)

  • 假设我有一个Unix shell变量,如下所示 我想使用for循环提取所有值(、和),并将每个值传递到过程中。 该脚本应该允许从< code>$variable中提取任意数量的逗号分隔值。

  • 如果使用带有单个参数的第一个StringToknenizer构造函数并编写示例程序,结果是和12个令牌。它返回没有任何空格的整个句子。我明白这是怎么回事。 如果使用带有两个参数的第二个构造函数,我的测试程序将得到每个单词有空格,但没有逗号,只有两个标记。我认为它应该同时将空格和逗号作为标记分隔符计算,但它将逗号之前的所有内容作为1标记计算,将逗号之后的所有内容作为1标记计算。这部分让我很困惑。 我

  • 分隔符是一个或多个字符的序列,用于指定纯文本或其他数据中单独的独立区域之间的边界。 字段分隔符是逗号分隔值的序列。 好吧,分隔符分隔值是comma separated values (CSV)或tab-separated values (TSV)。 本章详细介绍了分隔符分隔值。 配置API (Configuring API) 我们可以使用以下语法轻松加载API。 <script src = "ht