Я начинаю с Powershell, и пока это кажется забавным. Сегодня я работаю над скриптом, который сжимает папку с 7z и добавляет шифрование в новый .7z-файл (см. Ниже).Powershell to 7z папка с шифрованием
if (-not (test-path "$env:ProgramFiles\7-Zip\7z.exe")) {throw "$env:ProgramFiles\7-Zip\7z.exe needed"}
set-alias sz "$env:ProgramFiles\7-Zip\7z.exe"
$timestamp = get-date -f yyyyMMdd
$Source = "D:\dbbackup\$timestamp-0300"
$Target = "D:\backup\$timestamp.7z"
sz a -mx=9 $Target $Source -p1234
В конце концов, мне нужно создать зашифрованный файл 7z из папки, которая меняется каждую ночь с YYyyMmDd, а затем следуют постоянное число (в данном случае, YYyyMmDd-0300). С помощью приведенного выше сценария я могу запустить его, и будет создан новый 7z-файл. Однако пароль 1234 не будет применяться. Шифрование вообще отсутствует.
Если я оставляю $timestamp
и запускаю только 7z с $source
и $target
, я могу успешно создать зашифрованный 7z-файл.
Может ли кто-нибудь сказать мне, что я делаю неправильно?
Первый результат по [google] (http://www.dotnetperls.com/7-zip-examples). Вы пробовали/или iex для запуска exe? – lloyd
Возможно, вам придется передать '-p1234' в Powershell как' ArgumentList', см. [Здесь] (http://blogs.msdn.com/b/powershell/archive/2009/12/29/arguments-for-remote- commands.aspx) для более подробной информации. – user4317867