版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、濱江學(xué)院課程設(shè)計(jì)報(bào)告題 目 Linux課程設(shè)計(jì)院系計(jì)算機(jī)系專業(yè)軟件工程學(xué)生姓名 學(xué) 號(hào)2014年6月11日、 Shell編程題(1)編寫一個(gè)shell腳本,求費(fèi)波納奇數(shù)列的前 20項(xiàng)及總和。bianltan9=l; re5ultl=0; resultz=o; resultSsB;count=9while $t>tanltang - le 28 doif Sbtanltang -eq 1 thenLet resultlllet 匚aunt+=resultllet resultSresultleltf $t>tanltang -eq 2 th&Olet resulr2=llet
2、 count+=result2Let reulti=r&sult2elselet r&$ult3=re$ultl+re$ultzlet re4ulti»result2l亡t reskjtt2=result3let courit+-re$uLt3ftecho "第SbtanLiang個(gè)的偵冷:$result3bh let bianLiang+=idoneecho "前的項(xiàng)總和為;$CQunt"運(yùn)行結(jié)果如圖:ddee第壬個(gè)的值為 第了個(gè)的值為 弟4個(gè)的佰為 見5個(gè)的值為ro&tubuntu:-/testLtnuxw basfi tes
3、t 1 第個(gè)的值為注陣圧個(gè)的值為油 第丁個(gè)的值為:均 弟*個(gè)的佰為:“ 第9個(gè)的值為:卻 弟個(gè)的值為汚5 第近個(gè)的值尢汨9 i第圮個(gè)的值尢 凈箱個(gè)的HJ:233 第二4個(gè)的值1:377 圭15個(gè)的盤為 第沾個(gè)的債溝"飾 第訂個(gè)的(H尢:1M7 第工8亍的fH:2584 第站個(gè)的值 第獅個(gè)的值為= 6765 前:!B項(xiàng)總和為:17710|廠oof會(huì) 在根目錄下有四個(gè)文件m1.txt ,m2.txt ,m3.txt , m4.txt,用Shell 編程,實(shí)現(xiàn)自動(dòng)創(chuàng)建 m1,m2,m3,m4四個(gè)目錄,并將m1.txt,m2.txt,m3.txt,m4.txt四個(gè)文件分別拷貝到各自相應(yīng)的目錄
4、下。程序運(yùn)行之前目錄結(jié)果如下:rootubuntu:nuxM IsHl* txt txt hS + txt pi4 txt testl test3 test4 tests rot$ubuntu:- /teSitLinuK? |程序源碼如下:if tbe-ftfor I cp n done運(yùn)行之后目錄結(jié)構(gòu)如下:rootubuntu:-/testLinbash testJ rooteub(jntu:-/te5tLtnuKrf Isml n 1. t>t nZ n2»txt n3h4 M* txt testl test3 test4 teatsrootubuntutestLirnjx
5、# Is ml/ mi.txrrootubuntui/testLinuK# |(3)編寫shell程序,使得使用者輸入一個(gè)文檔名,做出以下判斷:a) 這個(gè)文件是否存在,若不存在則給予一個(gè)"File name does not exist”的信息,并中斷程序;b) 若這個(gè)文件存在,則判斷他是個(gè)文件或目錄,結(jié)果輸出"Filename is regular file或"File name is directory”;c) 判斷一下,運(yùn)行者的身份對這個(gè)文件或目錄所擁有的權(quán)限,并輸出權(quán)限數(shù)據(jù)!輸入一個(gè)不存在的目錄結(jié)果如下:rootubuntu:-/testLinux# ba
6、sh test4Please Input a filename,!*11 check the ftlenane1s type and its permissions.Please input a filename:a beIhe filenarc DO HOT exist!rootut)untu:*/tetLinux# |程序源碼如下:echo% f il嚴(yán)L rector j ?erhopl MU亠s.二七亠:Is eddflleraarietest&& Cho '&S exittest!站 echoEE exit=Htest&& =test&
7、amp;& =test-w SfHollar4 KU.=edi©Tilt ftlen»*i 皂t ho*h£ mjlb f m"輸入一個(gè)已存在的目錄,得到權(quán)限信息如下:-/tcstLinux# bdsh tcst4Please input a filename,1*11 check the filename * £ type and its pernissione.Pleose input a flvcnanc;nl+txtThe fllendnetni.tKt ts a regulere rile,And the pcrnission
8、s is readable writcoblc»rcotubuntu:-/testLinkix# |(4)設(shè)計(jì)一個(gè)shell程序cuts ,它由標(biāo)準(zhǔn)輸入讀取數(shù)據(jù),獲取由第一個(gè)參數(shù) n和第二個(gè)參數(shù)m所限定范圍的數(shù)據(jù),n和m都是整數(shù)。即從輸入的字符串中抽取第n個(gè)字符至第m個(gè)字符之間的所有字符(包括這兩個(gè)字符)。例如:鍵盤輸入)$cuts 11 14This is a test of cuts program ( test ( 顯示結(jié)果)程序源碼如下: Ji j r n j ri n 電 Fi|U if 1/ LI 1/ wu 3rl 1 read line echo|cut,1 - C
9、7 "nt * Lpp程序運(yùn)行結(jié)果如下:rcotubuntu:'/testLtnuxs bash tests 11 14 This is test of cuts progrrt testrootubuntui'/testLlnuxff |'j二、 Linux下C語言程序設(shè)計(jì)一課程設(shè)計(jì)Linux下用C語言進(jìn)程實(shí)現(xiàn)#in clude< uni std.h>#in clude<stdio.h>#in clude</usr/ in clude/sys/types.h>#in clude<stri ng.h>main (
10、)pid_t pid1,pid2;char str120,str220;if(pid 1= vfork()<0)perror(”創(chuàng)建子進(jìn)程一錯(cuò)誤!n");exit(0);else if(pid1=0)printf("輸入字符串一:”);sca nf("%s",str1); exit(0);if(pid2=vfork()<0)perror(”創(chuàng)建子進(jìn)程二錯(cuò)誤!n");exit(0);else if(pid2=0)printf("輸入字符串二:");sca nf("%s",str2);exit(0
11、);waitpid(pid1,NULL,0);waitpid(pid2,NULL,0);prin tf("你輸入的字符串一 :sn",str1);prin tf("你輸入的字符串二:sn",str2); #in clude<sig nal.h>#in clude< uni std.h>#in clude<stdio.h>#in clude<stdlib.h>#in clude<sys/types.h>#in clude<sys/stat.h>#in clude<fc ntl.h
12、>#in clude<sys/ipc.h>#in clude<sys/shm.h>#defi ne key 1024#defi ne size 160static void sig n(i nt);int shmid;char* shmaddr;main ()pid_t pid;char str20;shmid=shmget(key,size,IPC_CREAT|0600);if(pid=fork()<0)perror(”創(chuàng)建子進(jìn)程錯(cuò)誤!n");exit(0);else if(pid=0)if(sig nal(SIGUSR1,sig n)=SIG_
13、ERR)printf("SIGUSR1 錯(cuò)誤!n");exit(0);pause();printf(”子進(jìn)程結(jié)束!n");exit(O);sleep(1);shmaddr=(char*)shmat(shmid,NULL,O);printf("請輸入字符串:”);scan f("%s",str);strcpy(shmaddr,str);shmdt(shmaddr);kill(pid,SIGUSR1);wait();shmctl(shmid,IPC_RMID,NULL);static void sig n(i nt sig nnum)in
14、t fd;char* shmaddr;if(sig nnu m=SIGUSR1)prin tf("子進(jìn)程接收到 SIGUSR1.n"); shmaddr=(char*)shmat(shmid,NULL,0);if(fd=ope n( "testfile.txt",O_RDWR|O_CREAT|O_TRUNC)=-1) prin tf("n打開文件錯(cuò)誤! n");return 0;elseprin tf("寫入:%sn ”,shmaddr);write(fd,shmaddr,20);close(fd); shmdt(shmad
15、dr);運(yùn)行結(jié)果:anneanna MS-7623;S BC examples.desktop 公弭購 驗(yàn) 4 H 陋呉 史榜 T<!普樂 虞圍 artnaann-MS 76?3:cd Cannanna-MS-76Is1 l.cannaanna MS 7623:/C$ gcc © 1 l.cl.c; Tn function "nain":tfecUratin of built - in declaration Qt built in rilarati&n of built-in declaration of built-infunction *exi
16、tp function 'exit* funetioh *exitf function *exit*i乂;14:warninginmpatibleimplicitl.c:Z0:warning:incoapotil>leinpllcltl_c:26:warning:incoMpatibleimplicitl,c:32:warning:incompatibleimplicitannaanna-HS-762$;-/C$ ./I 航人字符雷一 :asd 琲人宇將田二:dsa壞茅人的亭符串一:aid 林確人的字蒂粛二:陽3 annaanna-MS-7625:'/CS annaann
17、a MS-7623:gcc -o 1 l.cgcc: l.c:沮青翟嚇文存或翅擴(kuò)gcc: no Input fileannnF)a-MS-7&23:-5 cd Cannaanna-MS-7623:/$ gcc -o 1 1.cl.c: In function 'main':l.c:斗4: warniog: inconpatible implicit declaration of built-in fuflttion qstrcpyf Let In function isign,:l.c:62; warning: (returnJ with a value, in function returning void-MS- 7623:/CS /1請唏入字苻串:asda 子 ifil? J#iftS*JSIGUSRl.同 A:ada子避穆靖朿!nnnn-M$-7W3:|實(shí)驗(yàn)總結(jié)通過這次實(shí)驗(yàn),大致對lin ux有一個(gè)系統(tǒng)的了解,能在li
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 劉胡蘭課件教學(xué)課件
- 廣東省韶關(guān)市曲江區(qū)2023-2024學(xué)年六年級(jí)上學(xué)期期末道德與法治模擬試題5
- 裝修防坑合同模板
- 青島勞動(dòng)合同模板
- 青磚銷售合同模板
- 小暑的由來課件
- 租房合同模板公積金
- 鋁窗安裝合同模板
- 銷售綠化苗木合同模板
- 車位評(píng)估租賃合同模板
- 普通高考考生戶籍情況審查登記表
- 南京文化創(chuàng)意和設(shè)計(jì)服務(wù)與相關(guān)產(chǎn)業(yè)融合發(fā)展報(bào)告
- 社區(qū)工作者考試考前必背300題
- 2023年陜煤集團(tuán)招聘筆試題庫及答案解析
- 清華大學(xué)2023年11月(高三)中學(xué)生標(biāo)準(zhǔn)學(xué)術(shù)能力診斷測試?yán)砭C生物試題
- 凸透鏡成像規(guī)律動(dòng)畫可拖動(dòng)最佳版swf
- 教育培訓(xùn)記錄表(液化氣站)
- 外科學(xué)-第六十二章-脊柱、脊髓損傷課件
- 電力基礎(chǔ)知識(shí)匯總課件
- 大象版小學(xué)科學(xué)二年級(jí)上冊實(shí)驗(yàn)報(bào)告單全冊
- 2020-2022學(xué)年部編版八年級(jí)語文古詩詞專項(xiàng)練習(xí)卷 部編人教版八年級(jí)上冊
評(píng)論
0/150
提交評(píng)論