Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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
File upload Jenkins参数化构建上载文件并保存原始文件名_File Upload_Parameters_Jenkins - Fatal编程技术网

File upload Jenkins参数化构建上载文件并保存原始文件名

File upload Jenkins参数化构建上载文件并保存原始文件名,file-upload,parameters,jenkins,File Upload,Parameters,Jenkins,如何在Jenkins参数化生成中以原始文件名保存上载的文件“文件参数”?Jenkins参数化生成的“文件”参数在作业中始终具有相同的名称 我们可以通过指定两个参数来绕过这一点: 一个参数的类型为File-这将获取文件的内容 另一个参数的类型为String-它获取文件的原始名称 在我们的脚本中,我们通过第一个参数获取文件, 然后将其重命名为第二个。 (用户必须将相同的值粘贴到两个字段…) 更新: 如(和)所述,该问题是, 因此,您现在可以通过以下方式访问原始文件: 例如,如果文件参数名为Fil

如何在Jenkins参数化生成中以原始文件名保存上载的文件“文件参数”?

Jenkins参数化生成的“文件”参数在作业中始终具有相同的名称

我们可以通过指定两个参数来绕过这一点:

  • 一个参数的类型为File-这将获取文件的内容
  • 另一个参数的类型为String-它获取文件的原始名称
在我们的脚本中,我们通过第一个参数获取文件,
然后将其重命名为第二个。
(用户必须将相同的值粘贴到两个字段…)

更新:

如(和)所述,该问题是,
因此,您现在可以通过以下方式访问原始文件:

例如,如果文件参数名为File1
然后脚本在
File1

并且它可以使用本地参数
${File1}
访问原始文件

我怀疑当脚本和用户不在同一个操作系统上时会变得棘手,

i、 例如:用户在Windows中写入路径,脚本在Unix上运行

您可以从参数中获得与参数名同名的原始文件名(文件位置字段)

例如,如果文件位置为“我的文件”,则可以通过执行以下命令将其重命名为原始文件:

mv my_file ${my_file}

你能详细说明一下你遇到了什么问题吗?我有一个上传文件的用户,比如说some1.txt和some2.txt,但我不得不在param中指定文件名。我想使用相同的文件名。谢谢。我就是这么做的。我想这是詹金斯。有人需要请求这个很酷的功能,比如使用相同的文件名。如果一个参数指向数据,另一个参数保留文件的原始名称,可能会更容易。我们应该打开一个变更请求。正如Nux在回答中提到的,这已经被解决了-现在允许您从环境值${parameter_name}中获取原始文件名。这还将检查文件是否存在,并使其可执行:
[[-f my_file]]&&mv my_file${my_file}&&chmod x${my_file}echo“跳过上载”