UNAME는 UNAME의 특별 버전입니다. -a, -s, -r, -n, -v, -m 옵션을 지원합니다.
사용법 : UNAME [옵션]
-s 커널 이름 인쇄
-v 커널 버전을 인쇄
-r 커널 버전을 인쇄
네트워크 노드의 호스트 이름을 인쇄 -n
-m 컴퓨터 하드웨어 이름 인쇄
-a 위의 모든 인쇄
옵션없이, UNAME는 UNAME -s와 같은 역할을
샘플 :
사용법 #include
사용법 #include
사용법 #include
사용법 #include
사용법 #include
무효 print_usage (무효);
INT 주 (INT argc, 문자 * argv [])
{
INT의 C;
통근자의 char *의 OPTARG;
통근 INT의 OPTIND, optopt;
INT a_flag = 0, 또, s_flag = 0, = 0 n_flag, r_flag = 0, = 0 v_flag에,
m_flag = 0;
INT errflag = 0;
문자 호스트 [256];
구조체 된 utsname UTS;
경우 (에서 gethostname (호스트, 255)! = 0 || UNAME (UTS) <0)
{
fprintf와 (표준 오류, "호스트 informationn를 가져올 수 없습니다");
출입구 (1);
}
/ * 어떤 옵션이 다음 단지는 sysname을 인쇄하지 않는 경우 * /
경우 (는 argc == 1) {
또, s_flag = 1;
}
그렇지 않으면
{
동안 ((C = getopt는 (는 argc, argv를, "asnrvm"))! = -1)
{
스위치 (c) {
케이스 '':
a_flag = 1;
휴식;
경우의 '
또, s_flag = 1;
휴식;
경우 'N':
n_flag = 1;
휴식;
케이스 'R':
r_flag = 1;
휴식;
경우 'V'
v_flag에 = 1;
휴식;
경우 'M':
m_flag = 1;
휴식;
경우 '?'
errflag ++;
휴식;
}
}
}
/ * 하나되어 있어야합니다 이상 잘못된 옵션을 전달 -
인쇄 사용 정보 및 출구 * /
(errflag! = 0)의 경우
{
print_usage ();
출입구 (1);
}
숯불 *의 sysname이며, * 컴퓨터 * 노드 이름, * 출시, * 버전;
를 sysname = uts.sysname;
기계 = uts.machine;
노드 이름 = uts.nodename;
= uts.release 해제;
버전 = uts.version;
경우 (a_flag == 1) {
의 printf ( "%의 %의 %의 %의 % SN"sysname이며, 노드 이름, 릴리스, 버전,
기계);
}
그렇지 않으면
{
숯불 *의 printstring;
/ * 모든 사태에 대한 충분한 공간을 할당 ... * /
printstring = (숯불 *) malloc에 (나 strlen (는 sysname) +
나 strlen (버전) +
나 strlen (자료) +
나 strlen (노드 이름) +
나 strlen (기계) 6);
strcpy와 (printstring, "");
경우 (또, s_flag == 1) {
strcat와 (printstring, sysname이며);
strcat와 (printstring, "");
}
경우 (n_flag == 1) {
strcat와 (printstring, 노드 이름);
strcat와 (printstring, "");
}
경우 (r_flag == 1) {
strcat와 (printstring, 자료);
strcat와 (printstring, "");
}
경우 (v_flag에 == 1) {
strcat와 (printstring 버전)
strcat와 (printstring, "");
}
경우 (m_flag == 1) {
strcat와 (printstring, 기계);
strcat와 (printstring, "");
}
풋 (printstring);
무료 (printstring);
}
0을 반환;
}
무효 print_usage (무효)
{
숯불 * 사용 [] = { "UNAME - (C) 2004 케빈 왈 드론"
"GNU 일반 공중 라이선스의 규정에 따라 배포"
"사용", "UNAME [옵션]",
"커널의 이름을 인쇄 -s"
"커널 버전을 인쇄 -v"
"커널 버전을 인쇄 -r"
"네트워크 노드의 호스트 이름을 인쇄 -n"
"컴퓨터 하드웨어 이름을 인쇄 -m"
"위의 모든 인쇄 -a"
"", "옵션없이, UNAME}는"UNAME -s와 같은 역할을;
int로 I = 0;
대한 (I = 0; i가 12 <; 내가 ++)
{
의 printf ( "%의 SN"* (사용량 + I));
}
}
카테고리별로 검색
인기있는 소프트웨어
-
Linux Secure Remix 17 Feb 15
-
Cub Linux 11 Apr 16
-
Kali Linux 22 Jun 18
-
XPQ4 1 Dec 17
-
Tor Browser 20 Jan 18
-
ArtistX 19 Feb 15
-
Unity Linux 15 Apr 15
uname
개발자의 기타 소프트웨어 Kevin Waldron
getconf
2 Jun 15
ZMsgServer
3 Jun 15
코멘트 uname
카테고리별로 검색
인기있는 소프트웨어
-
Elastix 2 Oct 16
-
VueScan 16 Aug 18
-
Xfburn 17 Feb 15
-
Zorin OS Lite 16 Aug 18
-
HP Linux Imaging and Printing 1 Dec 17
-
Oracle Solaris 22 Jun 18
-
Java-Chess 3 Jun 15
댓글을 찾을 수 없습니다