良玉的博客 点点滴滴,积水成河_良玉的博客_页游、手游linux运维工程师之路

编写shell脚本

1. 基本格式

#!/bin/bash                 ---指定解释器,如无,则使用当前shell

#this is a shell           ---注释

Var=value                  ---变量赋值

fun1()                          ---函数定义

{

command1

}

fun1

command2                ---命令

……


阅读全文...

shell 通配符与正则表达式

       通配符与正则表达式很容易混淆,首先要明白二者是不同的,个人感觉通配符用于Linux的shell命令(如文件名相关操作)中,而正则表达式用于文本内容中的字符串搜索和替换等。通配符是Linux系统本身就支持的,而正则表达式用于vim编辑器或awk程序,这些文本处理工具正是由于支持正则表达式才变得强大。

阅读全文...

sed命令学习笔记

1.简介
sed是非交互式的编辑器。它不会修改文件,除非使用shell重定向来保存结果。默认情况下,所有的输出行都被打印到屏幕上。
sed编辑器逐行处理文件(或输入),并将结果发送到屏幕。具体过程如下:首先sed把当前正在处理的行保存在一个临时缓存区中(也称为模式空间),然后处理临时缓冲区中的行,完成后把该行发送到屏幕上。sed每处理完一行就将其从临时缓冲区删除,然后将下一行读入,进行处理和显示。处理完输入文件的最后一行后,sed便结束运行。sed把每一行都存在临时缓冲区中,对这个副本进行编辑,所以不会修改原文件。


阅读全文...

awk学习笔记

简介

awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。

awk有3个不同版本: awk、nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本。

awk其名称得自于它的创始人 Alfred Aho 、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母。实际上 AWK 的确拥有自己的语言: AWK 程序设计语言 , 三位创建者已将它正式定义为“样式扫描和处理语言”。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报表,还有无数其他的功能。


阅读全文...

iptables启动脚本分析

#!/bin/sh  
#  
# iptables      Start iptables firewall  
#  
# chkconfig: 2345 08 92  
# description:  Starts, stops and saves iptables firewall  
#  
# config: /etc/sysconfig/iptables  
# config: /etc/sysconfig/iptables-config

阅读全文...

sed实例

一、sed (Stream Editor)

1、定位行:

sed -n '12,~3p' pass #从第12行开始,直到下一个3的倍数行(12-15行)

sed -n '12,+4p' pass #从第12行开始,连续4行(12-16行)

sed -n '12~3p' pass #从第12行开始,间隔3行输出一次(12,15,18,21...)


阅读全文...

shell数组

  • 1.数组的声明 

  •  

  •  1)array[key]=value # array[0]=one,array[1]=two
     2)declare -a array # array被当作数组名
     3)array=( value1 value2 value3 ... )
     4)array=( [1]=one [2]=two [3]=three ... )
     5)array="one two three" # echo ${array[0|@|*]},array变量当作数组来处理,但数组元素只有字符串本身


阅读全文...

sed跨行匹配

跨行匹配在sed里算不上是个难点,但绝对能考验一个人的sed基础……

首先明确一下几个概念:
b label
Branch to label; if label is omitted, branch to end of script.
h H    Copy/append pattern space to hold space.
g G    Copy/append hold space to pattern space.
D      Delete  up  to  the  first embedded newline in the pattern space.  Start next cycle, but skip
reading from the input if there is still data in the pattern space.
n N    Read/append the next line of input into the pattern space.


阅读全文...

vim使用技巧

1. 选定文字 / 拷贝粘贴

v为可视模式,可以选定多行。选定多行之后,可以用yy或者dd等等进行拷贝和剪切。
p 是粘贴
y 和d 可以直接拷贝或者剪切选定的内容
yw是拷贝一个单词

阅读全文...

标签: linuxvimshell

作者:良玉 分类:Shell 浏览:413 评论:0