[計算機軟件及應用]Windows命令接口實驗報告
《[計算機軟件及應用]Windows命令接口實驗報告》由會員分享,可在線閱讀,更多相關《[計算機軟件及應用]Windows命令接口實驗報告(37頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 操作系統(tǒng)課程設計報告 作者:半童 合肥工業(yè)大學 獨立之精神,自由之思想! Windows命令接口實驗 一.實驗題目: 第29題——操作系統(tǒng)接口:Windows命令接口。(3人) 4分 二.實驗任務: 1.設計要求: l 為Windows操作系統(tǒng)建立兼容的DOS命令接口,文件與目錄命令; l 具體命令:DIR, RD,CD,MD, DEL,MOVE,REN, COPY, XCOPY, TIME, DATE,SORT,重定向命令>,<.,|,MORE,TY
2、PE ,CLS,EXIT命令格式可參照Windows的CMD.EXE或MS-DOS提供的命令; l 設計命令的名稱、參數(shù)等格式; l 可以字符形式接收命令,執(zhí)行命令,然后顯示命令執(zhí)行結果. 2.設計目的: (1)DIR命令:能夠正確顯示一個目錄里面的子目錄和文件 (2)RD命令:能夠刪除一個空目錄 (3)CD命令:能夠打開一個存在的目錄 (4)MD命令:能夠建立一個空目錄 (5)DEL命令:能夠刪除一個文件 (6)MOVE命令:能夠移動一個目錄或文件 (7)REN命令:能夠重命名一個目錄或文件 (8)XCOPY命令:能夠拷貝整個目錄 (8)TIME命令:顯示系統(tǒng)的時
3、間 (8)DATE命令:顯示系統(tǒng)的日期 (8)SORT命令:對文本內(nèi)容進行分類 (8)MORE命令:逐步分屏顯示 (8)TYPE命令:顯示文本內(nèi)容 (8)CLS命令:清楚屏幕顯示 (8)EXIT命令:退出 三:實驗環(huán)境: 1. PC機一臺 386以上 2. Microsoft Visual Studio2010 軟件 3. 實現(xiàn)語言:C語言 四:原理及算法描述: 1.基本原理: 用戶利用聯(lián)機命令接口實現(xiàn)與機器的交互時,先在終端的鍵盤上打入所需的命令,由終端處理程序接受該命令,并將它顯示在終端屏幕上。當一條命令輸入完后,由命令解釋程序?qū)γ钸M行分析,然后執(zhí)行
4、相應命令的處理程序。 2.算法描述: (1)存貯輸入的各命令參數(shù) void store_parameter(char *buffer,char *parameter[10],int *para_num) 說明:將輸入的命令一條一條存儲parameter[10]中,最大允許的參數(shù)個數(shù)為10個。 算法描述:為buffer設置一個指針buffer_point,如果該指針向下移動,碰到空格,繼續(xù)向下移動,直到遇到字符,讀進各存儲變量中parameter[10],最后如果遇到’\0’,則結束。 (2)瀏覽一個路徑下的目錄和文件 void my_dir(char *a[],int *
5、num) 說明:該命令只能顯示當前目錄中的文件和子目錄和當前目錄中子目錄中的文件和子目錄。并無如Windows中命令參數(shù)如此豐富。主要是考慮其復雜性,予以簡化了。 算法描述:如果只接受到mydir命令,后面并無其他參數(shù)時,顯示當前目錄下文件和子目錄。如果接受到兩個參數(shù),如果第二個參數(shù)(表示當前目錄中子目錄)存在,則顯示該目錄下文件和子目錄,如果不存在,則報錯。 (3)刪除一個存在的目錄,如果不存在,刪除失敗! void my_rd(char *a[],int *num) 算法描述:如果該目錄存在且為空目錄,則刪除,否則失敗。 (4)打開一個存在的目錄,如果不存在,打開失敗!
6、 void my_cd(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要打開的目錄。如果該目錄存在,則成功,否則失敗。 (5)創(chuàng)建一個目錄 void my_md(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要建立的目錄。如果存在該目錄,失敗,否則成功。 (6)刪除一個存在的文件,如果不存在,刪除文件失敗! void my_del(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要刪除的文件。如果該文件存在,則刪除成功,否則失敗。 (7)移動一個存在的文件,否則,移
7、動失敗 void my_move(char *a[],int *num) 算法描述:如果接受到三個參數(shù),其中第二個參數(shù)表示存在的文件或目錄,第三個參數(shù)表示將要移動到的參數(shù)。如果第二個參數(shù)不存在,則失敗,存在,成功。 (8)重命名一個已經(jīng)存在的文件,否則,重命名失敗! void my_ren(char *a[],int *num) 算法描述:如果接受到三個參數(shù),其中第二個參數(shù)表示將要重命名的目錄或文件,第三個參數(shù)表示將要重命名的新的名字。 (9)拷貝文件 void my_xcopy(char *a[],int *num) 算法描述:如果接受到三個參數(shù),其中第二個參數(shù)表示存在的目錄
8、或文件,第三個表示將要拷貝成的目錄或文件。 (10)顯示系統(tǒng)的時間 void my_time(char *a[],int *num) 算法描述:如果接受到一個參數(shù),調(diào)用系統(tǒng)的時間函數(shù),參數(shù)正確則輸出系統(tǒng)時間。 (11)顯示系統(tǒng)的日期 void my_date(char *a[],int *num) 算法描述:如果接受到一個參數(shù),調(diào)用系統(tǒng)的日期函數(shù),參數(shù)正確則輸出當時日期。 (12)對文本內(nèi)容進行分類 void my_sort(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要分類的文本文檔。如果該文件存在,則分類成功,否則失敗。 (13)
9、逐步分屏顯示文本內(nèi)容 void my_more(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要分屏顯示的文本文檔。如果該文件存在,則分屏顯示成功,否則失敗。 (14)顯示文本內(nèi)容 void my_type(char *a[],int *num) 算法描述:如果接受到兩個參數(shù),第二個參數(shù)表示要顯示的文本文檔。如果該文件存在,則顯示成功,否則失敗。 (15)清除屏幕顯示 void my_cls(char *a[],int *num) 算法描述:如果接受到一個參數(shù),調(diào)用系統(tǒng)的清屏函數(shù),參數(shù)正確則清除屏幕的輸入輸出。 (16)退出,后面可帶退出
10、參數(shù) void my_exit(char *a[],int *num) 算法描述:可以接受小于10個的參數(shù),其中第一個參數(shù)表示退出。后面幾個參數(shù)一起表示輸出的信息。 五.設計思路描述: 1.本課程設計調(diào)用到的API函數(shù)有: (1)typedef struct _WIN32_FIND_DATA { DWORD dwFileAttributes; FILETIME ftCreationTime; FILETIME ftLastAccessTime; FILETIME ftLastWriteTime; DWORD nFileSizeHigh; DW
11、ORD nFileSizeLow; DWORD dwOID; TCHAR cFileName[MAX_PATH]; } WIN32_FIND_DATA; 該結構存放著所找到文件的詳細信息,通過第一個字段,我們可以判斷找到的文件是目錄還是文件,通過cFileName可以獲得該文件的文件名,繼而可以對找到的文件進行操作。 (2)HANDLE FindFirstFile(LPCTSTR lpFileName, LPWIN32_FIND_DATA lpFindFileData ); 根據(jù)文件名查找文件,如執(zhí)行成功,返回一個搜索句柄。如果出錯,返回一個INVALID_HANDLE
12、_VALUE常數(shù)。應該用FindClose函數(shù)關閉這個句柄。 (3)BOOL FindNextFile( HANDLE hFindFile, LPWIN32_FIND_DATA lpFindFileData );該函數(shù)根據(jù)調(diào)用FindFirstFile函數(shù)返回的句柄查找下一個文件,返回值非零表示成功,零表示失敗。如不再有與指定條件相符的文件,會將GetLastError設置成ERROR_NO_MORE_FILES。 (4)BOOL FindClose( HANDLE hFindFile );該函數(shù)用來關閉FindFirstFile函數(shù)創(chuàng)建的一個搜索句柄。 (5)HANDLE Creat
13、eFile(LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORDdwCreationDispostion , DWORD dwFlagsAndAttributes, HANDLE hTemplateFile); 該函數(shù)創(chuàng)建,打開,或截取一個文件。它返回一個對象訪問句柄。也可以返回和打開一個目錄句柄。 (6)BOOL GetFileTime( HANDLE hFile, LPFILETIME lpCreationTime,
14、 LPFILETIME lpLastAccessTime, LPFILETIME lpLastWriteTime );該函數(shù)得到一個文件創(chuàng)建,最近訪問,最近修改日期,時間。 (7)GetCurrentDirectory(DWORD nBufferLength,LPWSTR lpBuffer );該函數(shù)得到當前目錄,存放在lpBuffer中。 (8) BOOL RemoveDirectory(LPCTSTR lpPathName);該函數(shù)一個存在的空目錄。 (9)BOOL SetCurrentDirectory(LPCWSTR lpPathName);該函數(shù)設置當前目錄。 (10BOOL
15、CreateDirectory(LPCTSTRlpPathName,LPSECURITY_ATTRIBUTES lpSecurityAttributes ); 該函數(shù)創(chuàng)建一個新目錄。如果該文件存在,創(chuàng)建失敗。 (11)BOOL DeleteFile(LPCTSTR lpFileName);該函數(shù)刪除一個存在的文件。 (12)BOOL MoveFile(LPCTSTR lpExistingFileName, LPCTSTR lpNewFileName);該函數(shù)移動或重命名一個文件或目錄(不管這個目錄里是否由子目錄或文件)。 (13)BOOL CopyFile(LPCTSTR lpExist
16、ingFileName, LPCTSTR lpNewFileName, BOOL bFailIfExists );該函數(shù)拷貝一個存在的文件或新文件。 (14)BOOL TimeFile(LPCTSTR lpExistingFileName);該函數(shù)調(diào)用輸出系統(tǒng)地時間。 (15)BOOL DateFile(LPCTSTR lpExistingFileName);該函數(shù)調(diào)用輸出系統(tǒng)地日期。 (16)BOOL SortFile(LPCTSTR lpExistingFileName);該函數(shù)打開文本文檔,將內(nèi)容進行分類。 (17)BOOL MoreFile(LPCTSTR lpExisting
17、FileName);該函數(shù)打開文本文檔,將內(nèi)容進行分屏顯示。 (18)BOOL TypeFile(LPCTSTR lpExistingFileName); 該函數(shù)打開文本文檔,將內(nèi)容進行顯示。 (19)BOOL ClsFile(LPCTSTR lpExistingFileName);該函數(shù)清除屏幕輸入輸出的全部內(nèi)容。 2.重要算法: 其實談不上重要算法,只是對上述API函數(shù)的活學活用而已。其中我的 my_dir(char *a[],int *num)函數(shù)要稍微復雜點。其中涉及到一個文件或目錄時間日期的獲取和轉(zhuǎn)換,這點是需要注意的。在源程序中,我已經(jīng)給出詳細的注解。
18、還有,最后結束時得關閉創(chuàng)建文件的句柄和搜索句柄。這點非常重要。 3. 流程圖: 開始 輸入一個完整的命令 parameter[0]==”mydir” or “MYDIR” 執(zhí)行my_dir()函數(shù) parameter[0]==”myrd” or “MYRD” 執(zhí)行my_rd()函數(shù) parameter[0]==”mycd” or”MYCD” 執(zhí)行my_cd()函數(shù) parameter[0]==”mymd” or”MYMD” 執(zhí)行my_md()函數(shù) parameter[0]==”mydel” or”MYDEL” 執(zhí)行my_del()函數(shù) parameter[0
19、]==”mymove” or”MYMOVE” 執(zhí)行my_move()函數(shù) parameter[0]==”myren” or”MYREN” 執(zhí)行my_ren()函數(shù) parameter[0]==”myxcopy” or”MYXCOPY” 執(zhí)my_xcopy()函數(shù) parameter[0]==”myexit” or”MYEXIT” 執(zhí)行my_exit()函數(shù) 返回當前目錄 存儲各命 令參數(shù) parameter[0]==”mytime” or”MYTIME” parameter[0]==”mydate” or”MYDATE” par
20、ameter[0]==”mysort” or”MYSORT” parameter[0]==”mymore” or”MYMORE” parameter[0]==”myxtype” or”MYTYPE” parameter[0]==”mycls” or”MYCLS” 執(zhí)my_time()函數(shù) 執(zhí)my_date()函數(shù) 執(zhí)my_sort()函數(shù) 執(zhí)my_more()函數(shù) 執(zhí)my_type()函數(shù) 執(zhí)my_ mycls()函數(shù) 七.實驗步驟: (1)測試源程序是否正常,測試通過即可運行Microsoft Visual Studio201
21、0 軟件 讓源程序生成執(zhí)行operating_system.exe,如圖: (2)將生成的operating_system.exe文件放置于要操作的文件夾內(nèi),并打開準備進行操作,如圖: 原目錄列表: (3)使用mydir命令正確顯示一個目錄里面的子目錄和文件,如圖: (4)使用myrd命令能夠刪除一個空目錄,如圖: (5)使用mycd能夠打開一個存在的目錄,如圖: (6)使用mymd命令能夠建立一個空目錄,如圖: (7)使用mydel命令能夠刪除一個文件,刪除后與前面的源目錄參照可知其刪除功能,如圖: (8)使用mymove命令能夠移動一
22、個目錄或文件,移動后與前面的源目錄參照可知其移動功能,如圖: (9)使用myren命令能夠重命名一個目錄或文件,命名后與前面的源目錄參照可知其命名功能,如圖: (10)使用myxcopy命令能夠拷貝整個目錄,拷貝后與前面的源目錄參照可知其拷貝功能 (11)使用mytime命令能夠顯示系統(tǒng)的時間,如圖: (12)使用mydate命令能夠顯示系統(tǒng)的日期,如圖: (13)使用mysort命令能夠?qū)ξ谋緝?nèi)容進行分類,分類后與前面的源目錄參照可知其分類功能,該功能是以首字母順序的方式進行重排,如圖: (14)使用mymore命令能夠?qū)ξ谋緝?nèi)容進行分屏顯示
23、,按Enter鍵可以逐步顯示文檔內(nèi)容,如圖:
(15)使用mytype命令能夠顯示文本內(nèi)容,如圖:
(16)使用CLS命令能夠清除屏幕的顯示內(nèi)容,如圖:
(17)使用EXIT命令退出operating_system.exe
六.程序清單:
(1)function.h 頭文件:
//****************************************************************************************
//存貯輸入的各命令參數(shù)
#include
24、nclude
25、 //如果為空格,指針繼續(xù)移進 while(*buffer_point == ) { buffer_point++; } //如果不是空格,讀進變量存儲區(qū) while(*buffer_point != && *buffer_point != \0) { *(parameter[(*para_num)]+j) = *buffer_point; buffer_point++; j++; } *(parameter[(*para_num)]+j) = \0; } } //**************
26、*********************************************************************** //瀏覽一個路徑下的目錄和文件 void my_dir(char *a[],int *num) { //瀏覽當前目錄文件 if( (*num) == 1) { HANDLE obj_handle; char *lpFileName = (char*)malloc(64*sizeof(char)); WIN32_FIND_DATA* find_file = new WIN32_FIND_DATA(); //API函
27、數(shù)WIN32_FIND_DATA FILETIME lpCreationTime,lpLastAccessTime,lpLastWriteTime;//創(chuàng)建時間,最近訪問時間,最近修改時間 SYSTEMTIME systime;//定義系統(tǒng)時間 //獲取當前目錄 GetCurrentDirectory(64,lpFileName); //API函數(shù)GetCurrentDirectory strcat(lpFileName,"\\*.*"); obj_handle = FindFirstFile(lpFileName,find_file);
28、//obj_handle初始化 API函數(shù)FindFirstFile(2) if(FindFirstFile(lpFileName, find_file) != INVALID_HANDLE_VALUE) //API函數(shù)FindFirstFile(2) { while (FindNextFile(obj_handle, find_file)) //API函數(shù)FindNextFile { HANDLE obj_dir = CreateFile(find_file->cFileName,GENERIC_READ,FILE_SHARE_REA
29、D | FILE_SHARE_DELETE \ |FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS, NULL); //API函數(shù)CreateFile if(GetFileTime(obj_dir,&lpCreationTime,&lpLastAccessTime,&lpLastWriteTime)) //API函數(shù)GetFileTime { FILETIME temp_time; FileTimeToLocalFil
30、eTime(&lpLastWriteTime, &temp_time); // 轉(zhuǎn)換成本地時間 FileTimeToSystemTime(&temp_time, &systime); // 轉(zhuǎn)換成系統(tǒng)時間格式 } printf("%d/%d/%d ",systime.wYear,systime.wMonth,systime.wDay);//年月日 printf("%d:%d:%d ",systime.wHour,systime.wMinute,systime.wSecond);//時分秒 printf("%s\n",fin
31、d_file->cFileName);// //printf("%d ",find_file->dwFileAttributes); CloseHandle(obj_dir);//API函數(shù)DWORD(1) } } FindClose(obj_handle); //API函數(shù)FindClose } //瀏覽其中目錄文件 else if((*num) == 2) { HANDLE obj_handle; char *lpFileName = (char*)malloc(64*sizeof(char)); cha
32、r *next_dir = (char*)malloc(64*sizeof(char)); WIN32_FIND_DATA* find_file = new WIN32_FIND_DATA(); //API函數(shù)WIN32_FIND_DATA FILETIME lpCreationTime,lpLastAccessTime,lpLastWriteTime;//創(chuàng)建時間,最近訪問時間,最近修改時間 SYSTEMTIME systime;//定義系統(tǒng)時間 WIN32_FIND_DATA* fd = new WIN32_FIND_DATA(); //API函數(shù)WIN3
33、2_FIND_DATA GetCurrentDirectory(64,lpFileName); //API函數(shù)GetCurrentDirectory //打開其中的某一個目錄 if(!SetCurrentDirectory(a[1])) //API函數(shù)SetCurrentDirectory printf("瀏覽目錄失敗,可能沒有此目錄!\n"); else { GetCurrentDirectory(64,next_dir); //API函數(shù)GetCurrentDirectory strcat(next
34、_dir,"\\*.*"); } obj_handle = FindFirstFile(next_dir, fd);//obj_handle初始化 API函數(shù)FindFirstFile(2) if(FindFirstFile(next_dir, find_file) != INVALID_HANDLE_VALUE) //API函數(shù)FindFirstFile(2) { while (FindNextFile(obj_handle, find_file)) //API函數(shù)FindNextFile { HANDLE obj_dir
35、 = CreateFile(find_file->cFileName,GENERIC_READ,FILE_SHARE_READ | FILE_SHARE_DELETE \ |FILE_SHARE_WRITE,NULL,OPEN_EXISTING,FILE_FLAG_BACKUP_SEMANTICS, NULL); //API函數(shù)CreateFile if(GetFileTime(obj_dir,&lpCreationTime,&lpLastAccessTime,&lpLastWriteTime)) //API函數(shù)GetFileTime
36、 { FILETIME temp_time; //臨時變量 FileTimeToLocalFileTime(&lpLastWriteTime,&temp_time); FileTimeToSystemTime(&temp_time, &systime); //轉(zhuǎn)換成系統(tǒng)時間 } printf("%d/%d/%d ",systime.wYear,systime.wMonth,systime.wDay);//年月日 printf("%d:%d:%d ",systime.wHour,systime.wMin
37、ute,systime.wSecond);//時分秒 printf("%s\n",find_file->cFileName);// CloseHandle(obj_dir); } } FindClose(obj_handle); //API函數(shù)FindClose //返回上一個目錄 SetCurrentDirectory(lpFileName); //API函數(shù)SetCurrentDirectory } //參數(shù)個數(shù)大于等于3,警告錯誤 else if((*num) >= 3) printf("語法格式
38、不正確!\n"); } //刪除一個存在的目錄,如果不存在,刪除失敗! void my_rd(char *a[],int *num) { if((*num) == 2) { if(!RemoveDirectory(a[1])) //API函數(shù)RemoveDirectory printf("刪除目錄失敗,可能沒有此目錄!\n"); else printf("刪除目錄成功!\n"); } else if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t
39、 myrd directory\n"); } else printf("語法格式不正確!\n"); } //打開一個存在的目錄,如果不存在,打開失敗! void my_cd(char *a[],int *num) { if((*num) ==2) { if(!SetCurrentDirectory(a[1])) //API函數(shù)SetCurrentDirectory printf("打開目錄失敗,可能沒有此目錄!\n"); else printf("打開目錄成功!\n"); } else
40、if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t mycd directory\n"); } else printf("語法格式不正確!\n"); } //創(chuàng)建一個目錄 void my_md(char *a[],int *num) { if((*num) == 2) { if(!CreateDirectory(a[1],NULL)) printf("創(chuàng)建新目錄失敗!"); else printf("創(chuàng)建新目錄成功\n"); } else
41、 if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t mymd directory\n"); } else printf("語法格式不正確!\n"); } //刪除一個存在的文件,如果不存在,刪除文件失敗! void my_del(char *a[],int *num) { if((*num) == 2) { if(!DeleteFile(a[1])) //API函數(shù)DeleteFile printf("刪除文件失敗!\n"); else p
42、rintf("刪除文件成功!\n"); } else if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t mydel file\n"); } else printf("語法格式不正確!\n"); } //移動一個存在的文件,否則,移動失敗 void my_move(char *a[],int *num) { if((*num) == 3) { if(!MoveFile(a[1],a[2])) //API函數(shù)MoveFile printf("移動文件失敗,文件可
43、能不存在!\n"); else printf("文件移動成功!\n"); } else if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t mymove file\n"); } else printf("語法格式不正確!\n"); } //重命名一個已經(jīng)存在的文件,否則,重命名失敗! void my_ren(char *a[],int *num) { if((*num) == 3)
44、 { if(!MoveFile(a[1],a[2])) //API函數(shù)MoveFile printf("重命名文件失敗,文件可能不存在!\n"); else printf("重命名文件成功!\n"); } else if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t myren file\n"); } else printf("語法格式不
45、正確!\n"); } //拷貝文件 void my_xcopy(char *a[],int *num) { if((*num) == 3) { if(!CopyFile(a[1],a[2],1)) //API函數(shù)CopyFile printf("拷貝文件失敗,文件可能不存在!\n"); else printf("拷貝文件成功!\n"); } else if((*num) == 1) { printf("正確語法格式為:\n"); printf("\t myxcopy file\n"); } else pri
46、ntf("語法格式不正確!\n"); } //顯示日期 void my_date() { system( "date"); } //顯示時間 void my_time() { system( "time"); } void my_sort(char *a[],int *num) { int lnum=0,min; char line[100][100],tmp[100];//行數(shù)、每行字符數(shù) string s[100]; ifstream infile(a[1]); if(!infile) { cout<<"無法打開文件"
47、<
48、t a=0;a<100;a++)
{
tmp[a]=line[x][a];
line[x][a]=line[min][a];
line[min][a]=tmp[a];
}
}
}
ofstream outfile(a[1],ios::out);
if(!outfile)
{
cout<<"文件寫入失敗"< 49、.close();
}
}
}
//屏顯
void my_type(char *a[],int *num)
{
char ch[1000];
ifstream infile(a[1]);
if(!infile)
{
cout<<"無法打開文件"<
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 6.煤礦安全生產(chǎn)科普知識競賽題含答案
- 2.煤礦爆破工技能鑒定試題含答案
- 3.爆破工培訓考試試題含答案
- 2.煤礦安全監(jiān)察人員模擬考試題庫試卷含答案
- 3.金屬非金屬礦山安全管理人員(地下礦山)安全生產(chǎn)模擬考試題庫試卷含答案
- 4.煤礦特種作業(yè)人員井下電鉗工模擬考試題庫試卷含答案
- 1 煤礦安全生產(chǎn)及管理知識測試題庫及答案
- 2 各種煤礦安全考試試題含答案
- 1 煤礦安全檢查考試題
- 1 井下放炮員練習題含答案
- 2煤礦安全監(jiān)測工種技術比武題庫含解析
- 1 礦山應急救援安全知識競賽試題
- 1 礦井泵工考試練習題含答案
- 2煤礦爆破工考試復習題含答案
- 1 各種煤礦安全考試試題含答案