如何从7-zip SFX中读取当前目录,将一个文件在安装后复制到另一个文件?

时间:2013-08-27 22:11:00

标签: batch-file

我正在创建一个需要复制到某个固定目录的应用程序,但是需要将一个文件复制到运行SFX的目录中。

我无法做到这一点。我用.bat创建并使用FOR通过从SFX执行调用SET来读取我写的文件。 但它始终与安装目录有关。

所以,要明确的是,我需要做的是:

  1. 将所有文件从SFX复制到目录
  2. 将其中一个文件移至执行SFX的目录
  3. 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

例如,如果您的应用程序SFX将被称为myapp.exe,那么您可以批量执行以下操作(假设我已正确理解您的问题):

@ECHO OFF
:: configure: directory where to install application
SET DSTDIR=D:\program files\my app
:: configure: which installed file to move back to installer directory
SET MOVEFILE=lang\ast.txt
:: %~dp0 is expanded to where we (the batch) currently are
SET SRCDIR=%~dp0
:: call 7-zip self-extractor with destination directory (1)
myapp.exe -o"%DSTDIR%"
:: move the special file back (2)
MOVE "%DSTDIR%\%MOVEFILE%" "%SRCDIR%"