sh_shell的基础语法1

原创 2015年11月18日 21:04:19

sh_shell的基础语法1

创建当前目录下建立一个a.sh,并执行,查看结果

#!/bin/sh #制定shell的类型
mkdir test #在当前的目录中创建一个名为test的文件
cd test #进入这个test文件夹
for ((i=0; i<10; i++)); do #通过循环创建十个普通的文本文件
    touch test_$i
done #完成循环操作
cd ../ #返回上一级目录
chmod -R 777 test #为test文件夹赋予最高权限

ps:

  • 本例子已在root用户下进行
  • ‘#’ 代表注释
  • 使用的默认的shell 为bash

执行过程步骤

  1. vi a.sh #用vi创建一个a.sh文件
  2. 在vi中键入上述的代码
  3. chmod 775 a.sh #对a.sh文件增加可执行权限
  4. ./a.sh #执行a.sh
  5. cd test
  6. ls #列出文件

result

root@iZ28nywuw2zZ:~# ./a.sh
root@iZ28nywuw2zZ:~# cd test
root@iZ28nywuw2zZ:~/test# ls 
test_0  test_1  test_2  test_3  test_4  test_5  test_6  test_7  test_8  test_9

变量的种类

  1. 局部变量
    局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。

  2. 环境变量
    所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。

  3. shell变量
    shell变量是由shell程序设置的特殊变量。

变量

定义一个变量 shell变量 test_value 并将其赋值10 再打印出来

#!/bin/sh
test_value=10
echo $test_value

result

10

使用变量

使用一个定义过的变量,只需要在其前面加$

#!/bin/sh
test_value=10
echo $test_value
echo ${test_value} #加花括号是为了帮助解释器识别变量的边界
10
10

声明只读变量

关键词 readonly

#!/bin/sh
test_value=10
readonly test_value
echo $test_value
10

删除变量

unset test_value

特殊变量

例如查看当前shell的进程好号

echo $$
显示进程号

各类特殊变量的用途

#!/bin/sh
echo $0 #输出当前的sh脚本名
echo $1 #输出传入脚本的第一个参数
echo $2 #输出传入脚本的第二个参数
echo $* #输出传入脚本的所有参数  
echo $@ #输出传入脚本的所有参数
a
b
a b
a b

变量 含义
$0 当前脚本的文件名

nn1,第二个参数是$2。

$# 传递给脚本或函数的参数个数。

$* 传递给脚本或函数的所有参数。

@("")"1” “2""n” 的形式输出所有参数。

$? 上个命令的退出状态,或函数的返回值。

$$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。

sh_shell的基础语法2

sh_shell的基础语法2
  • szc2000
  • szc2000
  • 2015年11月25日 18:47
  • 143

Shell-/bin/bash和/bin/sh解释器的误用引起的脚本语法错误

背景下面的脚本,在Linux上运行良好,在SUNOS执行的时候报语法错误。#! /bin/sh#支持fwu的使用fwu 不支持的使用fu PS_TYPE="ps -fwu" do_ps=`ps -fw...

sh_脚本基础、语法学习

原文地址:http://blog.csdn.net/wxlinwzl/article/details/7174629 介绍: 1 开头 程序必须以下面的行开始(必须方在文件的第一行): ...

sh脚本语法_基础

1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编写脚...

shell介绍-基础语法方面

  • 2009年10月27日 13:45
  • 329KB
  • 下载

shell基础语法以及监控进程不存在重启

转码# dos2unix ./test.sh权限# chmod a+x ./test.sh语法变量var="111"echo $varecho ${var}运算no1=4;no2=5;let resu...

SHELL编程之语法基础

前言在此需要特别注明一下,本文叫做shell编程其实并不准确,更准确的说法是bash编程。考虑到bash的流行程度,姑且将bash编程硬说成shell编程也应没什么不可,但是请大家一定要清楚,shel...

Shell 编程基础 --语法快速入门

简单的说shell就是一个包含若干行Shell或者Linux命令的文件。对于一次编写,多次使用的大量命令,就可以使用单独的文件保存下来,以便日后使用。通常shell脚本以.sh为后缀,第一行一定要指明...
  • dj_325
  • dj_325
  • 2016年03月23日 16:00
  • 122

Linux shell脚本编程语法基础

Linux脚本编写语法基础介绍: 1开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/b...
  • ycc541
  • ycc541
  • 2015年04月09日 20:12
  • 537
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:sh_shell的基础语法1
举报原因:
原因补充:

(最多只允许输入30个字)