그래서이 코드를 가지고 있습니다. 이것은 $DELETE
변수와 일치하는 라인을 찾는 squid 프록시에 관한 것입니다.
사용자가 deleteall
을 입력하여 확인하는 경우 sed는 "s_test"
과 일치하는 모든 줄을 제거합니다. 이제 sed가 $ aclonly 변수와 일치하는 줄을 제거하고 위의 줄도 변수가 될 수 있습니다. 항상 시작할 수 있습니다. 어떤 조언sed, 전에 다른 줄을 지우십시오
Example:
#PR0000
http_access allow s_test d_test http_port
function remove(){
source_acl=$(grep $DELETE /etc/squid3/conf.d/$CUSTOMER.conf)
echo $source_acl
acl_only=$(echo $source_acl | cut -f2 -d" ")
echo "#$DELETE = $acl_only"
echo "#FOLGENE ACL/RULES GEFUNDEN"
grep $acl_only /etc/squid3/conf.d/$CUSTOMER.conf
return=$?
if [ "$return" = "0" ];then
echo "WRITE DELETEALL TO REMOVE SHOWN ALCs/RULES"
echo "WRITE DELETE TO REMOVE ONLY SOURCE ACL WHICH MATCHES IP"
read delete
if [ "$delete" = "deleteall" ];then
sed -i -e /$acl_only/d /etc/squid3/conf.d/$CUSTOMER.conf
return=$?
if [ "$return" = "0" ];then
echo DELETE SEQUEZ COMPLETET
else
echo ERROR
fi
fi
if [ "$delete" = "delete" ];then
sed -i -e /$DELETE/d /etc/squid3/conf.d/$CUSTOMER.conf
return=$?
if [ "$return" = "0" ];then
echo DELETE SEQUEZ COMPLETET
else
echo ERROR
fi
fi
else
echo NO MATCHES
fi
exit