Ubuntu Shell编程基础入门

我们可以使用任意一种">文字编辑器,比如gedit、kedit、emacs、vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):

#!/bin/sh
...

注意:最好使用“!/bin/bash”而不是“!/bin/sh”,如果使用tc shell改为tcsh,其他类似。

符号#!用来告诉系统执行该脚本的程序,本例使用/bin/sh。编辑结束并保存后,如果要执行该脚本,必须先使其可执行:

chmod +x filename

此后在该脚本所在目录下,输入 ./filename 即可执行该脚本。

引号
 
在向程序传递任何参数之前,程序会扩展通配符和变量。这里所谓的扩展是指程序会把通配符(比如*)替换成适当的文件名,把变量替换成变量值。我们可以使用引号来防止这种扩展,先来看一个例子,假设在当前目录下有两个jpg文件:mail.jpg和tux.jpg。

#!/bin/sh

echo *.jpg

运行结果为:

mail.jpg tux.jpg

引号(单引号和双引号)可以防止通配符*的扩展:

#!/bin/sh

echo "*.jpg"
echo '*.jpg'

其运行结果为:

*.jpg
*.jpg

其中单引号更严格一些,它可以防止任何变量扩展;而双引号可以防止通配符扩展但允许变量扩展:

#!/bin/sh

echo $SHELL
echo "$SHELL"
echo '$SHELL'

运行结果为:

/bin/bash
/bin/bash
$SHELL

此外还有一种防止这种扩展的方法,即使用转义字符——反斜杆:\:

echo \*.jpg
echo \$SHELL

输出结果为:

*.jpg
$SHELL

时间: 2024-08-03 21:04:34

Ubuntu Shell编程基础入门的相关文章

SHELL编程基础之BASH入门

1.了解SHELL 只要能够操作应用程序的接口都能够称shell.shell也是一个应用程序,工作在用户模式,运行为进程.shell进程主要用于提供命令行界面,提供一系列的工作特性,有些特性可以自行的设定.当用户通过多种方式登录到Linux操作系统时,我们就可以认为该用户打开了一个SHELL,从而和系统进行交互. shell在linux系统下的角色如下: 2.为什么要学习shell 命令行界面的shell是很不好的,但是学完之后好处却很多.例如图形化界面像windows xp.win 7每个版本

Linux shell编程基础 三、shell的基本结构

shell结构大体是由设定变量.内置命令.shell的语法结构.函数组成. 使用实例说明:test.sh #!/bin/bash #说明使用/bin/bash作为这个脚本的解释器 #定义一个函数 function my_fun () { echo "Hello, $1,today is $2" } #定义连个变量 name=$1 today=`date` #函数调用 my_fun "$name" "$today" 上面的这个脚本要想运行还需要做一

【SHELL 编程基础第二部分】SHELL里的流程控制、SHELL里的函数及脚本调试方法!

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/shell/764.html 对于Shell书写和概念上一篇已经有所介绍,那么本篇继续学习Shell编程一些语法知识: 首先介绍Shell中的流程控制,例如判断语句等等- if语句: 首先了解几个知识: [ -f "somefile" ] :判断是否是一个文件 [ -x "/bin/ls" ] :判断/bin/l

Linux集群和自动化维2.2 Shell编程基础

2.2 Shell编程基础 Shell是核心程序Kernel之外的命令解析器,是一个程序,同时也是一种命令语言和程序设计语言. 作为一种命令语言Shell可以交互式地解析用户输入的命令. 作为一种程序设计语言Shell定义了各种参数,并且提供了高级语言才有的程序控制结构,虽然它不是Linux核心系统的一部分,但是它调用了Linux核心的大部分功能来执行程序,建立文件并以并行的方式来协调程序的运行. 比如,输入命令ls后,Shell就会解析ls这个命令并且向内核发出请求,内核执行这个命令之后,把结

[网摘学习]Shell脚本编程学习入门:Shell编程基础

51cto的这篇文章不错,收藏一下:http://os.51cto.com/art/201109/294521.htm(版权归原作者所有) Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #!/bin/sh ... 注意:最好使用"!/bin/bash"而不是"!/bin/sh",如果使用tc shell改为tcsh,其

【SHELL 编程基础第一部分】第一个SHELL脚本HELLOSHELL及一些简单的SHELL基础书写与概念;

本站文章均为 李华明Himi 原创,转载务必在明显处注明:  转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/shell/759.html 本章节分享Shell 学习篇,那么对于Shell 简单介绍下,对于Shell来说,大家可以理解Shell 是一个命令解释器,类似于DOS下的command.com.它接收用户命令(如ls等),然后调用相应的应用程序.另外一点它可以使用用户的缺省凭证和环境执行 shell.传统意义上的shell指的是命令行式的sh

Shell编程基础

本文作者:Leal 授权许可: 创作共享协议 GNU自由文档许可证 编辑人员:FireHare, Dbzhang800 我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行): #!/bin/sh ... 注意:最好使用"!/bin/bash"而不是"!/bin/sh",如果使用tc shell改为tcsh,其他类似. 符号#!用来告诉系统执行该脚本的程序,本例使用/bin/sh

shell编程基础知识小结_linux shell

1.文件类型介绍linux系统中主要包括以下七种文件类型: d 目录 - 普通文件 l 符号链接 s 套接字文件 b 块设备文件 c 字符设备文件 p 命名管道文件 2.正则表达式正则表达式在shell编程中非常重要. 从一个文件或命令输出中抽取或过滤文本时.可使用正则表达式(RE),正则表达式是一些特殊或不很特殊的字符串模式的集合. 基本的元字符集:^ 只匹配行首.$ 只匹配行尾.* 一个单字符后紧跟*,匹配0个或多个此单字符.[] 匹配[]内字符,可以是一个单字符,也可以是字符序列.可以使用

[Linux]shell编程基础/linux基础入门

声明执行程序 #!/bin/bash 用来告诉系统使用/bin/bash 程序来执行该脚本.譬如python 脚本,可以这样写: #!/usr/bin/python 赋值和引用 赋值公式: 变量名=值 取一个变量的值的时候,需要在变量名前面加上$ 符号,譬如: var="hello bash" echo $var 如果出现拼接,而且又没有空格为分隔符,这个时候就需要使用大括号将变量括住,如: num=3 echo "this is the ${num}th" 其输出