Linux脚本编写基础(五)
实例)
现在我们来讨论编写一个脚本的一般步骤。任何优秀的脚本都应该具有帮助和输入参数。并且写一个伪脚本(framework.sh),该脚本包含了大多数脚本都需要的框架结构,是一个非常不错的主意。这时候,在写一个新的脚本时我们只需要执行一下copy命令:
cp framework.sh myscript
然后再插入自己的函数。
让我们再看两个例子:
二进制到十进制的转换
脚本b2d 将二进制数 (比如 1101) 转换为相应的十进制数。这也是一个用expr命令进行数学运算的例子:
1
#!/bin/sh
2
# vim: set sw=4 ts=4 et:
3
help()
4
{
5
cat <
6
b2h -- convert binary to decimal
7
USAGE: b2h [-h] binarynum
8
OPTIONS: -h help text
9
EXAMPLE: b2h 111010
10
will return 58
11
HELP
12
exit 0
13
}
14
error()
15
{
16
# print an error and exit
17
echo "$1"
18
exit 1
19
}
20
lastchar()
21
{
22
# return the last character of a string in $rval
23
if [ -z "$1" ]; then
24
# empty string
25
rval=""
26
return
27
fi
28
# wc puts some space behind the output this is why we need sed:
29
numofchar=`echo -n "$1" | wc -c | sed 's/ //g' `
30
# now cut out the last char
31
rval=`echo -n "$1" | cut -b $numofchar`
32
}
33
34
chop()
35
{
36&nbs
相关文档:
1. HCI层协议概述:
HCI提供一套统一的方法来访问Bluetooth底层。如图所示:
从图上可以看出,Host Controller Interface(HCI) 就是用来沟通Host和Module。Host通常就是PC, Module则是以各种物理连接形式(USB,serial,pc-card等)连接到PC上的bluetooth Dongle。
在Host这一端:application,SDP,L2cap等协议 ......
用途
处理命令行参数,并校验有效选项。
语法
getopts
选项字符串
名称
[
参数
...]
描述
getopts 命令是 Korn/POSIX shell 的内置命令,用来从参数列表检索选项以及选项参数。选项由一个 (加号)或者是由一个-(减号)后跟一个字符开始。一个既不是以 ,也不是以-开始的选项结束选项字符串。每次调用 getopt ......
1,shell export 作用
http://blog.sina.com.cn/s/blog_62945c360100ffvk.html
2,alias ls="ls --color=auto"
安装了archlinux后,发现使用ls命令时,目录和文件并没有以颜色区分开来,觉得很不方便,所以就到网上搜了一下,发现可以使用alias命令:在/etc/profile的末尾加入alias ls="ls ......
到官网下载samba,samba-3.4.5.tar.gz
解压缩,后,进入source3.
./autogen.sh
./configure
make
make install
启动/usr/local/samba/sbin/smbd
此处可能会提示,
error while loading shared libraries: libtalloc.so.1
执行
LD_DEBUG=libs /usr/local/samba/sbin/smbd -D
检查哪些lib无法找到,相应的用ln&nbs ......
Linux 2.6 下内核模块的Makefile
收藏
Linux 2.6 下内核模块的Makefile
# Makefile 2.6
obj-m += hello.o
KDIR:=/lib/modules/$(shell uname -r)/build
# PWD=$(shell pwd)
all:
&n ......