【问题标题】:How to specify the current directory in Windows Shell?如何在 Windows Shell 中指定当前目录?
【发布时间】:2011-07-12 13:03:37
【问题描述】:

我有以下 BAT 文件,用于存档指定文件夹,通过密码保护它并将存档文件复制到我的本地 Dropbox 文件夹。

    "C:\Program Files\7-Zip\7z.exe" a -mx9 archive.7z "G:\This is a test\directory\with subdirectories\" -psecret -mhe=on

    xcopy "G:\This is a test\directory\with subdirectories\archive.7z" "G:\My Documents\My Dropbox\" /c /d /s /e /k /y

我使用 7-Zip 进行存档。

是否可以更改脚本,使我可以将其放在我选择的任何文件夹中,并且它会做同样的事情 - 存档当前文件夹,用密码保护它并将存档文件复制到我的本地 Dropbox 文件夹?

简单来说,“归档当前目录及其子目录”的命令是什么?

【问题讨论】:

    标签: shell scripting batch-file


    【解决方案1】:

    %CD% 是您的当前目录。在 dos 提示符下尝试echo %CD% 进行尝试。

    【讨论】:

      【解决方案2】:

      您可以简单地指定“当前目录”为.,例如:

      "C:\Program Files\7-Zip\7z.exe" a -mx9 archive.7z . -psecret -mhe=on
      xcopy archive.7z "G:\My Documents\My Dropbox\" /c /d /s /e /k /y
      

      这只是一个更复杂的例子,像dir .这样简单的事情

      【讨论】:

        【解决方案3】:

        如果从脚本路径中将此行放在脚本文件的顶部,则可以获取当前目录路径:

        $CurrentDirectory = Split-Path $MyInvocation.InvocationName
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-04-11
          • 2013-10-27
          • 1970-01-01
          • 2023-03-03
          • 2012-06-09
          • 1970-01-01
          相关资源
          最近更新 更多