Shell编程学习Day01
2018-04-02 14:39
295 查看
第一个Shell程序example.sh:#!/bin/bash
echo "Our first example"
echo #empty line
echo "We are currently in the following directory"
pwd
echo
echo "This directory contains the following files"
ls#为单行注释
#!跟shell命令的完全路径,显示后期命令以哪种shell执行
shell程序的创建步骤:
1.创建Shell文件,以.sh结尾。gedit example.sh2.修改文件的权限 chmod u+x example.sh3.执行
方法一:直接执行
./example.sh方法二:使用bash执行bash example.sh方法三:使用绝对路径执行,在当前目录下输入pwd获得该路径/home/hadoop/test/example.sh执行结果
![](https://img-blog.csdn.net/20180402144204832)
变量赋值,等号左右不要加空格,如A=aaa
NAME="Li Ming"使用变量时要在变量前面加上$符号echo $A
echo $NAME查看所有变量输入:set
单引号和双引号的区别:单引号之间的内容原封不动的输出,双引号取消空格作用,特殊符号的含义保留,如:
![](https://img-blog.csdn.net/20180402163323650)
删除变量使用unsetunset A位置变量
位置变量以$N表示,N从0开始,0,1,2,……,如:./example.sh file1 file2 file3$0指example.sh,$1指file1,$2指file2,以此类推
特殊变量
$* 程序所有参数
$# 参数个数
$$ 程序的pID
$! 执行上一个后台程序的pID
$? 执行上一个指令的返回值
举例:#!/bin/bash
echo "$* 该程序所有参数"
echo "$# 该程序所有参数个数"
touch /home/hadoop/test/a.txt
echo "$$ 程序的pID"
touch /home/hadoop/test/b.txt &
echo "$! 执行上一个后台指令的pID"
echo "$$ 程序的pID"结果:
![](https://img-blog.csdn.net/20180402165556614)
read命令
从键盘中读取数据
expr命令
做算数运算,乘法需要在*前加转义 \
举例:(可以有负数,除不尽的抹去小数部分)#!/bin/bash
read num1 num2
expr $num1 + $num2
expr $num1 - $num2
expr $num1 \* $num2
expr $num1 / $num2结果:
echo "Our first example"
echo #empty line
echo "We are currently in the following directory"
pwd
echo
echo "This directory contains the following files"
ls#为单行注释
#!跟shell命令的完全路径,显示后期命令以哪种shell执行
shell程序的创建步骤:
1.创建Shell文件,以.sh结尾。gedit example.sh2.修改文件的权限 chmod u+x example.sh3.执行
方法一:直接执行
./example.sh方法二:使用bash执行bash example.sh方法三:使用绝对路径执行,在当前目录下输入pwd获得该路径/home/hadoop/test/example.sh执行结果
shell变量
shell变量分为临时变量(用户自定义变量),永久变量(环境变量)变量赋值,等号左右不要加空格,如A=aaa
NAME="Li Ming"使用变量时要在变量前面加上$符号echo $A
echo $NAME查看所有变量输入:set
单引号和双引号的区别:单引号之间的内容原封不动的输出,双引号取消空格作用,特殊符号的含义保留,如:
删除变量使用unsetunset A位置变量
位置变量以$N表示,N从0开始,0,1,2,……,如:./example.sh file1 file2 file3$0指example.sh,$1指file1,$2指file2,以此类推
特殊变量
$* 程序所有参数
$# 参数个数
$$ 程序的pID
$! 执行上一个后台程序的pID
$? 执行上一个指令的返回值
举例:#!/bin/bash
echo "$* 该程序所有参数"
echo "$# 该程序所有参数个数"
touch /home/hadoop/test/a.txt
echo "$$ 程序的pID"
touch /home/hadoop/test/b.txt &
echo "$! 执行上一个后台指令的pID"
echo "$$ 程序的pID"结果:
read命令
从键盘中读取数据
expr命令
做算数运算,乘法需要在*前加转义 \
举例:(可以有负数,除不尽的抹去小数部分)#!/bin/bash
read num1 num2
expr $num1 + $num2
expr $num1 - $num2
expr $num1 \* $num2
expr $num1 / $num2结果:
相关文章推荐
- Linux学习(三)Shell编程
- *Linux常用命令学习5---(Shell编程)
- Git 学习 day01
- Shell编程学习---第四篇:文件名置换
- activeMQ学习笔记 -- day01介绍
- Shell编程学习---第六篇:命令执行顺序
- android学习一点day01
- 笔记:Java改错学习法 (day01)
- Shell编程学习(7)----Shell基本运算符
- Linux学习 -- Shell编程 -- 字符处理命令
- 学习面试题(day01)
- C++ 学习日记day01
- 学习shell编程笔记(二)
- Shell编程(环境变量配置文件)学习笔记
- shell编程学习1
- 学习shell编程方向心得
- shell编程学习之sed
- shell编程学习
- Git学习笔记day01 从GitHub克隆版本库
- Linux学习之shell编程三