이 sed 명령의 의미는 무엇입니까 sed '/^[[:space:]]*$/d'

이 sed 명령의 의미는 무엇입니까 sed '/^[[:space:]]*$/d'

내 컴퓨터의 로컬 바이너리와 GTFObins 바이너리를 비교하기 위해 스크립트에서 이 sed 명령을 발견했습니다.

    for i in $(curl -s https://gtfobins.github.io/ | html2text | cut -d" " -f1 | sed '/^[[:space:]]*$/d');
do 
    if grep -q "$i" installed_pkgs.list;
    then 
        echo "Check GTFO for: $i";
    fi;
done

테스트한 결과 줄 사이의 공백이 제거되는 것을 발견했지만 그 형식이나 작성 방법을 이해하지 못합니다.

답변1

줄의 시작( )과 끝( ) ^사이에 공백 문자만 포함된 모든 줄 과 일치합니다.$

https://regex101.com/당신의 친구입니다.

/…/d일치하는 항목을 제거하도록 지시하므로 sed입력에서 빈 줄만 제거됩니다(예: 내용이 없거나 공백, 탭 등만 있는 줄).

관련 정보