- 论坛徽章:
- 0
|
1、管道
Linux的最大优点在于可以将多个程序通过管道的方法串在一起,每个程序可能功能较为单一,但是通过“管道线”串在一起进行协同工作之后,将可以完成一个较为复杂的功能。
例:
$ grep '[Ww]hich' chapter1 | more
grep -- 搜索特定的字符串,并将包含该字符串的特定文本行输出到标准输出流,上例中即为写入到管道中;
more -- 用于分页显示从管道中读出的文本行。
2、shell编程
shell的精彩的一面在于它不仅可以读取而且可以执行用户在提示符下输出的命令。shell是一个完整的编程语言。
例:
# mac2unix
for x
do
echo "Converting $x"
tr '\015' '\012' "tmp.$x"
mv "tmp.$x" "$x"
done
上述是一个将mac格式的文件转换为unix格式的文件的shell脚本,通过使用该脚本,可以转换任意数目的文件,并用转换后的文件替换原来的文件。
$ mac2unix file1 file2 file3 ....
注:文件格式,每一行文本
windows下以回车('\r')和换行('\n')结束
linux下以换行('\n')结束
mac下以回车('\r')结束
\015 -- '\r' ; '\012' -- '\n'
3、shell通配符
+++++++++++++++++++++++
通配符 | 匹配
-----------------------
? | 任何单个字符
* | 任何零个或多个字符组
[ab] | a 或者 b
[a-z] | a到z之间的任何字符,包括端点
+++++++++++++++++++++++
4、文件访问权限
文件访问是基于文件的用户和组的所有权以及一组访问位,用户在试图
访问一个文件时,会被置于三类中的一个,用户可以是文件的所有者,文件
所在组的一个成员或者“其他”。然后3个模式位判断用户是否有读、写或执行
该文件的权力。
所有者 组 其他
0 0 0 0 0 0 0 0 0
^ ^ ^
读 写 执行
通常情况下,可以发现这九个基本模式位被解释成了一个八进制数字,
在这种表示中,每一位代表一类访问权限。每三位形成一个八进制数。
例:
111101001
i) 将其每三位分为一块,即 111 101 001;
ii) 第一组111,是4+2+1或者7;第二组101,是4+0+1,或者5;第三组是
0+0+1,或者1;
iii) 因此可以将以上模式位写成0751,其中0代表八进制数。
5、后台运行
后台运行的时候,只需要在要背至于后台运行的程序后加入'&'修饰符号。
如果用户使用的Bourne shell,将一系列Bourne shell命令放入后台的正确方法
是用括号把它们括起来:
$ (sleep 15, ls) &
如果使用Bourne shell,那么当用户退出时,所有正在运行的后台将理所当
然地被终止。为了避免发生这种情况,可以使用nohup。
$ nohup sleep 15 &
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/58264/showart_1300217.html |
|