⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qstat.c

📁 使用efax的fax工具程序
💻 C
字号:
/*   qstat.c - Queue status indicator for Renaissoft Qfax 1.3   Copyright 1994-1996 Robert LeBlanc and Renaissoft*/#include <stdio.h>#include <stdlib.h>#include <string.h>#include "qfax.h"/* Non-exported function prototypes */int count_pages(char *prefix);char *get_file_date(char *file);int count_pages(char *prefix){/*   Returns the number of pages in a fax document.*/  int pages = 0;  char cmd[LINELEN];  char tmp[LONGLEN];  FILE *ls;  sprintf(cmd, "%s -1 %s.[0-9][0-9][0-9]", LS, prefix);  ls = popen(cmd, "r");  while (fscanf(ls, "%s", tmp) != EOF)    pages++;  pclose(ls);  return(pages);}char *get_file_date(char *file){/*   Returns the date and time stamp of a file as a string.*/  static char file_date[SHORTLEN];  char cmd[LINELEN];  FILE *ls;  sprintf(cmd, "%s -l %s | awk '{print $6, $7, $8}'", LS, file);  ls = popen(cmd, "r");  strcpy(file_date, getsline(ls));  pclose(ls);  return(file_date);}void main(void){  int faxes = 0;  int pages = 0;  int nothing = 1;  int code, i;  FILE *ifp;  char timestr[LONGLEN];  char cmdlist[MAXFAXES][LINELEN];  char dialstring[PHONELEN];  char recipient[LONGLEN];  char subject[LINELEN];  char user[ALIASLEN];  char sender[ALIASLEN];  char status[LINELEN];  char prefix[LINELEN];  char shortprefix[LINELEN];  char tmp[LINELEN];  char *ptr;  faxes = make_cmdlist(cmdlist);  if (!faxes) {    printf("No entries.\n");    exit(EXIT_SUCCESS);  }  strcpy(user, get_user());  for (i=0; i < faxes; i++) {    get_cmdinfo(cmdlist[i], dialstring, recipient, subject);    strcpy(prefix, make_prefix(cmdlist[i]));    strcpy(sender, get_sender(prefix));    if ((strcasecmp(user, "root") == 0) || (strcasecmp(user, sender) == 0)) {      nothing = 0;      pages = count_pages(prefix);      sprintf(tmp, "%s.try", prefix);      if ((ifp = fopen(tmp, "r")) == NULL) {        strcpy(status, "Waiting to be sent.");      } else {        while (!feof(ifp)) {          fscanf(ifp, "%d\n", &code);	  strcpy(timestr, getsline(ifp));        }        fclose(ifp);        sprintf(status, "Last attempted %s with result %d.",	        timestr, code);      }      ptr = strrchr(prefix, '/');      strcpy(shortprefix, (++ptr));      printf("Fax ID Prefix: %s\n", shortprefix);      printf("To: %s (%s), Pages: %d\n", dialstring, recipient, pages);      if (strcasecmp(user, "root") == 0)	printf("Sender: %s\n", sender);      printf("Subject: %s\n", subject);      printf("Queued: %s\n", get_file_date(cmdlist[i]));      printf("Status: %s\n", status);      printf("\n");    }  }  if (nothing) {    printf("No entries.\n");  };  exit(EXIT_SUCCESS);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -