2012-12-11 27 views
7
OPTIONS="java -Xms1024M -Xmx1024M -jar craftbukkit.jar" 
PROCESS=server01 

screen -dmS $PROCESS $OPTIONS nogui    # Starting the application 
screen -x $PROCESS -X stuff `printf "stop\r"` # Closing the application 
screen -x $PROCESS        # Attaching to the terminal of the application 

Ứng dụng này hoạt động tốt ngay từ đầu, tuy nhiên tôi nhận được vấn đề với stuff 'printf "stop/r"' Nó dường như không hoạt động khi tôi chỉ bắt đầu lên, chờ một thời gian và sau đó cố gắng để ngăn chặn nó với lệnh trên. Nhưng điều kỳ lạ là, nếu tôi đã làm screen -x $PROCESS và tách ra (ctrl-A & ctrl-D) và sau đó tôi sử dụng lệnh Stop nó hoạt động. Vì vậy, có một cách để xung quanh stuff printf mà không cần screen -x $PROCESS?vấn đề Shell GNU-Screen -X Stuff

+0

Các bạn đã thử trích dẫn chuỗi lệnh - tức là màn hình -x $ TRÌNH -X "thứ ' \ 'printf 'stop \ r' \' "'? – twalberg

+0

Không hoạt động. Làm cho nó thậm chí không hoạt động, sau khi thực hiện màn hình đầu tiên -x $ QUY TRÌNH và sau đó dừng nó. – user1621988

Trả lời

16

Thêm đối số -p 0 nên khắc phục. Một cái gì đó như thế này:

screen -x $PROCESS -p 0 -X stuff `printf "stop\r"` 

(Từ tài liệu màn hình: cửa sổ -p chọn trước các cửa sổ có tên nếu nó tồn tại.)

+0

Cảm ơn rất nhiều, dường như hoạt động. (Phần thưởng được trao (hơn 14h)) – user1621988

Các vấn đề liên quan