실패한 설치 목록이 포함된 이메일 [중복]

실패한 설치 목록이 포함된 이메일 [중복]

스크립팅에 대해 배우고 있는데 이 스크립트를 발견했습니다.

#!/bin/bash

A=`awk '{print $2}' /etc/fstab | grep -i "^/" | egrep -v '/etc/fstab|proc|sys|shm|pts'`

for i in $A; do grep "$i" /proc/mounts > /dev/null
    if [ $? -eq 0 ]; then
        echo $i "TRUE"
    else
        echo $i "FALSE"
    fi
done

제거된 설치 목록이 포함된 이메일을 보낼 수 있는 방법이 있습니까? False인 경우 이메일을 보내세요.

감사해요

답변1

스크립트 결과를 이메일로 보내려면 다음과 같이 하세요.

#!/bin/bash

F=`mktemp`

A=`awk '{print $2}' /etc/fstab | grep -i "^/" | egrep -v '/etc/                 fstab|proc|sys|shm|pts'`

for i in $A; do grep "$i" /proc/mounts > /dev/null
    if [ $? -ne 0 ]; then
        echo $i "FALSE"
    fi
done >"$F"

if test -s "$F"; then
        ( echo "To: [email protected]"; \
    echo "Subject: mount failures"; \
    echo "";  cat "$F" ) \
    | /usr/sbin/sendmail [email protected] [email protected]
fi

기본적으로 어떤 설치가 정상적인지 알 필요는 없고 수정해야 할 설치만 알 필요가 있다고 가정합니다.

()이 상황에서는 하위 쉘이 유용하다고 생각합니다 . printf단일 명령문을 사용하여 다르게 수행할 수 있지만 이것이 더 잘 작동한다고 생각합니다.

관련 정보