Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Bash将多行Git日志输出保存到环境变量_Linux_Bash_Git_Ubuntu - Fatal编程技术网

Linux Bash将多行Git日志输出保存到环境变量

Linux Bash将多行Git日志输出保存到环境变量,linux,bash,git,ubuntu,Linux,Bash,Git,Ubuntu,我试图将git命令的输出保存到GitHub操作步骤中的一个环境变量中,它获取了输出的第一行,而忽略了其余的部分。运行此命令的容器是ubuntu最新版本 以下是我试图捕捉它的方式: TMP_CHANGES=`git log origin/master` 我对echo$TMP\u更改的期望值: 提交f179fb811618cc5a2f07637a2ecb394a43ebee21 作者:DannyHinshaw 日期:星期二1月14日07:38:29 2020-0500 测试差异 提交ed596d2

我试图将git命令的输出保存到GitHub操作步骤中的一个环境变量中,它获取了输出的第一行,而忽略了其余的部分。运行此命令的容器是ubuntu最新版本

以下是我试图捕捉它的方式:

TMP_CHANGES=`git log origin/master`
我对echo$TMP\u更改的期望值:

提交f179fb811618cc5a2f07637a2ecb394a43ebee21
作者:DannyHinshaw
日期:星期二1月14日07:38:29 2020-0500
测试差异
提交ed596d2ff2e5bd9801eae6ece7abf627db89f82b
作者:DannyHinshaw
日期:星期二1月14日07:38:28 2020-0500
通气版本->v1.2.1-101
提交40F88031293ABA021B65ED1D2A8295B651EF91B
作者:DannyHinshaw
日期:星期二1月14日07:35:04 2020-0500
测试差异
我得到的是:

提交f179fb811618cc5a2f07637a2ecb394a43ebee21

我错过了什么?如何在保留多行格式的同时捕获并保存变量的完整多行输出?

在Ubuntu 18.04.3 LTS上测试

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.3 LTS
Release:    18.04
Codename:   bionic

$ git --version
git version 2.17.1
获取日志

GT=$(git log -n3 origin/master..)
不带“”的回声

$echo$GT
提交c7c1d60c01b23ba225d79d350d74d0f8990ea8df作者:Ivan日期:周二1月14日16:05:16 2020+0300参考测试2提交7A52AB307DD6EB2C88CDEE83D40DBF2ED8C218作者:Ivan日期:周二1月14日15:47:16 2020+0300参考测试2提交8f0a2c081a4e731b676c95991d9b182fadd71a95作者:Ivan日期:周二12:45:13 2020+0300添加更多测试文件
与“”呼应

$echo“$GT”
提交c7c1d60c01b23ba225d79d350d74d0f8990ea8df
作者:伊万
日期:星期二1月14日16:05:16 2020+0300
参考测试2
提交7a52ab307dd6eb2c88cdee83d40dbf2f2ed8c218
作者:伊万
日期:星期二1月14日15:47:16 2020+0300
参考测试2
提交8f0a2c081a4e731b676c95991d9b182fadd71a95
作者:伊万
日期:星期二1月14日12:45:13 2020+0300
添加更多测试文件

您在终端上看到的输出可能有一部分来自标准输出,
commit f179fb811618cc5a2f07637a2ecb394a43ebee21
和错误输出的另一部分。这是否回答了您的问题@LéaGris不,我见过,也试过。@DjH:wc@user1934428
wc@user1934428错误与问题无关这一事实并不意味着它不应该被提及。在许多问题上存在着大量的混乱,这些问题往往是通过与某个特定问题无关的评论揭示出来的,国际海事组织应该澄清而不是忽视这些问题。我已经尝试了我能想到的每一个变量,这是一样的。你认为这可能是GH行动调用命令的方式吗?我刚刚发现它看起来是这样的
bin/bash-e{0}
$ echo $GT
commit c7c1d60c01b23ba225d79d350d74d0f8990ea8df Author: Ivan <user@pisem.net> Date: Tue Jan 14 16:05:16 2020 +0300 ref test2 commit 7a52ab307dd6eb2c88cdee83d40dbf2f2ed8c218 Author: Ivan <user@pisem.net> Date: Tue Jan 14 15:47:16 2020 +0300 ref test2 commit 8f0a2c081a4e731b676c95991d9b182fadd71a95 Author: Ivan <user@pisem.net> Date: Tue Jan 14 12:45:13 2020 +0300 add more test files
$ echo "$GT"
commit c7c1d60c01b23ba225d79d350d74d0f8990ea8df
Author: Ivan <user@pisem.net>
Date:   Tue Jan 14 16:05:16 2020 +0300

    ref test2

commit 7a52ab307dd6eb2c88cdee83d40dbf2f2ed8c218
Author: Ivan <user@pisem.net>
Date:   Tue Jan 14 15:47:16 2020 +0300

    ref test2

commit 8f0a2c081a4e731b676c95991d9b182fadd71a95
Author: Ivan <user@pisem.net>
Date:   Tue Jan 14 12:45:13 2020 +0300

    add more test files