- 浏览: 52008 次
- 性别:
- 来自: 北京
最新评论
文章列表
第七章 流编辑
什么是sed
挑选编辑器
UNIX/Linux世界中,有许多的文本编辑器可供选择。例如,最常使用的VI和emacs。在有了自己最熟悉的编辑利器后,才能轻松处理UNIX下各种管理和编辑任务。
像VI,emacs这类编辑器,被称为交互式编辑器。交互式编辑器虽然很棒,但是当我们需要在程序中完成文本处理工作时,它就帮不上忙了。此时就需要一些能够在命令行完成的编辑工具。
我们期待一切管理流程都能自动化,包括能够以批处理的方式编辑文件。许多文本编辑的需求都是对文本的每一行进行相同的操作。这样的处理就能够用sed来完成。
sed号称流编辑器。什么是流编辑器呢?流编辑器可以对从管 ...
- 2014-01-24 15:33
- 浏览 418
- 评论(0)
第六章 文件和文件系统
LINUX下存在5种文件类型,分别是:
》普通文件
》日录
》字符设备文件
》块设备文件
》符号链接文件
文件
ls 命令参看文件
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。//常用
-l 列出文件的详细信息。
-t 以时间排序。
参考:http://linux.chinaunix.net/techdoc/system/2009/06/08/1117450.shtml
文件类型
六种:
1.普通文件:
第一个符号是 - ,这样的文件在Linux中就是普通文件。这些文件一般是用一些相关的应用程序创建,比如图像 ...
- 2014-01-24 15:22
- 浏览 585
- 评论(0)
第五章 基本文本处理
排序文本
文本处理是UNIX/LINUXShell编程中几乎最重要的一部分。在UNIX/LINUX 的设计中,一切都是文件,而系统中许多程序的协同工作是通过文木或者文本流来实现的。因此,UNIX/LINUX 中的文本处理以及文本流的设计就成了重要的环节.
管道是UNIX/LINUX中的一个重要发明,管道连接了各种处理工具,组建文本流。在UNIX/LINUX 中,文本处理工具常常被设计成过滤器的形式。通过管道连接不同过滤器,这样,很简单的拼接就能实现需求的功能。
Sort命令的行排序
许多数据(文本)文件都按照一定的格式组织,这些文木文件以可一读的方式 ...
- 2014-01-21 13:23
- 浏览 787
- 评论(0)
第四章 正则表达式
什么是正则表达式
在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具口换句话说,正则表达式就是记录文本规则的代码。
...
- 2014-01-21 13:15
- 浏览 538
- 评论(0)
目录树可以分为小的部分,每个部分可以在自己的磁盘或分区上。主要部分是根、/usr 、/var 和 /home 文件系统。每个部分有不同的目的。
每台机器都有根文件系统,它包含系统引导和使其他文件系统得以mount所必要的文件, ...
- 2014-01-21 13:02
- 浏览 500
- 评论(0)
第三章 编程的基本元素
再识变量
实例对 各种情况的测试计算
[hcr@slave2 temp]$ vim variable.sh
#!/bin/bash
a=2334
let "a += 1"
echo "a = $a"
echo
#替换成字母
b=${a/23/BB}
echo "b = $b"
declare -i b
echo "b = $b"
let "b += 1"
echo "b =$b"
echo
#替换成数字
c=BB3 ...
- 2014-01-20 19:10
- 浏览 359
- 评论(0)
第二章 shell编程基础
脚本传递参数
为什么要向shell脚本传递参数?参数传递可以将外部的值传递到脚本的内部函数中,提高脚本的灵活性;参数传递可以添加脚本的适用选项,增加脚本的可定制性,以应付不同的情况。
$#代表参数的个数
$@代表参数的内容
如果你拥有的参数多于9个,则不能使用$l0来引用第l0个参数。首先,必须处理或保存第一个参数($1),然后使用shift命令删除参数$1,并将所有剩余的参数下移一位,因此$10就变成了$9,以此类推。$#的值将被更新以反映参数的剩余数量。在实践中,最常见的情况是将参教迭代到函数或shell脚本,或者迭代到命令,替换使用 ...
- 2014-01-20 18:57
- 浏览 506
- 评论(0)
本笔记是根据linuxShell编程入门到精通一书学习实验和相关整理做的笔记
pdf文件下载:http://download.csdn.net/detail/ruishenh/6586391
第一章 概念
如何运行程序
运行linux程序有三种方法
1.使用文件具有可执行权限,直接运行文件。
2.直接调用命令解释器执行程序
3.使用source执行文件
Linux可执行的命令分为三种:内建命令、shell函数和外部命令。
1.内建命令就是shell程序本身的命令。这些命令集成在shell解释器中。比如(cd)
2.Shell函数是一系列的程序代码,以shell语言 ...
- 2014-01-20 18:53
- 浏览 569
- 评论(0)
组合模式
将对象以树形结构组织起来,以达成“部分-整体”的层次结构,使得客户端对单个对象和组合对象的使用具有一致性.
有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦
组合模式让你可以优化处理递归或分级数据结构 .
package com.ruishenh.designPatter.structure.composite;
import java.util.ArrayList;
import java.util.List;
public class C ...
- 2014-01-15 17:09
- 浏览 454
- 评论(0)
解释器模式
给定一个语言,定义他的文法的一个表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。
package com.ruishenh.designPatter.action.interpreter;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.Stack;
public class InterpreterClient {
public static void main(String[] args) thro ...
- 2014-01-13 20:02
- 浏览 356
- 评论(0)
职责链模式
使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系
package com.ruishenh.designPatter.action.chainOfResp;
import java.util.LinkedList;
public class ChainOfRespClient {
public static void main(String[] args) {
GroupLeader gl=new GroupLeader();
Manager mgr=new Manager();
CTO cto=new ...
- 2014-01-13 11:04
- 浏览 573
- 评论(0)
命令模式
将一个请求封装为一个对象,从而使你可以用不同的请求对客户进行参数化,对请求排队和记录请求日志,以及支持可撤销的操作。
package com.ruishenh.designPatter.action.command;
public class CommandClient {
public static void main(String[] args) {
Lead lead=new Lead();
Staff staff=new Staff();
ConcreteCommand command =new ConcreteComma ...
- 2014-01-11 21:15
- 浏览 578
- 评论(0)
迭代器模式
提供一个方法顺序访问一个聚合对象的各个元素,而又不需要暴露该对象的内部表示。
package com.ruishenh.designPatter.action.iterator;
import java.util.ArrayList;
import java.util.List;
public class IteratorClient {
public static void main(String[] args) {
ICollection<Module> list=new Collection<Module>();
...
- 2014-01-09 18:21
- 浏览 480
- 评论(0)
分类参考
文件状态测试
-b filename
当filename 存在并且是块文件时返回真(返回0)
-c filename
当filename 存在并且是字符文件时返回真
-d pathname
- 2014-01-08 13:45
- 浏览 403
- 评论(0)
创建型
单例模式
Singleton,单例模式:保证一个类只有一个实例,并提供一个访问它的全局访问点
java中单例模式是一种常见的设计模式,单例模式分三种:懒汉式单例、饿汉式单例、登记式单例三种。
单例模式有一 ...
- 2014-01-03 17:46
- 浏览 334
- 评论(0)