从苦逼到牛逼,详解Linux运维工程师的打怪升级之路

2017-10-1 杜世伟 Linux

运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感知前方潮流变化。如:今年大数据,人工智能比较火……(相对表示就是 Python 比较火)

之前写过运维基础篇,发现对很多人收益挺大,接下来也写下关于这4年多的运维实践经验,从事了2年多游戏运维,1年多安全运维,1年大数据运维,相关行业信息不能算非常精通,但是熟悉和熟练还是相对可以的。


初级篇


linux运维人员常用工具拓扑详见:


阅读全文>>

标签: linux rsync sed awk python

评论(0) 浏览(20258)

Mac 查看Git某个文件的历史记录

2016-4-20 杜世伟 git

在windows下面有TortoiseGit很方便的就能点击右键查看到某一个文件的提交记录,但mac在SourceTree要找到某一个文件的提交记录才方便查看到该文件的历史记录。 
方法: 
git log查看某一个文件的提交记录,然后根据git show 哈希值来看某一次提交记录,也可以直接在SourceTree下搜索该哈希值本看详细记录。


进入git项目目录
cd /projectName/

以下两种方式可以帮助你查看单个文件的更新log:

方式一:
1)、查看指定文件提交日志
git log fileName 
将显示文件的所有提交记录。 
注意: q退出日志展示效果,回车或向下键显示更多提交日志

阅读全文>>

标签: sed cat git log commit

评论(0) 浏览(2053)

sed命令详解

2016-4-4 杜世伟 Linux

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

阅读全文>>

标签: linux sed

评论(0) 浏览(14458)

linux sed 文件中每行的开头添加引号末尾处添加引号逗号

2015-9-7 杜世伟 sed

linux sed 文件中每行的开头添加引号末尾处添加引号逗号

#cat > input.txt <<EOF 

> 1
> 2
> 3
> 4
> 5
> 6
> EOF

修改后文件内容变成:
"1",
"2",
"3",
"4",
"5",
"6",

阅读全文>>

标签: linux sed

评论(0) 浏览(11231)

vim 大小写转换

2015-6-12 杜世伟 Vim

vim 大小写转换
平时在写程序时经常会遇到大小写转换的问题,vim中提供了很多非常方便的大小写转换命令,可以快速的进行字母、单词、任意行的大小写转换,可以和vim的光标移动指令组合使用。

We have commands like "tr", tools like "sed", strong one liners from perl to do the conversions of lowercase UPPERCASE Titlecase . "vi" too provides the same, some of its :ex commands are below.

平时在写程序的过程中会经常遇到大小写转换的问题.我们有命令tr和工具sed,vi有类似的功能:

范例:
 
:1,$ s/.*/\L&/ #整个文件全部转换为小写
:1,$ s/.*/\U&/ #整个文件全部转换为大写
:1,$ s/\<./\u&/g #整个文件中每个单词的首字母大写

阅读全文>>

标签: linux vim sed

评论(0) 浏览(15531)

sed 在两行匹配之间插入一行

2014-10-31 杜世伟 sed

今天有个任务就是在两个匹配行之间插入一行,例如文件格式为
hello
welcome to shanghai
在这两个之间插入一行liming。
方案

查了一下sed的用法貌似可以试一下,看到命令n可以读入下一行到pattern space,就可一匹配完前一行,继续匹配下一行了。
点击(此处)折叠或打开

阅读全文>>

标签: linux sed

评论(0) 浏览(12137)

linux sed

2014-5-22 杜世伟 Linux

    sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等

阅读全文>>

标签: linux sed

评论(0) 浏览(13273)

使用sed awk bash提取行的范围

2014-5-15 杜世伟 Vim

使用sed awk bash提取行的范围


以下是根据行号打印或提取文件部分的几种不同方式。


方式一使用sed把文件中指定行的内容重定向到/tmp/file1中

sed -n ’27,99p’ file.txt > /tmp/file1

等同于

sed '27,99 !d' file.txt > /tmp/file2


方式二使用awk NR

awk 'NR >= 27 && NR <= 99' file.txt > /tmp/file3


方式三使用head和tail

head -99 file.txt | tail -73 > /tmp/file4

阅读全文>>

标签: linux vim sed awk

评论(0) 浏览(18834)

vim 大小写快速转换

2014-5-2 杜世伟 Vim

平时在写程序的过程中会经常遇到大小写转换的问题.我们可以借助命令命令tr和sed进行转换.
,vim中提供了很多非常方便的大小写转换命令,可以快速的进行字母、单词、任意行的大小写转换,可以和vim的光标移动指令组合使用。


范例:
 
:1,$ s/.*/\L&/ #整个文件全部转换为小写
:1,$ s/.*/\U&/ #整个文件全部转换为大写
:1,$ s/\<./\u&/g #整个文件中每个单词的首字母大写

:1,$ s/\<./\u&/gc 
#带确认提示首字母转成大写,此模式会进行确认信息交互,选择参数有replace with \u& (y/n/a/q/l/^E/^Y)?
#1)y确认转换
#2)n不进行转换
#3)a文件中全部替换
#4)q退出替换模式 
#5)l替换第一个然后退出交互 
#6)^E/^Y这两个暂未明白

阅读全文>>

标签: linux vim sed tr

评论(0) 浏览(21053)

linux 删除换行符的方法小结

2013-5-16 杜世伟 Linux

linux 删除换行符的方法小结

工作中时而不时会遇到,替换文件中换行符把内容转换为一行,以下是笔者总结的一些常见的实现方式,仅供参考!转载请注明出处

方法一:

通过awk
awk BEGIN{RS=EOF}'{gsub(/\n/," ");print}' file.txt
说明:awk默认将记录分隔符(record separator即RS)设置为\n,此行代码将RS设置为EOF(文件结束),也就是把文件视为一个记录,然后通过gsub函数将\n替换成空格,最后输出
方法二:
通过vim打开文件,然后输入命令:%s/\n//g替换所以的换行符
方法三:
通过使用td命令,cat file.txt | tr '\n' ' '
注意tr最后那个参数是空格,否则会报错

阅读全文>>

标签: linux sed shell awk cat

评论(0) 浏览(8094)

Powered by emlog 沪ICP备2023034538号-1