我理解export(对于容器)和save(对于图像)之间的区别.但是在一天结束时,保存或导出产生的tarball应该用作图像.
那么为什么有两个命令来从tarball制作图像呢?
假设您想要从 jar 文件名中提取名称和版本的最佳模式。我得到了一些不错的东西,它适用于regexr但不适用于 bash。这是因为 bash 不支持非贪婪正则表达式。那么应该如何处理呢?
#!/bin/bash
filename="./log4j-enhanced-3.5.100-v20130422-1538.jar"
if [[ "$filename" =~ \.\/(.*?)-([0-9].*)\.jar ]]; then
echo "name = ${BASH_REMATCH[1]}"
echo "version = ${BASH_REMATCH[2]}"
fi
# expected :
# name = log4j-enhanced
# version = 3.5.100-v20130422-1538
Run Code Online (Sandbox Code Playgroud)
使用 unix 实用程序是可以的,但请使其可读。