linux - 从逗号分隔变量到列表的 bash 文本操作

标签 linux bash text-manipulation

我是在 bash 中操作文本的新手,非常感谢任何建议!

我在脚本的早期使用了一个变量,其格式如下:

runlist=echo 10,19,25,32

实际数字和列出的数字数量在不同的迭代中有所不同。它们将始终为 2 位数字。我需要这种格式的变量用于第一步。但在脚本的后面,我想将这些数字打印到一个临时文本文件中,像这样单列

cat tmp_runlist.txt
10
19
25
32

我尝试使用 IFS=',' 但发现它也修改了 runlist 变量,该变量在脚本末尾再次使用。我一直在探索使用 cutawk 但需要一些可以灵活地捕获逗号之间的字符而不是在回车之前使用逗号的东西。

提前感谢您的想法:)

最佳答案

我会假设,而不是

runlist=echo 10,19,25,32

你的意思是

runlist=$(echo 10,19,25,32)

...或者只是

runlist=10,19,25,32

在那种情况下,最简单的方法应该是使用

echo "$runlist" | tr , '\n'

如果真的是

runlist=echo 10,19,25,32

那么你可能会用

echo "$runlist" | sed 's/^echo *//;s/,/\n/g'

关于linux - 从逗号分隔变量到列表的 bash 文本操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28819595/

相关文章:

python - 在 VS Code 中为 python 脚本运行终端?

c++ - 是否可以识别与某些头文件对应的库?

linux - Unix,替换错误错误?

bash - 并排连接两个文件,附加字段之间的差异,并以表格格式打印

bash - 从 jenkins 中的 docker 容器运行命令时没有日志

bash - 提取赋值表达式的值

linux - 如何在并发运行的不同进程上多次使用同一个 Linux 程序加载内存地址?

Linux - 如何从另一个文件夹访问/执行文件而不更改文件夹

ruby-on-rails - 如何将文本合并在一起?就像版本控制系统一样?

vim - 如何自动计算和更改文本文件(Java 类)中的数字?