如何将两个变量及其值输出到文件

大卫

我在这个任务上有些挣扎,例如,我可以做一个简单的循环以使用for循环将变量值发送到文件中。但是如何在输出可变值之前得到一些东西呢?我做了这样的事情作为一种解决方法:

list="$1\n$2\n$3"
varNames=$'var1=\nvar2=\nvar3='


for i in $varNames $list; do
    echo -e $varNames$list > "vars-$(date +%Y-%m-%d_%H.%M).file"
done

但是我无法获得正确的循环来遍历两个列表中的每个项目,但是我得到的输出是:

var1= var2= var3=$1
$2
$3

在$ 1,$ 2,$ 3以上是我之前创建的变量的正确值。我在此循环中缺少什么?创建两个列表的好方法还是以后可以由某些sed处理?

谢谢!

Lu

脚本中的行几乎有很多问题,我假设每个步骤都按预期工作,所以我尝试一步一步地进行操作。

1。

list="$1\n$2\n$3"

这将行不通,因为\n不会用换行符代替,您将需要以下内容:

list="$1"$'\n'"$2"$'\n'"$3"

或者

list="$1
$2
$3"

2。

for i in $varNames $list; do

假设您已修复(1),则此循环将运行6次(免责声明,请参见此最后一句)。每个和$varNames和一次$list,我认为这不是故意的。另外,当您像这样循环时,变量不会被换行符分割,而是被分割$IFS它默认为换行符,空格或制表符。这样就可以了,但是知道了,您也可以list="$1 $2 $3"在(1)中使用。如果您知道这些变量中的每一个都不包含换行符,空格或制表符,那么这当然是可行的。

3。

echo -e $varNames$list

输出整个变量,而不仅仅是输出的拆分部分$i

4,

您会为每次迭代覆盖整个文件。更好地使用

for ...; do ... done > file

所以现在怎么办?

我认为您无法轻松地按原样修复您的代码。相反,您应该使用bash数组并遍历键:

#!/bin/bash

list=("$1" "$2" "$3")
varNames=("var1" "var2" "var3")

for k in "${!varNames[@]}"; do
    printf '%s=%s\n' "${varNames[$k]}" "${list[$k]}"
done > "vars-$(date +%Y-%m-%d_%H.%M).file"

我更喜欢使用printf请参阅此),但是echo如果您不在乎,也可以使用类似的方式...

echo "${varNames[$k]}=${list[$k]}"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将变量输出到文件?

来自分类Dev

如何将两个活动的两个数字相加并输出到第三个活动

来自分类Dev

如何将单词及其频率写到CSV文件的两个单独的列中

来自分类Dev

如何将.txt中的两个值分隔为两个不同的文件?

来自分类常见问题

如何将两个RMarkdown(.Rmd)文件合并为一个输出?

来自分类Dev

我如何将两个或多个值/变量连接到laravel中的新变量

来自分类Dev

Python一个打印命令两个变量将两个不同的行输出到屏幕

来自分类Dev

使用awk将两个模式之间的行输出到不同的输出文件中

来自分类Dev

如何将标准输出和标准错误发送到两个文件

来自分类Dev

如何将一行中的两个值放入bash中的两个变量?

来自分类Dev

如果我有两个列表,如何将它们的值导出到excel文件中?

来自分类Dev

如何将两个命令输出逐行合并?

来自分类Dev

如何将两个变量的数据写入文件python

来自分类Dev

如何将mysql输出输出到php变量?

来自分类Dev

如何使用grep将输出分为两个文件?

来自分类Dev

如何在单独的行上将两个回声输出到文本文件

来自分类Dev

如何将一个文本文件中的值配对并使用 Pandas 将结果输出到一个单独的文件?

来自分类Dev

如何将两个选择值相乘 SQL

来自分类Dev

如何将两个连续的输入分配给两个不同的变量?

来自分类Dev

如何将文件输出到2个不同的文件夹

来自分类Dev

如何将pygame.image.save输出到变量而不是文件?

来自分类Dev

如何将两个JSON文件与熊猫合并

来自分类Dev

如何将.html文件输出到.doc文件Django

来自分类Dev

如何将值输出到一个列表而不是多个列表?

来自分类Dev

如何将for循环内的整数作为十六进制值输出到文件

来自分类Dev

如何将for循环内的整数作为十六进制值输出到文件

来自分类Dev

如何将数据从两个SAS数据集中正确导出到一个XML数据文件?

来自分类Dev

如何将javascript变量输出到控制台?

来自分类Dev

如何将awk结果输出到变量

Related 相关文章

  1. 1

    如何将变量输出到文件?

  2. 2

    如何将两个活动的两个数字相加并输出到第三个活动

  3. 3

    如何将单词及其频率写到CSV文件的两个单独的列中

  4. 4

    如何将.txt中的两个值分隔为两个不同的文件?

  5. 5

    如何将两个RMarkdown(.Rmd)文件合并为一个输出?

  6. 6

    我如何将两个或多个值/变量连接到laravel中的新变量

  7. 7

    Python一个打印命令两个变量将两个不同的行输出到屏幕

  8. 8

    使用awk将两个模式之间的行输出到不同的输出文件中

  9. 9

    如何将标准输出和标准错误发送到两个文件

  10. 10

    如何将一行中的两个值放入bash中的两个变量?

  11. 11

    如果我有两个列表,如何将它们的值导出到excel文件中?

  12. 12

    如何将两个命令输出逐行合并?

  13. 13

    如何将两个变量的数据写入文件python

  14. 14

    如何将mysql输出输出到php变量?

  15. 15

    如何使用grep将输出分为两个文件?

  16. 16

    如何在单独的行上将两个回声输出到文本文件

  17. 17

    如何将一个文本文件中的值配对并使用 Pandas 将结果输出到一个单独的文件?

  18. 18

    如何将两个选择值相乘 SQL

  19. 19

    如何将两个连续的输入分配给两个不同的变量?

  20. 20

    如何将文件输出到2个不同的文件夹

  21. 21

    如何将pygame.image.save输出到变量而不是文件?

  22. 22

    如何将两个JSON文件与熊猫合并

  23. 23

    如何将.html文件输出到.doc文件Django

  24. 24

    如何将值输出到一个列表而不是多个列表?

  25. 25

    如何将for循环内的整数作为十六进制值输出到文件

  26. 26

    如何将for循环内的整数作为十六进制值输出到文件

  27. 27

    如何将数据从两个SAS数据集中正确导出到一个XML数据文件?

  28. 28

    如何将javascript变量输出到控制台?

  29. 29

    如何将awk结果输出到变量

热门标签

归档