2014-12-14 1 views
2

은 내가 암호로 보호 된 아카이브에 명령 줄에서 RAR을 사용하려고 해요 :RAR 명령에 파이프 또는 에코 비밀번호?

$ rar t spe_05_1.part13.rar 

RAR 5.11 Copyright (c) 1993-2014 Alexander Roshal 27 Aug 2014 
Trial version    Type RAR -? for help 

Enter password (will not be echoed) for spe_05_1.part13.rar: 

RAR 암호 스위치가 표시되지 않습니다. 이 아카이브에 암호를 설정하는 방법을 제공 않습니다,하지만 난 시험 (t 명령) 또는 추출 (x 명령)의 명령에 암호를 전달하는 방법을 찾을 수 없습니다 : 내가 필요

$ rar | grep -i password 
    hp[password] Encrypt both file data and headers 
    p[password] Set password 
    p-   Do not query password 

을 암호를 (나는 여러 개의 암호를 시도해야 할)를 입력 자동화하는, 그래서 echopipe 사용하는 것을 시도하고있다 :

$ echo diespe120 | rar t spe_05_1.part13.rar 

RAR 5.11 Copyright (c) 1993-2014 Alexander Roshal 27 Aug 2014 
Trial version    Type RAR -? for help 

Enter password (will not be echoed) for spe_05_1.part13.rar: 

불행하게도, 그 날 메시지를 표시합니다.

스크립트에서 RAR 암호를 자동 입력하는 방법은 무엇입니까?


PASSWORDS= 
for i in {100..150} 
do 
    pw=$(printf "diespe%03d" $i) 
    PASSWORDS+="$pw " 
done 

for PASSWORD in $PASSWORDS 
do 
    echo $PASSWORD | rar t spe_05_1.part13.rar 
    if [ $? -eq 0 ]; then 
     echo "Password is " $PASSWORD 
     break 
    fi 
done 
+1

'7z'는 스크립트 가능하며 RAR 형식을 지원합니다. – tripleee

+0

rar/unrar 명령 줄에 암호를 설정하는'-p' 옵션이 없습니까? – Cyrus

+0

@Cyrus - 아니요,'-p' 옵션이 없거나 예상대로 작동하지 않습니다. 나는 그것을 시도했다, 그러나 그것은 여전히 ​​묻는다. Apple에서 제공 한 RAR 10.8.5 – jww

답변

2

어떻게 스크립트에서 RAR에 대한 암호를 입력 자동화합니까?

자동화하려면 파이프를 사용하지 마십시오. 쉘 변수를 대신 사용하십시오. 시도 :

for PASSWORD in $PASSWORDS 
do 
    rar t -p"$PASSWORD" spe_05_1.part13.rar 
    if [ $? -eq 0 ]; then 
     echo "Password is '$PASSWORD'" 
     break 
    fi 
done 
+0

감사합니다. 나는'-p'로 패스워드를 받아들이도록 RAR을 얻을 수 없었다. 하지만 필자는 tripleee가 제안한 MacPorts의 [7z] (http://www.macports.org/ports.php?by=library&substr=p7zip)를 사용하여이 작업을 수행 할 수있었습니다. – jww