Docker补丁命令替换

Docker补丁命令替换,docker,dockerfile,Docker,Dockerfile,我使用的是Docker映像,它附带了许多来自busybox的二进制文件。 我需要命令“patch”来接受参数“-l”。但是busybox附带的命令不允许使用此参数,它将中断,并出现以下异常: /usr/local # patch -l patch: unrecognized option: l BusyBox v1.29.3 (2019-01-24 07:45:07 UTC) multi-call binary. Usage: patch [OPTIONS] [ORIGFILE [PATCHF

我使用的是Docker映像,它附带了许多来自busybox的二进制文件。 我需要命令“patch”来接受参数“-l”。但是busybox附带的命令不允许使用此参数,它将中断,并出现以下异常:

/usr/local # patch -l
patch: unrecognized option: l
BusyBox v1.29.3 (2019-01-24 07:45:07 UTC) multi-call binary.

Usage: patch [OPTIONS] [ORIGFILE [PATCHFILE]]

-p N    Strip N leading components from file names
-i DIFF Read DIFF instead of stdin
-R  Reverse patch
-N  Ignore already applied patches
-E  Remove output files if they become empty
--dry-run   Don't actually change files
有没有办法用patch命令替换另一个命令

有没有办法用patch命令替换另一个命令

当然可以,但是根据您使用的图像的不同,执行该操作的机制也会有所不同

如果您使用的是基于图像,则可以执行以下操作:

apk add --update patch
这将用功能齐全的GNU
patch
二进制文件取代BusyBox版本的
patch

如果你在使用其他东西…你需要在你的问题中提供额外的细节