gpt4 book ai didi

bash - 如何在 shell 脚本中创建双引号字符串行数组

转载 作者:行者123 更新时间:2023-11-29 09:31:51 27 4
gpt4 key购买 nike

我正在尝试将带有双引号字符串的行拆分为一个数组:

输入.txt:

"ABC" "This is TEST 1" "12.3.0"    
"AC" "This is TEST 221" "123"
"CX" "This is TEST 16" "123.2"
"LM" "This is TEST 9000" "123.6.6.1"

我希望每一行的结果是什么:

print $a[0] $a[1] $a[2]

ABC This is TEST 1 12.3.0

如何最好地抓取每行的每个字符串?我正在尝试通过命令行和/或 shell 脚本执行此操作

更新:为了帮助降低复杂性,我更新了我的“input.txt”文件,如下所示:输入.txt:

'ABC' 'This is TEST 1' '12.3.0'    
'AC' 'This is "TEST" 221' '123'
'CX' 'This is TEST 16' '123.2'
'LM' 'This is TEST 9000' '123.6.6.1'

所有的双引号都被替换为单引号,除了那些带有值的。

最佳答案

假设您正在使用 bash:

IFS='"' a=("ABC" "This is TEST1" "12.3.0")

应该差不多可以用了。索引将关闭,条目为空,但是:

 while IFS='"' read -a a; do 
echo ${a[1]} ${a[3]} ${a[5]}; done < input

让您完成大部分工作。请记住,这是非常脆弱的。

关于bash - 如何在 shell 脚本中创建双引号字符串行数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27517040/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com