Я хочу использовать команду unix в SQR, чтобы заархивировать/сжать файл с паролем и после этого проверить пароль
использование команды UNIX для архивирования/сжатия файла с ПАРОЛЕМ в SQR
Ответы (3)
SQR может запускать команды для платформы, на которой он работает — используйте команду «вызов системы». Я использовал это в Unix для запуска почтовой команды.
Я просто покажу вам код из моей программы для некоторых из них, и я надеюсь, что это поможет:
Let $Mail_Command = 'echo ' || $body || ' | mailx -s ' || $Subject || ' -r ' || $from || ' ' || $to
! This is the key command you're looking for
call system using $Mail_Command #Send_Status wait
If #Send_Status <> 0
show ' '
show 'ERROR sending email to : ' $to ' $From: ' $From ' $Subject: ' $Subject
show $Mail_Command
show 'system stat: ' #Send_Status
show ' '
else
#debug show ''
#debug show 'Email sent to : ' $to ' $From: ' $From ' $Subject: ' $Subject
#debug show '$Body: <' $Body '>'
end-if
Вам нужно будет использовать команду 'Call system'
в вашем файле SQR. Синтаксис того же существа -
$cmd_string = '<Command here>'
Call System using $cmd_string #status
Переменная #status может использоваться для обработки исключений/ошибок.
Чтобы заархивировать файлы с паролем в среде unix, вам придется использовать команду zip
или аналогичные команды. zip
, при использовании с параметром -P даст вам почтовый индекс, зашифрованный с предоставленным паролем. Ознакомьтесь с документацией здесь — http://linux.about.com/od/commands/l/blcmdl1_zip.htm
Я также искал технику сжатия файлов в SQR с помощью команды CALL SYSTEM USING
.
Сначала я попробовал команду zip, но она не сработала. Позже я попытался использовать gzip, и это сработало, и единственный недостаток команды gzip заключается в том, что она удалит исходный файл. Ниже приведен код, который я использовал:
let $zipcmd = 'gzip' ||' '|| $OutputFileName
CALL SYSTEM USING $zipcmd #Status WAIT