fix: добавить -L к find для следования симлинкам

- qwen — это симлинк на ../lib/node_modules/@qwen-code/qwen-code/cli.js
- find -L следует за симлинками и находит qwen
- Проверка файла включает проверку на симлинк [ ! -L ]

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
mirivlad 2026-02-25 15:39:56 +08:00
parent c6153a993d
commit 8675344e98
1 changed files with 5 additions and 4 deletions

View File

@ -43,7 +43,8 @@ if [ ! -f "$BOT_DIR/.env" ]; then
fi
# Определяем путь к node через find в домашней директории пользователя
NODE_BIN=$(find /home/$BOT_USER -name "node" -type f -executable 2>/dev/null | grep "/bin/node$" | head -1)
# -L следует за симлинками
NODE_BIN=$(find -L /home/$BOT_USER -name "node" -type f -executable 2>/dev/null | grep "/bin/node$" | head -1)
if [ -n "$NODE_BIN" ]; then
NODE_PATH=$(dirname "$NODE_BIN")
# Извлекаем базовый путь nvm (убираем /bin/node)
@ -60,12 +61,12 @@ fi
# Ищем qwen в той же версии nvm где найден node
if [ -n "$NVM_VERSION" ] && [ "$NVM_VERSION" != "current" ]; then
QWEN_PATH="$NVM_BASE/$NVM_VERSION/bin/qwen"
if [ ! -f "$QWEN_PATH" ]; then
if [ ! -f "$QWEN_PATH" ] && [ ! -L "$QWEN_PATH" ]; then
QWEN_PATH=""
fi
else
# Если версия не определена - ищем qwen через find
QWEN_PATH=$(find /home/$BOT_USER -name "qwen" -type f -executable 2>/dev/null | grep "/bin/qwen$" | head -1)
# Если версия не определена - ищем qwen через find (-L для симлинков)
QWEN_PATH=$(find -L /home/$BOT_USER -name "qwen" -type f -executable 2>/dev/null | grep "/bin/qwen$" | head -1)
fi
if [ -z "$QWEN_PATH" ]; then