linux操作系统实验五 2Word文件下载.docx

上传人:b****6 文档编号:21722651 上传时间:2023-01-31 格式:DOCX 页数:14 大小:355.45KB
下载 相关 举报
linux操作系统实验五 2Word文件下载.docx_第1页
第1页 / 共14页
linux操作系统实验五 2Word文件下载.docx_第2页
第2页 / 共14页
linux操作系统实验五 2Word文件下载.docx_第3页
第3页 / 共14页
linux操作系统实验五 2Word文件下载.docx_第4页
第4页 / 共14页
linux操作系统实验五 2Word文件下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

linux操作系统实验五 2Word文件下载.docx

《linux操作系统实验五 2Word文件下载.docx》由会员分享,可在线阅读,更多相关《linux操作系统实验五 2Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。

linux操作系统实验五 2Word文件下载.docx

sh<

prog

2)、以脚本名作为Shell参数的执行方式

sh脚本名[参数]如:

shprog

3)、改执行权限后直接执行方式

如:

#chmoda+xprog

#./prog

3、Shell变量:

1)、可写的环境变量

$echo$PS1

$PS1=“[\u@@@wdg-Linux-9]”

2)、位置参数:

在命令行传递给shell脚本的参数。

(1)位置参数及引用

可以编写一个shell脚本,当从命令行或者从其他shell脚本中调用它的时候,这个脚本接收若干参数。

这些选项是通过Linux作为位置参数(positionalparameter)提供给shell程序的。

在shell脚本中应有变量,接收实参,这类变量的名称很特别,分别是1,2,3,…,这类变量称为位置变量。

位置参数1存放在位置变量1中,位置参数2存放位置变量2中,……,在程序中可以使用$1,$2,……来访问。

下述是一个shell程序的mypgm1,只带了一个参数(名字),并在屏幕上显示这个名字:

#Namedisplayprogram1

if[$#-eq0]

then

echo“Namenotprovided”

else

echo”Yournameis$1”

fi

在pdksh和bash中,如果执行mypgm1如下:

#.mypgm1

将得到输出:

Namenotprovided

但是,如果执行mypgm1如下:

#.mypgm1sanjia

则得到如下的输出:

Yournameissanjia

(2)用set命令为位置参数赋值

在shell程序中可以利用set命令为位置参数赋值或重新赋值。

(1)一般格式:

set 

 

[参数表]

(2)说明:

该命令后面无参数时,将显示系统中的系统变量的值;

如果有参数将分别给位置参数赋值。

3)、用户自定义变量:

a、字符串赋值,格式如下:

变量名=字符串

如:

$mydir=/home/a

$echo$mydir

$echomydir

b、如果在赋给变量的值中要含有空格、制表符或换行符,那么就应该用双引号把这个字符串括起来。

$myname=“zhangsan”

c、变量值可以作为某个长字符串中的一部分。

如果它在长字符串的末尾,就可以利用直接引用形式。

$s1=ing

$echowalk$s1orread$s1orleep$s1

如果它在长字符串的开头或中间,应该用{}把变量名括起来。

$dir=/home/user1

$echo${dir{}m1.c

4)、用不带参数的set命令可以显示所有“shell变量(包括用户自定义变量)名以及它们的当前值。

$set<

回车>

4、Shell中的引号:

1)、双引号(“”)

双引号括起来的字符,除$、倒引号、和反斜线(\)仍保留其特殊功能外,其余字符通常作为普通字符对待。

$echo“Mycurrentdiris`pwd`”

$echo“Mycurrentdiris$HOME”

2)、单引号(‘’)

单引号内所有字符均作为普通字符对待。

$echo‘Mycurrentdiris`pwd`’

3)、倒引号(``)

倒引号括起的字符串被Shell解释为命令行,在执行时先执行该命令行,并以它的标准输出结果取代整个倒引号部分。

常用的方式有以下几种:

(1)、Shell解释执行

$echocurrentdiris`pwd`

(2)、利用倒引号的Shell解释功能可以进行命令替换,即把倒引号中的命令的结果赋给指定变量。

$mypath=`pwd`

$echoMydiris$mypath

(3)、倒引号的嵌套应用,倒引号的嵌套时必须在内层的一组倒引号用反斜线(\)进行转义。

$mypath=`echomydiris\`pwd\``

$echo$mypath

程序实例:

1、创建一个简单的列目录和日期的shell脚本并运行之。

步骤:

1入下列命令,创建一个新文件:

cat>

new_script

⑵输入下列行:

echoYourfilesare

ls

echotodayis

date

按回车键将光标移到一个新行,按Ctrl+D键保存并退出。

⑶检查文件内容,确保它是正确的:

#catnew_script

⑷运行脚本,输入它的文件名:

#new_script

该脚本不运行。

⑸输入下列命令,显示文件的权限:

#ls–lnew_script

权限表明该文件不是可执行。

要通过简单调用文件名来运行脚本,必须有权限。

⑹输入下列命令,使new_script变成可执行文件。

chmod+xnew_script

⑺要查看新的权限,输入:

ls–l

现在拥有文件的读、写和执行权限。

⑻输入新脚本的名字以执行它:

所有输入到文件的命令都执行,并输出到屏幕上。

⑼如果接收到错误信息,比如:

commandnotfound

输入下列命令:

#./new_script

日4月112:

37:

00CST2012

该命令行通知shell到哪里寻找shell脚本new_script,即您的当前目录“.”。

2.编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同示“Match”,并显示“Endofprogram”,如果不同则显示“Endofprogram”。

提示:

echo–n是显示内容,但不回车换行。

$cat>

if1

echo–n“word1:

readword1

echo–n“word2:

readword2

iftest“$word1”=“$word2”

then

echo“Match”

fi

echo“Endofprogram.”

<

程序说明>

①if,then控制结构的语法是:

iftest_command

commands

②其中test_command为test“$word1”=“$word2”,test是一个内置命令,如果它的第一个参数和第三个参数存在第二个参数所指定的关系,那么test将返回ture。

Shell将执行then和fi之间的命令。

否则执行fi后面语句。

修改上述程序,编程提示用户输入两个单词,并将其读入,然后比较这两个单词,

两个单词相同显示“Match”,不同则显示“Notmatch”,最后显示“Endofprogram”。

编程提示>

请使用if,then,else控制结构。

3、编程使用case结构创建一个简单的菜单,屏幕显示菜单:

a.Currentdateandtime

b.Usercurrentlyloggedin

c.Nameoftheworkingdirectory

d.Contentsoftheworkingdirectory

Entera,b,cord:

根据用户输入选项做相应操作。

参考程序>

echo–e“\nCOMMANDMENU\n”

echo“a.Currentdateandtime”

echo“b.Usercurrentlyloggedin”

echo“c.Nameoftheworkingdirectory”

echo“d.Contentsoftheworkingdirectory\n”

echo–n“Entera,b,cord:

readanswer

echo

case“$answer”in

a)date;

;

b)who;

c)pwd;

d)ls;

*)

Echo“Thereisnoselection:

$answer”;

Esac

4.用if,then,else控制结构编写一段shell小程序,根据执行时候获取的当前时间显示出不同的问候信息。

#!

/bin/bash

a=`date+%H`

if(test$a-lt12);

echo"

GoodMorning!

"

else

GoodAfternoon!

4、实验结果

1.shell脚本的建立同建立普通文本文件的方式相同,可利用编辑器vi或cat命令,进行程序录入和编辑加工。

2.shell脚本的执行(通常用三种方式)

3.Shell变量:

5、Shell中的引号:

五、实验总结

通过这次试验,我了解了常用shell的编程特点以及shell程序设计的基础知识。

认识并且理解了shell程序流程控制、shell程序的运行方式、shell程序的调试方法。

通过仔细做这次试验,对于shell的编程方法和技巧的知识有了进步,在看出一些眉目,学会了shell编程的一些小知识之后,感觉还是挺有意思的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1