linux学习

shell脚本编程基础一部分

2017-06-08  本文已影响28人  数据革命

程序:什么是程序

bash基础

什么是shell

  • 说起bash ,那我们先说说shell
/bin/bash
/sbin/nologin
/bin/dash
/bin/tcsh
/bin/csh

编程基础

程序 = 指令+数据

程序的执行方式

shell脚本基础

格式要求

 #!bin/bash
 #! /usr/bin/python
 #!/usr/bin/perl            
                 

脚本的基本结构

#!SHEBANG  
CONFIGURATION_VARIABLES   < :变量定义
FUNCTION_DEFINITIONS    < :函数定义
MAIN_CODE   < :  主要代码

脚本规范

编程基本概念

编程语言的基本结构

shell脚本基础

[root@localhost etc]# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
#!/bin/bash
name=hello
echo $name

脚本的规范

shell脚本基础

shell脚本示例

#!/bin/bash
#=========================================
#Filename:hello.sh
#Revision:1.0
#Date:2017/XX/XX
#Author:XXXX
#Email:XXXX@gmail.com
#Website:www.XXXX.com
#Description:This is the first script
#=========================================
#Copyright:2017  XXXX
#LIcense:GPL
    echo"hello  world"

脚本调试

[root@localhost etc]# bash -n  /path/to/some_script
 bash -x  /path/to/some_script

变量

变量:命名的内存空间

变量:变量的类型

类型:

强类型

弱类型

变量命令法则

本地变量

变量赋值:
name=`calue`
可以使用和引用value:
1,可以是直接的字符串;name=""root"
2,变量引用:name="$USER"
3,命令引用:name=`COMMAND`  name=$(COMMAND)
变量引用:${name}   $name
"""":弱引用,其中的变量引用会被替换为变量值
'':强引用,其中的变量引用不会被替换为变量值,而保持原字符串
显示已定义的所以变量:`set`命令
删除变量:unset  name

环境变量

 环境变量声明和赋值:
 export name=VALUE
 declare  -x  name=VALUE
 变量引用:
 $name,${name} 
 显示所有环境变量:
 env
 printenv
 export
 declare -x
 删除变量:
 unset   name     
bash内建的环境变量:
echo  $PATH  查看系统当前shell
echo  $SHELL   查看系统shell类
echo  $USER    查看系统当前用户
echo  $UID   查看用户UID
echo  $HOME   查看当前用户
echo  $PWD   查看当前路径
echo  $SHLVL  
echo  $LANG
echo  $MAIL
echo  $HOSTNAME
echo  $HISTSIZE
echo  $-
echo  $$   

只读和位置变量

上一篇 下一篇

猜你喜欢

热点阅读