欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    linux课程设计学生版Word文档下载推荐.docx

    • 资源ID:8166548       资源大小:95.85KB        全文页数:30页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    linux课程设计学生版Word文档下载推荐.docx

    1、(3). 判断一下,运行者的身份对这个文件或目录所拥有的权限,并输出权限数据!(注意利用 test 与 & 还有 | 等标志!)7、(选做)撰写一支程序,他的作用是:1.) 先查看一下 /root/test/logical 这个名称是否存在;2.) 若不存在,则创建一个文件,使用 touch 来创建,创建完成后离开; 3.) 如果存在的话,判断该名称是否为文件,若为文件则将之删除后创建一个目录,档名为 logical ,之后离开;4.) 如果存在的话,而且该名称为目录,则移除此目录!8、(选做)(任选其一)(1)编写一个 Shell 程序,键盘输入两个数及+、-、*、与/中的任一运算符,计算这

    2、两个数的运算 结果。(2)编写 4 个函数分别进行算术运算+、-、*、/,并编写一个菜单,实现运算命令。9、(选做)编写一个 Shell 程序,呈现一个菜单,有 0-5 共 6 个命令选项,1 为挂载 U 盘,2 为 卸载 U 盘,3 为显示 U 盘的信息,4 把硬盘中的文件拷贝到 U 盘,5 把 U 盘中的文件拷贝到硬盘 中,选 0 为退出。程序分析:把此程序分成题目中要求的 6 大功能模块,另外加一个菜单显示及选择的主模板。第 1章 Shell 脚本编程 Shell 命令行的运行 编写、修改权限和执行 Shell 程序的步骤 在 Shell 程序中使用参数和变量 表达式比较、循环结构语句和

    3、条件结构语句 在 Shell 程序中使用函数和调用其他 Shell 程序1-1 Shell 命令行书写规则 Shell 命令行的书写规则对 Shell 命令行基本功能的理解有助于编写更好的 Shell 程序,在执行 Shell 命令时多个命 令可以在一个命令行上运行,但此时要使用分号(;)分隔命令,例如:rootlocalhost root# ls a* -l;free;df长 Shell 命令行可以使用反斜线字符()在命令行上扩充,例如: rootlocalhost root# echo “this is long command”This is long command注意:“”符号是自动

    4、产生的,而不是输入的。1-2 编写/修改权限及执行 Shell 程序的步骤 编写 Shell 程序 执行 Shell 程序Shell 程序有很多类似 C 语言和其他程序设计语言的特征,但是又没有程序语言那样复杂。 Shell 程序是指放在一个文件中的一系列 Linux 命令和实用程序。在执行的时候,通过 Linux 操 作系统一个接一个地解释和执行每条命令。首先,来编写第一个 Shell 程序,从中学习 Shell 程序的编写、修改权限、执行过程。1-2-1 编辑 Shell 程序编辑一个内容如下的源程序,保存文件名为 date,可将其存放在目录/bin 下。 rootlocalhost bi

    5、n#vi date#! /bin/shecho “Mr.$USER,Today is:”echo &date “+%B%d%A”echo “Wish you a lucky day ! /bin/sh 通知采用 Bash 解释。如果在 echo 语句中执行 Shell 命令 date,则需要在 date命令前加符号“&”,其中%B%d%A 为输入格式控制符。1-2-2 建立可执行程序编辑完该文件之后不能立即执行该文件,需给文件设置可执行程序权限。使用如下命令。rootlocalhost bin#chmod +x date1-2-3 执行 Shell 程序执行 Shell 程序有下面三种方法:

    6、方法一:rootlocalhost bin#./ dateMr.root,Today is:二月 06 星期二Wish you a lucky day !方法二:另一种执行 date 的方法就是把它作为一个参数传递给 Shell 命令: rootlocalhost bin# Bash date方法三:为了在任何目录都可以编译和执行 Shell 所编写的程序,即把/bin 的这个目录添加到整个 环境变量中。具体操作如下: rootlocalhost bin#. date实例 1-1:编写一个 Shell 程序 mkf,此程序的功能是:显示 root 下的文件信息,然后建立一个 kk 的文件夹,在

    7、此文件夹下建立一个文件 aa,修改此文件的权限为可执行。 分析:此 Shell 程序中需要依次执行下列命令为:进入 root 目录:cd /root显示 root 目录下的文件信息:ls l新建文件夹 kk: mkdir kk进入 root/kk 目录:cd kk新建一个文件 aa: vi aa #编辑完成后需手工保存 修改 aa 文件的权限为可执行:chmod +x aa回到 root 目录:因此该 Shell 程序只是以上命令的顺序集合,假定程序名为 mkfrootlocalhost root#vi mkf cd /rootls l mkdir kk cd kkvi aachmod +x

    8、aa cd /root1-3 在 Shell 程序中使用的参数 位置参数 内部参数如同 ls 命令可以接受目录等作为它的参数一样,在 Shell 编程时同样可以使用参数。Shell程序中的参数分为位置参数和内部参数等。1-3-1 位置参数由系统提供的参数称为位置参数。位置参数的值可以用$N 得到,N 是一个数字,如果为 1, 即$1。类似 C 语言中的数组,Linux 会把输入的命令字符串分段并给每段进行标号,标号从 0 开 始。第 0 号为程序名字,从 1 开始就表示传递给程序的参数。如$0 表示程序的名字,$1 表示传 递给程序的第一个参数,以此类推。1-3-2 内部参数上述过程中的$0

    9、是一个内部变量,它是必须的,而$1 则可有可无,最常用的内部变量有$0、$#、$?、$*,它们的含义如下。 $0:命令含命令所在的路径。 $1: 传递给程序的第1个参数。 $2: 传递给程序的第2个参数。(以此类推) $#:传递给程序的总的参数数目。 $?:Shell 程序在 Shell 中退出的情况,正常退出返回 0,反之为非 0 值。 $*:传递给程序的所有参数组成的字符串。 $:当前进程的进程号。实例 1-2:编写一个 Shell 程序,用于描述 Shell 程序中的位置参数为:$0、$#、$?、$*,程序名为 test1,代码如下: rootlocalhost bin#vi test1

    10、echo “Program name is $0”;echo “There are totally $# parameters passed to this program ”;echo “The last is $?”;echo “The parameter are $*”;执行后的结果如下:rootlocalhost bin# test1 this is a test program /传递 5 个参数Program name is /bin/test1 /给出程序的完整路径和名字There are totally 5 parameters passed to this program /

    11、 参数的总数The last is 0 /程序执行效果The parameters are this is a test program / 返回由参数组成的字符串命令不计算在参数内。实例 1-3:利用内部变量和位置参数编写一个名为 test2 的简单删除程序,如删除的文件名为 a,则在终端中输入的命令为:test a分析:除命令外至少还有一个位置参数,即$#不能为 0,删除不能为$1,程序设计过程如下。(1) 用 vi 编辑程序 rootlocalhost bin#vi test2if test $# -eq 0 thenecho “Please specify a file!elsegzi

    12、p $1 /现对文件进行压缩mv $1.gz $HOME/dustbin /移动到回收站echo “File $1 is deleted !fi(2) 设置权限 rootlocalhost bin#chmod +x test2 (3) 运行rootlocalhost bin# test2 a (如果 a 文件在 bin 目录下存在) File a is deleted!1-4 在 Shell 程序中的使用变量 变量的赋值 变量的访问 变量的输入1-4-1 变量的赋值在 Shell 编程中,所有的变量名都由字符串组成,并且不需要对变量进行声明。要赋值给 一个变量,其格式如下:变量名=值等号(=)

    13、前后没有空格 例如:x=6a=”How are you ”表示把 6 赋值给变量 x,字符串“How are you ”赋值给变量 a。1-4-2 访问变量值如果要访问变量值,可以在变量前面加一个美元符号“$”,例如: rootlocalhost bin#a=”How are you ”rootlocalhost bin#echo “He just said:$a” He just said:How are you 一个变量给另一个变量赋值可以写成:变量 2=$变量 1例如:x=$ii+可以写成:i=$i+11-4-3 键盘读入变量值在 Shell 程序设计中,变量的值可以作为字符串从键盘读入

    14、,其格式为:read 变量 例如: rootlocalhost bin#read strread 为读入命令,它表示从键盘读入字符串到 str。实例 1-4:编写一个 Shell 程序 test3,程序执行时从键盘读入一个目录名,然后 显示这个目录下所有文件的信息。存放目录的变量为 DIRECTORY,其读入语句为:read DIRECTORY显示文件的信息命令为:ls a rootlocalhost bin#vi test3echo “please input name of directory”read DIRECTORY cd $DIRECTORY ls l (2)设置权限rootloc

    15、alhost bin#chmod +x test3 (3)执行rootlocalhost bin#./test3 注意:输入路径时需间隔符“/”结果。实例 1-5:运行程序 test4,从键盘读入 x、y 的值,然后做加法运算,最后输出(1)用 vi 编辑程序 rootlocalhost bin#vi test4echo “please input x y”read x,y z=expr $x+$yecho “The sum is $z” rootlocalhost bin#chmod +x test4 (3)执行rootlocalhost bin#./ test445 78The sum i

    16、s 123表达式 total=expr $total +$num及 num=expr $num +1中的符号“”为键盘左上角的“”键。1、特殊符号(1)引用符号在bash中,许多字符有特殊的含义。如果希望bash忽略某些字符的特殊含义,可以使用一种称为“引用”的技术,通知Shell暂时忽略被引用字符的特殊含义,将其作为普通字符处理。Shell在使用“引用”时用到三种字符:转义符“”、单引号“”和双引号“”引用符号1 转义符“”将转义符“”放在Shell特殊字符之前,则Shell忽略该字符原有的特殊含义。用这种方式时,必须在每一个欲忽略其特殊含义的特殊字符之前添加一个“”字符。引用符号2 单引号

    17、“”将字符串放在一对单引号之间,则单引号内的所有字符的特殊含义都被忽略,而只作为普通字符解释。例1:下面两条命令是等效的。# echo f*?# echo f*?例2:# string=$PATH# echo $string$PATH例3:# name=liuhongqis home引用符号3 双引号“”使用双引号的引用与单引号的类似,括在双引号内的大部分特殊字符将被看作普通字符,但也有一些特殊字符即便用双引号括起来之后仍然保留着其特殊的意义,比如$、”和。例:假定变量PATH的值为/usr/bin# string=“$PATH and $PATH”/usr/bin and $PATH(2)

    18、命令替换符“”命令替换符“”(反引号)的作用跟引用字符的作用相反。反引号括起来的字符串被Shell解释为命令行,在执行时,Shell首先执行该命令行,并以它的标准输出结果取代整个反引号(包括两个反引号)部分。这个字符所对应的键一般位于键盘的左上角。# pwd/root# string=“Current directory is pwd”Current directory is /root# today=date# echo Today is $todayToday is Mon Jan 15 16:20:12 CST 20022、expr 命令 expr命令是一个手工命令行计数器,用于在UNI

    19、X/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串。 格式为: expr Expression (命令读入Expression 参数,计算它的值,然后将结果写入到标准输出)参数应用规则:用空格隔开每个项;用 (反斜杠) 放在 shell 特定的字符前面;对包含空格和其他特殊字符的字符串要用引号括起来expr用法实例讲解 (1)整数运算# expr 14 % 95# expr 1000 + 9001900# expr 30 / 3 / 2# expr 30 * 3 (使用乘号时,必须用反斜线屏蔽其特定含义。90# expr 30 * 3expr: Syntax error(2)计算

    20、字串长度# expr length “this is a test”14(3)增量计数说明:expr在循环中用于增量计算。先将变量初始化为0,然后循环值加1,反引号的用法为命令替代。# LOOP=0# LOOP=expr $LOOP + 11-5 表达式的比较 字符串操作符 逻辑运算符 用 tes t 比较的运算符 数字比较符 文件操作符在 Shell 程序中,通常使用表达式比较来完成逻辑任务。表达式所代表的操作符有字符操作 符、数字操作符、逻辑操作符、以及文件操作符。其中文件操作符是一种 Shell 所独特的操作符。 因为 Shell 里的变量都是字符串,为了达到对文件进行操作的目的,于是才

    21、提供了文件操作符。1-5-1 字符串比较作用:测试字符串是否相等、长度是否为零,字符串是否为 NULL。 常用的字符串操作符如表 1-1所示.。表 1-1 常用的字符串操作符字符串操作符含义及返回值=比较两个字符串是否相同,相同则为“真”!比较两个字符串是否不相同,不同则为“真”-n比较两个字符串长度是否大于零,若大于零则为“真”-z比较两个字符串长度是否等于零,若等于零则为“真”实例 1-6:从键盘输入两个字符串,判断这两个字符串是否相等,如相等输出。【例1】 字符串比较的使用。# str1=abcd# test $str1 = abcd# echo $?【例2】 含有空格的字符串的比较。#

    22、 strl=“”# test $str1# test “$str1”# test n “$str1”test 命令的测试功能test是Shell程序中的一个表达式,用test命令去判断文件的存在与性质,变量的相互关系;如果条件为真,则返回一个 0 值。如果表达式不为真,则返回一个大于 0 的值, 也可以将其称为假值。检查最后所执行命令的状态的最简便方法是使用 $? 值。test 命令期望在命令行中找到一个参数,当 shell 没有为变量赋值时,则将该变量视为空。这意味着在处理脚本时,一旦脚本寻找的参数不存在,则 test 将报告该错误。test 和 命令虽然 Linux 和 UNIX 的每个版

    23、本中都包含 test 命令,但该命令有一个更常用的别名 左方括号:。test 及其别名通常都可以在 /usr/bin 或 /bin (取决于操作系统版本和供应商)中找到。当您使用左方括号而非 test 时,其后必须始终跟着一个空格、要评估的条件、一个空格和右方括号。右方括号不是任何东西的别名,而是表示所需评估参数的结束。条件两边的空格是必需的,这表示要调用 test。test 和 的语法如下:test expression测试的标志代表意义1. 关於某个档名的文件类型判断,如 test -e filename 表示存在否-e 该档名是否存在?(常用)-f 该档名是否存在且为文件(file)?-

    24、d 该档名是否存在且为目录(directory)?-b 该档名是否存在且为一个 block device 装置?-c 该档名是否存在且为一个 character device 装置?-S 该档名是否存在且为一个 Socket 文件?-p 该档名是否存在且为一个 FIFO (pipe) 文件?-L 该档名是否存在且为一个连结档?2. 关於文件的权限侦测,如 test -r filename 表示可读否 (但 root 权限常有例外)-r 侦测该档名是否存在且具有可读的权限?-w 侦测该档名是否存在且具有可写的权限?-x 侦测该档名是否存在且具有可运行的权限?-u 侦测该档名是否存在且具有SUID的属性?-g 侦测该档名是否存在且具有SGID的属性?-k 侦测该档名是否存在且具有Sticky bit的属性?-s 侦测该档名是否存在且为非空白文件?3. 两个文件之间的比较,如: test file1 -nt file2-nt (newer than)判断 file1 是否比 file2 新-ot (older than)判断 file1 是否比 file2 旧-ef 判断 file1 与 file2 是否为同一文件,可用在判断 hard link 的判定上。主要意义在判定,两个文件是否均指向同一个


    注意事项

    本文(linux课程设计学生版Word文档下载推荐.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开