📄 getstatus.c
字号:
#include "lprps.h"/* Called by main() before printing job. * We send a Control-T to the printer to fetch its status. * If we timeout before reading the printer's status, something * is wrong. */voidget_status(void){ char c; set_alrm(5); /* 5 second timeout to fetch status */ tty_flush(); c = '\024'; block_write(&c, 1); /* send Control-T to printer */ init_input(0); while (status == INVALID) proc_some_input(); /* wait for something back */ switch (status) { case IDLE: /* this is what we're looking for ... */ clear_alrm(); return; case WAITING: /* printer thinks it's in the middle of a job */ block_write(&eofc, 1); /* send EOF to printer */ sleep(5); exit(EXIT_REPRINT); case BUSY: case UNKNOWN: sleep(15); exit(EXIT_REPRINT); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -