macos — MAC c ++ управления интерактивные инструменты командной строки

Я хочу управлять командой unzip из моего кода на C ++. Моя проблема в том, что если ZIP-файл, который я хочу распаковать, зашифрован паролем, утилиты распаковки запрашивают пароль.

Поэтому мне нужно дать ему пароль из моего кода C ++ и нажать Enter, но я хочу, чтобы мой код делал это автоматически.

Итак, вот что я получил до сих пор, но когда я запускаю его, сначала выполняется команда system (), а затем программа продолжается, но она не записывает пароль в терминал, когда его разархивирует 🙁

#include <iostream>
#include </System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Headers/CGEvent.h>
#include <Carbon/Carbon.h>

int main (int argc, const char * argv[])
{

using namespace std;

system("clear");

//----------------------------------------------

{
system("unzip /Users/das_virus/Desktop/NeuerOrdner2/M1/Auswahl.zip"),
cout << "a";

/*CGEventRef event1, event2, event3, event4;

event1 = CGEventCreateKeyboardEvent (NULL,(CGKeyCode)0,true);
event2 = CGEventCreateKeyboardEvent (NULL,(CGKeyCode)0,false);
event3 = CGEventCreateKeyboardEvent (NULL,(CGKeyCode)36,true);
event4 = CGEventCreateKeyboardEvent (NULL,(CGKeyCode)36,false);

ProcessSerialNumber psn;
GetFrontProcess(&psn);

CGEventPostToPSN(&psn,event1);
CGEventPostToPSN(&psn,event2);
CGEventPostToPSN(&psn,event3);
CGEventPostToPSN(&psn,event4);*/
}

return 0;
}

Я надеюсь, что кто-то может дать мне ответ 🙂

0

Решение

Использовать -P password переключатель командной строки для передачи пароля в качестве аргумента.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]