unix 基础new

unix 基础new

ID:22369970

大小:38.51 KB

页数:10页

时间:2018-10-28

unix 基础new_第1页
unix 基础new_第2页
unix 基础new_第3页
unix 基础new_第4页
unix 基础new_第5页
资源描述:

《unix 基础new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、·Ubuntu·Forum·Wiki·Linux·Blog·Paste·Chat窗体顶端搜索 窗体底端·页面·讨论·编辑·历史·简体·繁体 ·导航o首页o最近更改o随机页面o页面分类o帮助·编辑o编辑指南o沙盒o当前事件o字词处理·工具箱o链入页面o链出更改o所有特殊页面·个人工具o登录Shell编程基础出自Ubuntu中文本文作者:Leal授权许可:·创作共享协议·GNU自由文档许可证编辑人员:FireHare,Dbzhang800我们可以使用任意一种文字编辑器,比如gedit、kedit、emacs、vi等

2、来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):#!/bin/sh...注意:最好使用“!/bin/bash”而不是“!/bin/sh”,如果使用tcshell改为tcsh,其他类似。符号#!用来告诉系统执行该脚本的程序,本例使用/bin/sh。编辑结束并保存后,如果要执行该脚本,必须先使其可执行:chmod+xfilename此后在该脚本所在目录下,输入./filename即可执行该脚本。目录[隐藏]·1Shell里的一些特殊符号·2命令行参数·3Shell脚本示例o3.1一般编程步骤o3.

3、2二进制到十进制的转换o3.3文件循环拷贝·4脚本调试[编辑]Shell里的一些特殊符号a[]如果你写过比较复杂的脚本,就会发现可能在几个地方使用了相同的代码,这时如果用上函数,会方便很多。函数的大致样子如下:functionname(){#insidethebody$1isthefirstargumentgiventothefunction#$2thesecond...body}你需要在每个脚本的开始对函数进行声明。下面是一个名为xtitlebar的脚本,它可以改变终端窗口的名称。这里使用了一个名为help的

4、函数,该函数在脚本中使用了两次:#!/bin/sh#vim:setsw=4ts=4et:help(){cat<

5、:[-z"$1"]&&help["$1"="-h"]&&help#sendtheescapesequencetochangethextermtitelbar:echo-e"33]0;$107"#在脚本中提供帮助是一种很好的编程习惯,可以方便其他用户(和自己)使用和理解脚本。[编辑]命令行参数我们已经见过$*和$1,$2...$9等特殊变量,这些特殊变量包含了用户从命令行输入的参数。迄今为止,我们仅仅了解了一些简单的命令行语法(比如一些强制性的参数和查看帮助的-h选项)。但是在编写更复杂的程序时,您可能会

6、发现您需要更多的自定义的选项。通常的惯例是在所有可选的参数之前加一个减号,后面再加上参数值(比如文件名)。有好多方法可以实现对输入参数的分析,但是下面的使用case表达式的例子无疑是一个不错的方法。#!/bin/shhelp(){cat<

7、t1;;#functionhelpiscalled-f)opt_f=1;shift1;;#variableopt_fisset-l)opt_l=$2;shift2;;#-ltakesanargument->shiftby2--)shift;break;;#endofoptions-*)echo"error:nosuchoption$1.-hforhelp";exit1;;*)break;;esacdoneecho"opt_fis$opt_f"echo"opt_lis$opt_l"echo"firstargis$

8、1"echo"2ndargis$2"你可以这样运行该脚本:cmdparser-lhello-f---somefile1somefile2返回结果如下:opt_fis1opt_lishellofirstargis-somefile12ndargissomefile2这个脚本是如何工作的呢?脚本首先在所有输入命令行参数中进行循环,将输入参数与case表达式进行比较,如果匹配则设置一个变量并

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。