亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? skill.c

?? linux下獲取一些環境信息的代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
  if(argv[1][2]=='\0' && (argv[1][1]=='s' || argv[1][1]=='n')){    sigptr = argv[2];    argv+=3;    argc-=3;  }else{    sigptr = argv[1]+1;    argv+=2;    argc-=2;  }  signo = signal_name_to_number(sigptr);  if(signo<0){    fprintf(stderr, "ERROR: unknown signal name \"%s\".\n", sigptr);    kill_usage();  }no_more_args:  if(!argc) kill_usage();  /* nothing to kill? */  while(argc--){    long pid;    char *endp;    pid = strtol(argv[argc],&endp,10);    if(!*endp){      if(!kill((pid_t)pid,signo)) continue;      exitvalue = 1;      continue;    }    fprintf(stderr, "ERROR: garbage process ID \"%s\".\n", argv[argc]);    kill_usage();  }  exit(exitvalue);}/***** skill/snice help */static void skillsnice_usage(void) NORETURN;static void skillsnice_usage(void){  if(program==PROG_SKILL){    fprintf(stderr,      "Usage:   skill [signal to send] [options] process selection criteria\n"      "Example: skill -KILL -v pts/*\n"      "\n"      "The default signal is TERM. Use -l or -L to list available signals.\n"      "Particularly useful signals include HUP, INT, KILL, STOP, CONT, and 0.\n"      "Alternate signals may be specified in three ways: -SIGKILL -KILL -9\n"    );  }else{    fprintf(stderr,      "Usage:   snice [new priority] [options] process selection criteria\n"      "Example: snice netscape crack +7\n"      "\n"      "The default priority is +4. (snice +4 ...)\n"      "Priority numbers range from +20 (slowest) to -20 (fastest).\n"      "Negative priority numbers are restricted to administrative users.\n"    );  }  fprintf(stderr,    "\n"    "General options:\n"    "-f  fast mode            This is not currently useful.\n"    "-i  interactive use      You will be asked to approve each action.\n"    "-v  verbose output       Display information about selected processes.\n"    "-w  warnings enabled     This is not currently useful.\n"    "-n  no action            This only displays the process ID.\n"    "\n"    "Selection criteria can be: terminal, user, pid, command.\n"    "The options below may be used to ensure correct interpretation.\n"    "-t  The next argument is a terminal (tty or pty).\n"    "-u  The next argument is a username.\n"    "-p  The next argument is a process ID number.\n"    "-c  The next argument is a command name.\n"  );  exit(1);}#if 0static void _skillsnice_usage(int line){  fprintf(stderr,"Something at line %d.\n", line);  skillsnice_usage();}#define skillsnice_usage() _skillsnice_usage(__LINE__)#endif#define NEXTARG (argc?( argc--, ((argptr=*++argv)) ):NULL)/***** common skill/snice argument parsing code */#define NO_PRI_VAL ((int)0xdeafbeef)static void skillsnice_parse(int argc, const char *restrict const *restrict argv){  int signo = -1;  int prino = NO_PRI_VAL;  int force = 0;  int num_found = 0;  const char *restrict argptr;  if(argc<2) skillsnice_usage();  if(argc==2 && argv[1][0]=='-'){    if(!strcmp(argv[1],"-L")){      pretty_print_signals();      exit(0);    }    if(!strcmp(argv[1],"-l")){      unix_print_signals();      exit(0);    }    if(!strcmp(argv[1],"-V")|| !strcmp(argv[1],"--version")){      display_kill_version();      exit(0);    }    skillsnice_usage();  }  NEXTARG;  /* Time for serious parsing. What does "skill -int 123 456" mean? */  while(argc){    if(force && !num_found){  /* if forced, _must_ find something */      fprintf(stderr,"ERROR: -%c used with bad data.\n", force);      skillsnice_usage();    }    force = 0;    if(program==PROG_SKILL && signo<0 && *argptr=='-'){      signo = signal_name_to_number(argptr+1);      if(signo>=0){      /* found a signal */        if(!NEXTARG) break;        continue;      }    }    if(program==PROG_SNICE && prino==NO_PRI_VAL    && (*argptr=='+' || *argptr=='-') && argptr[1]){      long val;      char *endp;      val = strtol(argptr,&endp,10);      if(!*endp && val<=999 && val>=-999){        prino=val;        if(!NEXTARG) break;        continue;      }    }    /* If '-' found, collect any flags. (but lone "-" is a tty) */    if(*argptr=='-' && argptr[1]){      argptr++;      do{        switch(( force = *argptr++ )){        default:  skillsnice_usage();        case 't':        case 'u':        case 'p':        case 'c':          if(!*argptr){ /* nothing left here, *argptr is '\0' */            if(!NEXTARG){              fprintf(stderr,"ERROR: -%c with nothing after it.\n", force);              skillsnice_usage();            }          }          goto selection_collection;        case 'f': f_flag++; break;        case 'i': i_flag++; break;        case 'v': v_flag++; break;        case 'w': w_flag++; break;        case 'n': n_flag++; break;        case 0:          NEXTARG;          /*           * If no more arguments, all the "if(argc)..." tests will fail           * and the big loop will exit.           */        } /* END OF SWITCH */      }while(force);    } /* END OF IF */selection_collection:    num_found = 0; /* we should find at least one thing */    switch(force){ /* fall through each data type */    default: skillsnice_usage();    case 0: /* not forced */    case 't':      if(argc){        struct stat sbuf;        char path[32];        if(!argptr) skillsnice_usage(); /* Huh? Maybe "skill -t ''". */        snprintf(path,32,"/dev/%s",argptr);        if(stat(path, &sbuf)>=0 && S_ISCHR(sbuf.st_mode)){          num_found++;          ENLIST(tty,sbuf.st_rdev);          if(!NEXTARG) break;        }else if(!(argptr[1])){  /* if only 1 character */          switch(*argptr){          default:            if(stat(argptr,&sbuf)<0) break; /* the shell eats '?' */          case '-':          case '?':            num_found++;            ENLIST(tty,0);            if(!NEXTARG) break;          }        }      }      if(force) continue;    case 'u':      if(argc){        struct passwd *passwd_data;        passwd_data = getpwnam(argptr);        if(passwd_data){          num_found++;          ENLIST(uid,passwd_data->pw_uid);          if(!NEXTARG) break;        }      }      if(force) continue;    case 'p':      if(argc && *argptr>='0' && *argptr<='9'){        char *endp;        int num;        num = strtol(argptr, &endp, 0);        if(*endp == '\0'){          num_found++;          ENLIST(pid,num);          if(!NEXTARG) break;        }      }      if(force) continue;      if(num_found) continue; /* could still be an option */    case 'c':      if(argc){        num_found++;        ENLIST(cmd,argptr);        if(!NEXTARG) break;      }    } /* END OF SWITCH */  } /* END OF WHILE */  /* No more arguments to process. Must sanity check. */  if(!tty_count && !uid_count && !cmd_count && !pid_count){    fprintf(stderr,"ERROR: no process selection criteria.\n");    skillsnice_usage();  }  if((f_flag|i_flag|v_flag|w_flag|n_flag) & ~1){    fprintf(stderr,"ERROR: general flags may not be repeated.\n");    skillsnice_usage();  }  if(i_flag && (v_flag|f_flag|n_flag)){    fprintf(stderr,"ERROR: -i makes no sense with -v, -f, and -n.\n");    skillsnice_usage();  }  if(v_flag && (i_flag|f_flag)){    fprintf(stderr,"ERROR: -v makes no sense with -i and -f.\n");    skillsnice_usage();  }  /* OK, set up defaults */  if(prino==NO_PRI_VAL) prino=4;  if(signo<0) signo=SIGTERM;  if(n_flag){    program=PROG_SKILL;    signo=0; /* harmless */  }  if(program==PROG_SKILL) sig_or_pri = signo;  else sig_or_pri = prino;}/***** main body */int main(int argc, const char *argv[]){  const char *tmpstr;  my_pid = getpid();  saved_argc = argc;  if(!argc){    fprintf(stderr,"ERROR: could not determine own name.\n");    exit(1);  }  tmpstr=strrchr(*argv,'/');  if(tmpstr) tmpstr++;  if(!tmpstr) tmpstr=*argv;  program = PROG_GARBAGE;  if(*tmpstr=='s'){    setpriority(PRIO_PROCESS,my_pid,-20);    if(!strcmp(tmpstr,"snice")) program = PROG_SNICE;    if(!strcmp(tmpstr,"skill")) program = PROG_SKILL;  }else{    if(!strcmp(tmpstr,"kill")) program = PROG_KILL;  }  switch(program){  case PROG_SNICE:  case PROG_SKILL:    skillsnice_parse(argc, argv);/*    show_lists(); */    iterate(); /* this is it, go get them */    break;  case PROG_KILL:    kill_main(argc, argv);    break;  default:    fprintf(stderr,"ERROR: no \"%s\" support.\n",tmpstr);  }  return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人在线免费观看| 成人午夜电影久久影院| 天堂成人免费av电影一区| 免费美女久久99| 成人教育av在线| 在线观看不卡一区| 精品电影一区二区| 亚洲综合色视频| 国内精品嫩模私拍在线| 在线观看国产精品网站| 久久影音资源网| 天堂蜜桃91精品| 一本高清dvd不卡在线观看| 91精品国产综合久久蜜臀| 欧美韩日一区二区三区| 亚洲五月六月丁香激情| 久久99日本精品| 91老师片黄在线观看| 国产三级精品视频| 免费在线欧美视频| 欧美日韩精品电影| 亚洲欧美韩国综合色| 菠萝蜜视频在线观看一区| 欧美一级爆毛片| 青青草国产精品亚洲专区无| 在线免费视频一区二区| 亚洲免费观看高清| 不卡在线视频中文字幕| 国产精品色哟哟| 久久99精品久久久久久久久久久久| 蜜桃av噜噜一区二区三区小说| 欧美日韩国产综合视频在线观看 | 国产精品成人一区二区艾草 | 精品国产乱码久久久久久蜜臀 | 亚洲另类在线视频| 精品福利一区二区三区| 国产成人亚洲综合色影视| 国产欧美综合在线观看第十页 | 国产午夜一区二区三区| 成人性视频网站| ...中文天堂在线一区| 色哟哟精品一区| 视频一区欧美精品| 欧美激情资源网| 欧美在线观看视频一区二区三区| 午夜视频在线观看一区二区| 日韩午夜激情视频| 国产成人av电影在线| 亚洲免费在线观看| 91精品国产综合久久福利| 岛国精品一区二区| 亚洲一区二区三区四区五区黄 | 99久久婷婷国产综合精品| 丝袜a∨在线一区二区三区不卡| 欧美sm极限捆绑bd| 欧洲精品在线观看| 狠狠色综合色综合网络| 亚洲一区二区三区四区在线 | 91免费看片在线观看| 国产欧美日韩不卡| 欧美疯狂做受xxxx富婆| 懂色av一区二区三区免费观看| 亚洲高清中文字幕| 亚洲品质自拍视频网站| 2020国产精品| 日韩精品一区二| 7777精品伊人久久久大香线蕉超级流畅 | 国产精品久久久久久久久免费桃花 | 日韩欧美不卡在线观看视频| 91福利在线看| 麻豆视频一区二区| 亚洲精品国产一区二区三区四区在线| 欧美精品aⅴ在线视频| 成人av网站大全| 91年精品国产| 色婷婷国产精品| 99精品欧美一区二区三区小说| 国产激情一区二区三区桃花岛亚洲| 久久99国产精品免费网站| 麻豆一区二区三区| 亚洲欧美日韩国产综合| 日韩欧美中文一区二区| 日韩精品一区二区三区老鸭窝| 国产精品综合久久| 国产伦精品一区二区三区免费迷| 麻豆成人久久精品二区三区小说| 久久99精品国产麻豆不卡| 精品一区二区免费在线观看| 国产99久久久久| 91精品1区2区| 精品日韩在线一区| 国产精品伦理在线| 五月天精品一区二区三区| 久久精品国产一区二区三区免费看| 久草这里只有精品视频| 成人高清视频在线| 欧美日韩一二区| 国产精品久久久久国产精品日日 | 国产精品自拍毛片| 91传媒视频在线播放| 欧美va天堂va视频va在线| 中文字幕中文字幕在线一区 | 视频一区二区中文字幕| 不卡av免费在线观看| 日韩精品最新网址| 亚洲国产中文字幕在线视频综合 | 亚洲色图欧洲色图| 国产精品香蕉一区二区三区| 欧美亚洲尤物久久| 亚洲欧美日韩久久精品| 国产99一区视频免费 | 粉嫩av一区二区三区| 欧美一级高清大全免费观看| 亚洲欧美在线另类| 国产精品88av| 国产欧美综合在线观看第十页| 麻豆国产精品官网| 日韩一本二本av| 中文字幕一区二区三区在线播放 | 亚洲欧美日韩电影| 国产成人激情av| 精品成人一区二区三区| 欧美a一区二区| 欧美一区二区三区啪啪| 天天操天天色综合| 日本大香伊一区二区三区| 亚洲精品日韩一| 色偷偷成人一区二区三区91| 中文字幕精品在线不卡| 在线亚洲精品福利网址导航| 天堂在线亚洲视频| 9人人澡人人爽人人精品| 亚洲高清三级视频| 日韩免费视频一区二区| 国产精品12区| 亚洲欧美日韩在线不卡| 不卡av在线免费观看| 国产清纯美女被跳蛋高潮一区二区久久w| 一个色综合网站| 欧美日韩在线一区二区| 男女性色大片免费观看一区二区| 日韩午夜精品视频| 国产一区二区久久| 国产精品久久看| 在线观看网站黄不卡| 美女视频黄久久| 久久你懂得1024| 欧美日韩成人综合天天影院 | 成人精品国产福利| 天天综合天天综合色| 国产精品美女一区二区在线观看| 91亚洲大成网污www| 亚洲风情在线资源站| 久久久五月婷婷| 欧美视频在线观看一区| 国产精品白丝av| 日本成人在线不卡视频| 亚洲欧美另类久久久精品2019| 欧美精品一区二区三区蜜桃| 91浏览器打开| 成人小视频在线| 久久国产精品99精品国产| 亚洲成人av福利| 亚洲黄色在线视频| 国产精品久久国产精麻豆99网站| 欧美一区二区三区啪啪| 欧美三电影在线| 色噜噜狠狠色综合中国| av不卡一区二区三区| 成人不卡免费av| 日本精品一区二区三区四区的功能| 色综合天天综合网天天狠天天| 欧日韩精品视频| 欧美成人综合网站| 91久久一区二区| 欧美美女一区二区在线观看| 日韩欧美高清dvd碟片| 久久综合九色综合欧美就去吻| 日本一区二区视频在线| 日韩美女啊v在线免费观看| 青青青爽久久午夜综合久久午夜| 国产69精品久久777的优势| 色八戒一区二区三区| 久久综合九色欧美综合狠狠| 日韩你懂的在线播放| 国产精品欧美一区二区三区| 九色综合国产一区二区三区| 国产精品一区一区三区| 欧美亚一区二区| 国产亚洲一本大道中文在线| 亚洲福中文字幕伊人影院| 韩国三级中文字幕hd久久精品| 高清国产一区二区| 欧美色精品在线视频| 久久青草国产手机看片福利盒子 | 欧美性猛片aaaaaaa做受| 中文字幕欧美国产| 蜜桃精品视频在线| 欧美日韩aaaaa| 亚洲精品免费电影|