我正在尝试使用 VSTS 将 zip 文件部署到 Azure 中的 Linux VM。我正在使用 SSH 任务来运行命令:
sudo unzip -ju /home/$USER/release/deployfile-1.6.zip "*.war" -d "/opt/tomee/webapps/"
该命令有效。不过,我不想每次更改文件名时都更改它。我尝试使用变量名称:
sudo unzip -ju /home/$USER/release/$filename "*.war" -d "/opt/tomee/webapps/"
我尝试使用通配符:
cd "/home/$USER/release/"
sudo unzip -ju '*.zip' "*.war" -d "/opt/tomee/webapps/"
(上面应该是 star.zip 和 star.war)这两个都不起作用,而且我对 Linux 不太熟悉,所以无法找出有效的语法。
有人可以建议一下吗?谢谢。
最佳答案
根据@JNevill 的评论,我再次尝试使用变量作为文件名。我还将 u 参数更改为 o 以自动覆盖文件。最终的命令语法为:
sudo unzip -jo "/home/$USER/release/$(filename)""*.war"-d "/opt/tomee/webapps/"
当命令在远程虚拟机上执行时,它会变成:
sudo unzip -jo "/home/$USER/release/deployfile-1.6.zip""*.war"-d "/opt/tomee/webapps/"
war 文件已成功部署到虚拟机。
关于linux - 使用 VSTS Release 在 Linux VM 上解压文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49615158/