Sed - 2:常用功能

文本替换

1
[address]s/pattern/replacement/flags

4种常用替换标记:

  • n数字 : 表明仅替换前n个被pattern匹配的内容
  • g : 表明替换所有匹配的地方。如果flags为空,则默认替换第一次匹配。
  • p : 仅当行被pattern匹配时,打印模式空间的内容
  • w file : 将替换的结果写入到文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ cat data
This is a test of the test script.
This is the second test of the test script.
$
$ sed 's/test/trail/' data #默认替换每一行的第1次匹配
This is a trail of the test script.
This is the second trail of the test script.
$
$ sed 's/test/trial/2' data #只替换每一行的第2次匹配
This is a test of the trial script.
This is the second test of the trial script.
$
$ sed 's/test/trial/g' data #替换所有的匹配
This is a trial of the trial script.
This is the second trial of the trial script.

Read More

Snippets 代码片段

Snippet(片段)在编程中是指一段可复用的代码或文本,在绝大部分编辑器和IDE中都有Code Snippet功能。Code Snippet代码片段自动生成据说是textMate首创的,现在主流的编辑器和IDE都有类似的功能,可以让用户针对不同的场景定制、管理和插入代码片段。在Vim中自从我用了ultisnips,傍观者的智商再也跟不上我码代码的速度,谈笑风生,弹指间满屏代码,可谓居家旅行必备装X神奇。

Read More

Sed - 1:基本概念

Sed编辑器

Sed编辑器被称作“流编辑器”,不同于一般的交互式文本编辑器(比如Vim、nano)需要用户交互式的输入来编辑文本内容,Sed会基于预先提供的一组规则来编辑数据流。在Shell脚本中,解析LOG文件或修改配置文件等处理文本文件的任务非常普遍。而Sed这样的命令行编辑器正好满足在Shell脚本中完成自动处理文本的需求。

调用选项

1
sed [OPTION]... {script-only-if-no-other-script} [input-file]...
选项 描述
-e 进行多项编辑,即对输入行应用多条sed命令时使用
-n 取消默认的输出, 等待print命令输出
-i 表示将转换结果直接插入文件中
-f 按照指定的sed脚本里面的命令来进行转换

Read More

DICOM 2: Data Format

文件存储格式

不同于html或xml等协议把信息保存为文本格式,protobuf把数据保存为二进制,DICOM协议的数据既有文本格式又有二进制格式。用文本编辑器打开一个dcm文件,数字字母这些我们认识的就是文本数据,叉叉圈圈框框……这些就是二进制数据。由于二进制数据在不同的计算机系统上的字节序不同(可以参考big-endian和little-endian相关知识 ),当DICOM数据在不同的系统间传输时,就要采用统一的标准,在后来DICOM传输部分会有进一步说明。

Read More

Scrum & Kanban In Our Work ( 1 )

Kaizen 改善

中国人如果第一次从老外嘴里听到Kaizen,一定会大呼:原来是汉语啊!但其实这是个日语词汇,虽然汉字写出来就是“改善”,但却地地道道是日本人提出来的管理概念,并随着日本企业上世纪七八十年代的大发展而影响全球。

Read More

DICOM 1: Introduction

什么是DICOM

DICOM 全称 Digital Imaging and Communications in Medicine. 是美国电气制造商协会(NEMA, The National Electrical Manufactures Association)制定的针对医学图像和相关信息的处理、储存、打印和传输的国际标准。它在医疗领域被广泛应用,所有的医疗影像系统和设备,例如CT,MRI,X光等,都支持DICOM协议,大多数医疗机构也依赖于DICOM协议进行诊断和治疗。可以说DICOM是从事医疗软件开发不可回避的基础知识。 更多介绍参见维基百科DICOM官网

Read More

修复grub2引导

项目最近都在windows下开发,整个team都被迫装了fedora和win7双系统。如果先装的是win7,后装的fedora会把grub引导装好。如果最后装的是windows,就必须修复一下grub,才能正确启动。GUN grub是一个多系统启动引导程序,具体介绍看这里。关于重装系统后怎么修复grub,网上有很多介绍,但是很多都是不求甚解,并不完全解决我的问题,特此将自己实践出的步骤记录在此,以备后用。

Read More