Linux学习-命令行参数、函数
Shell
命令行参数
- 命令行参数可以使用 $1 $2 ... ${10}..$n 进行读取
- $0 代表脚本名称
- $* 和 代表所有位置参数
- $# 代表位置参数的数量
函数
function fname(){
命令
}函数的执行:
- fname
- 取消某个一个函数:unset fname
函数作用范围的变量
- local 变量名 只在函数内部起作用
函数的参数
- $1 $2 $3...$n
demo
1、创建一个文件:vim 1.sh
2、在文件中编辑函数:
#!/bin/bash # functions checkpid() { local i for i in $*;do [ -d "/proc/$i" ] && return 0 done return 1 }
3、给文件赋予执行权限和执行文件
chmod u+x 1.sh source 1.sh # 这里若用bash 或 ./ 方式运行文件的话,则函数会在子进程中执行,父进程是无法得到函数的定义 checkpid 1 echo $?
系统函数库
- /etc/init.d/functions 系统自建的函数库
- /etc/profile 存放系统环境变量
- .bashrc 和 .bash_profile 两个文件中都有决定程序执行顺序的函数,这两个文件都在根目录的家目录下面
自建函数库
- 使用 source 函数脚本文件“导入”函数
- source /etc/init.d/functions
捕获信号的脚本编写
- kill 默认发送15号信号给应用程序
- Ctrl+c 发送2号信号给应用程序
- 9 号信号不可阻塞
- 例:
- trap "echo sig 15" 15 捕获15号信号,捕获到就输出 sig 15
相关推荐
dxbjfu0 2020-09-11
bluecarrot 2020-08-19
zhaobig 2020-06-25
xiaohouye 2020-04-20
rechanel 2020-02-28
站在高处眺望 2020-02-20
tydldd 2020-02-09
83520298 2020-01-26
83520298 2020-01-24
sunnyJam 2020-01-12
yuzhongdelei0 2019-12-31
tomson 2019-12-14
80304053 2019-12-10
qingshuoyisheng 2013-09-16
89961330 2019-11-16
invokerzhang 2019-11-10
xiejianming 2010-12-19
88550493 2011-12-12