쉘 스크립트에서 명령의 출력을 얻는 방법

쉘 스크립트에서 명령의 출력을 얻는 방법

grub-md5-cryptRHEL에서 실행되고 사용자가 비밀번호를 입력하는 쉘 스크립트를 작성하려고 합니다 .

이제 문제는 암호화된 md5 해시를 쉘 스크립트에서 사용자에게 표시하는 방법입니다.

이것을 알아내려고 노력했지만 여기서는 명령 리디렉션이 작동하지 않습니다. 그렇다면 스크립트가 실행된 후 쉘 스크립트에서 md5 암호화된 텍스트를 얻는 방법은 무엇입니까 grub-md5-crypt?

답변1

result=$(grub-md5-crypt | grep xy)
echo $result

grub-md5-crypt가 stderr로 인쇄하는 경우 다음을 사용하십시오.

result=$(grub-md5-crypt 2>&1 | grep xy)
echo $result

답변2

쉘 스크립트에서 작동하지 않으면 bash를 사용해야 할 수도 있습니다. 다음을 추가하세요.

#!/bin/bash

그것~ 해야 하다~에첫 번째파일의 한 줄!

이는 스크립트가 일반 쉘의 인터프리터( ) 대신 bash 인터프리터를 사용한다는 것을 의미합니다 /bin/sh.

완료 중출입 불가답변은 출력을 파일로 저장할 수도 있습니다.

grub-md5-crypt | grep xy > output

또는:

result=$(grub-md5-crypt 2>&1 | grep xy)
echo $result > output

그러면 화면에 인쇄된 내용이 모두 포함된 파일 이름 출력이 생성됩니다.

관련 정보