总结11 -- shell的注意点

 目录

 1、shell脚本文件的结构

2、shell脚本文件的执行方式

3、shell中单引号和双引号的区别:

4、$() 与 ${}的区别:


1、shell脚本文件的结构

1 、文件的扩展名必须是.sh

2、 文件的首行必须使用#!       指定script的运行shell环境(即脚本解释器) 如:#!/bin/bash

3 、脚本里的行注释符号为#

4 、指令、选项、参数之间即使有多个空格仍会被视为一个空格。

5 、tab键形成的空白也被视为一个空格键

6 、空白行会被忽略

2、shell脚本文件的执行方式

方式一: 使用bash命令来调用实行  -- 只需要有读(r)的权限饥渴

               [root@hdp01 ~]# bash *.sh

方式二:直接写script,必须要有rx权限才行

               [root@hdp01 ~]# ./*.sh 

              绝对路径写法: /hadoop/*.sh

              相对路径写法: ./*.sh

 注意点: 

1、第一行 可以没有/bin/bash 因为 在外部使用 bash register.sh 运行的 所以没有也没事

方式三: 借助变量PATH,设置全局变量

     将*.sh放入~/bin目录下,因为PATH里拼接了~/bin目录。

     注意:~/bin目录必须自行创建

   

  

 无论在哪个目录 直接 register.sh 都能执行

3、shell中单引号和双引号的区别:

双引号: 双引号里面的内容会有变化

单引号:单引号里面的内容会全部输出   -- 单引号会将所有特殊字符脱意

例子:

[root@hdp01 ~]# NUM=10

[root@hdp01 ~]# SUM="$NUM nihao"

[root@hdp01 ~]# echo $SUM  -----  输出10 nihao

[root@hdp01 ~]# SUM2='$NUM nihao'

[root@hdp01 ~]# echo $SUM2  ----- 输出$NUM hehe

4、$() 与 ${}的区别:

1、$() 其实与 反引号``一模一样,仅用来表示执行的命令

[root@hdp01 ~]# echo $(3+3)  --先执行3+3这个运算命令 再输出 6

2、${} 是用来取变量的 

[root@hdp01 ~]# echo ${PATH}  -- 输出 PATH的路径

3、$((运算内容)) 适用于数值运算

[root@qianfeng01 ~]# echo $((3+1*3))  -- 线束执行()内的运算 再输出 结果 6

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值