Fix container selector formatting: strip CR, simplify layout, no ANSI in brackets

Made-with: Cursor
This commit is contained in:
anten-ka
2026-03-22 13:51:53 +03:00
parent 195345d6f4
commit 7c7364f501

19
warp.sh
View File

@@ -557,20 +557,21 @@ awg_select_container() {
awg_load_container_data
return 0
fi
echo -e "\n${CYAN}Выберите контейнер:${NC}"
echo -e "\n${CYAN}Выберите контейнер:${NC}\n"
local i=1
for c in "${AWG_ALL_CONTAINERS[@]}"; do
local has_warp="${DIM}нет${NC}"
docker exec "$c" sh -c "[ -f '/opt/warp/warp.conf' ]" 2>/dev/null && has_warp="${GREEN}да${NC}"
local clients="-"
local cnt; cnt=$(docker exec "$c" sh -c "cat /opt/warp/clients.list 2>/dev/null | grep -c '.' || echo 0" 2>/dev/null | tr -d '\r')
[ "$cnt" != "0" ] && clients="$cnt"
local marker=""
[ "$c" = "${CONTAINER:-}" ] && marker=" ${CYAN}*${NC}"
echo -e " ${GREEN}$i)${NC} $c [WARP: $has_warp | Клиентов: $clients]${marker}"
local warp_status="нет"
docker exec "$c" sh -c "[ -f '/opt/warp/warp.conf' ]" 2>/dev/null && warp_status="да"
local clients="0"
clients=$(docker exec "$c" sh -c "cat /opt/warp/clients.list 2>/dev/null | grep -c '.' || echo 0" 2>/dev/null | tr -d '\r\n')
local mark=""
[ "$c" = "${CONTAINER:-}" ] && mark=" *"
echo -e " ${GREEN}$i)${NC} $c (WARP: $warp_status, клиентов: $clients)${mark}"
((i++))
done
echo -e "\n ${DIM}* = текущий${NC}"
echo -e " ${DIM}0) Отмена${NC}"
echo ""
while true; do
read -p " > " ch
[ "$ch" = "0" ] && return 1