История изменений
Исправление kmeaw, (текущая версия) :
Или можно переписать это решение непосредственно на sh, но оно будет выглядеть (на мой взгляд) странно.
in_conn=0
remote=""
while read line; do
case "$line" in
"<connection>")
conn=""
remote=""
in_conn=1
;;
"</connection>")
if [ "$remote" = "192.168.254.1" ]; then
continue
fi
echo "<connection>$conn"
echo "</connection>"
in_conn=0
;;
*)
if [ $in_conn -eq 0 ]; then
echo "$line"
continue
fi
set -- $line
if [ "$1" = "remote" ]; then
remote=$2
fi
conn="$conn
$line"
;;
esac
done < /etc/openvpn/openvpn.conf
Исходная версия kmeaw, :
Или можно переписать это решение непосредственно на sh, но оно будет выглядеть (на мой взгляд) странно.
in_conn=0
while read line; do
case "$line" in
"<connection>")
conn=""
in_conn=1
;;
"</connection>")
if echo "$conn" | grep -q "remote 192.168.254.1 "; then
continue
fi
echo "<connection>$conn"
echo "</connection>"
in_conn=0
;;
*)
if [ $in_conn -eq 0 ]; then
echo "$line"
continue
fi
conn="$conn
$line"
;;
esac
done < /etc/openvpn/openvpn.conf