-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscreen_start
More file actions
executable file
·44 lines (37 loc) · 1.27 KB
/
screen_start
File metadata and controls
executable file
·44 lines (37 loc) · 1.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/usr/bin/env bash
# Start email listener in a screen session
# Usage: ./screen_start
set -e
SCREEN_NAME="cc-exp-runner"
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# Check if screen session already exists
if screen -list | grep -q "$SCREEN_NAME"; then
echo "Screen session '$SCREEN_NAME' already running."
echo ""
echo "Commands:"
echo " screen -r $SCREEN_NAME # Attach to session"
echo " ./screen_stop # Stop the listener"
exit 0
fi
# Create logs directory
mkdir -p "$ROOT/logs"
# Start in screen
echo "Starting cc-exp-runner in screen session '$SCREEN_NAME'..."
screen -dmS "$SCREEN_NAME" bash -c "
export PATH=/home/ninghanwen/.nvm/versions/node/v20.19.5/bin:/home/ninghanwen/anaconda3/envs/openex/bin:/home/ninghanwen/anaconda3/bin:\$PATH
export HOME=/home/ninghanwen
cd $ROOT
python3 tools/email_listener.py 2>&1 | tee -a logs/listener.log
"
sleep 1
if screen -list | grep -q "$SCREEN_NAME"; then
echo "Started successfully!"
echo ""
echo "Commands:"
echo " screen -r $SCREEN_NAME # Attach to session (Ctrl+A D to detach)"
echo " ./screen_stop # Stop the listener"
echo " tail -f logs/listener.log # View logs"
else
echo "Failed to start. Check logs/listener.log"
exit 1
fi