shell脚本基础知识和位置变量
2016-02-22 17:25
676 查看
shell脚本基础 和 相关位置变量含义
shell 脚本开头:制定解释器来执行脚本
#!/bin/bash
#!/bin/sh
#!/usr/bin/awk
#!/bin/sed
#!/usr/bin/tel
#!/usr/bin/expect
#!/usr/bin/perl
#!/usr/bin/env python
脚本注释:在编码后面使用'#'来进行注释
脚本执行:先查找环境变量ENV文件,该变量知道环境文件(通常是.bashrc),从该环境变量文件开始执行,读取ENV文件内容之后,开始执行脚本内容
1:bash script-name or sh script-name
2:path/script-name or ./script-name
3:source script-name or . script-name #会将自身脚本中的变量或者函数的返回值传递给当前的父shell(当前窗口代表一个shell),
说明:修改脚本权限通过脚本路径执行脚本:chmod 755 script-name or chmod +x script-name
shell 特殊变量:
1:位置变量:
$0 获取当前执行的shell脚本的文件名,包含路径
$n 获取当前执行的shell脚本的第n个参数值,n=1.....9,若果n>10了,则用${10}
$* 获取当前执行的shell的所有参数,将所有命令行参数视为一个字符串,"$0$1$2"
$# 获取当前执行的shell命令中参数的总个数
$$ 获取当前shell的进程号(PID),执行当前脚本时,将PID保存,以便执行下一个冲突脚本kill该进程
$? 获取上一个shell的返回值,0为成功,非零为失败(通常用来判断上一个进程是否执行成功) 返回值参考:0表示运行成功
$_ 在此之前执行的命令或者脚本的最后一个参数 1~125运行失败,脚本命令,系统命令错误或者参数传递错误
$@ 这个程序的所有参数:独立输出
shell 脚本开头:制定解释器来执行脚本
#!/bin/bash
#!/bin/sh
#!/usr/bin/awk
#!/bin/sed
#!/usr/bin/tel
#!/usr/bin/expect
#!/usr/bin/perl
#!/usr/bin/env python
脚本注释:在编码后面使用'#'来进行注释
脚本执行:先查找环境变量ENV文件,该变量知道环境文件(通常是.bashrc),从该环境变量文件开始执行,读取ENV文件内容之后,开始执行脚本内容
1:bash script-name or sh script-name
2:path/script-name or ./script-name
3:source script-name or . script-name #会将自身脚本中的变量或者函数的返回值传递给当前的父shell(当前窗口代表一个shell),
说明:修改脚本权限通过脚本路径执行脚本:chmod 755 script-name or chmod +x script-name
shell 特殊变量:
1:位置变量:
$0 获取当前执行的shell脚本的文件名,包含路径
$n 获取当前执行的shell脚本的第n个参数值,n=1.....9,若果n>10了,则用${10}
$* 获取当前执行的shell的所有参数,将所有命令行参数视为一个字符串,"$0$1$2"
$# 获取当前执行的shell命令中参数的总个数
$$ 获取当前shell的进程号(PID),执行当前脚本时,将PID保存,以便执行下一个冲突脚本kill该进程
$? 获取上一个shell的返回值,0为成功,非零为失败(通常用来判断上一个进程是否执行成功) 返回值参考:0表示运行成功
$_ 在此之前执行的命令或者脚本的最后一个参数 1~125运行失败,脚本命令,系统命令错误或者参数传递错误
$@ 这个程序的所有参数:独立输出
相关文章推荐
- monkey离线运行之shell脚本实现
- pc进入android手机shell的root权限(su: not found)
- 读取系统执行状态的shell脚本
- 【FAQ】bash VS dash 字符串正则表达式匹配
- Shell 自定义颜色输出函数
- shell script中奇怪的符号之${0##*/}
- Linux shell脚本 基础知识总结
- Linux笔记(11)——Shell脚本执行
- Linux笔记(10)——Shell概述
- Windows 下/bin/bash: line 0: fg: no job control一般解决方法
- shell 读取文件内容
- Shell脚本中的for,while用法
- linux shell:nginx日志切割脚本
- shell中后台运行函数
- shell十三问
- PowerShell脚本写的文件.ps1文件介绍
- 详细介绍如何在win7下首次实现通过Git bash向Github提交项目
- shell查询当前时间
- shell出现syntax error near unexpected token `<' 解决方法
- 第17篇 shell编程基础(2)