使用Cygwin在WIN系统下处理文本常用命令
1.打开Cygwin,把需要处理的文本复制你的安装目录例如:D:\cygwin\home\Administrator
使用 ls命令查看根目录文件
2.现在我们就可以对1.txt文本进行操作,
3.我常用到命令
【Sort排序功能】
1.指定列正向排序
对文本第一列排序 默认TAB分割
Sort -k 1 1.txt -o 输出.txt
对文本第二列排序 :分割
Sort -t: -k 2 1.txt -o 输出.txt
2.指定列逆向排序
对文本第一列排序 默认TAB分割
Sort -r -k 1 1.txt -o 输出.txt
对文本第二列排序 自定义分割符号“:”
Sort -r -t: -k 2 1.txt -o 输出.txt
3.指定列排序并去重
对文本第一列排序 默认TAB分割
Sort -u -r -k 1 1.txt -o 输出.txt
对文本第二列排序 自定义分割符号“:”
Sort -u -r -t: -k 2 1.txt -o 输出.txt
1.通用正向排序
sort 1.txt -o 输出.txt
2.通用逆向排序
sort -r 1.txt -o 输出.txt
3.数字正向排序
sort -n 1.txt -o 输出.txt
4.排序并去重
sort -u 1.txt -o 输出.txt
【Uniq统计】
1.统计文本出现次数
详解:排序之后删除了重复行,同时在行首位置输出该行重复的次数
#sort testfile | uniq -c
1 friend
3 hello
2 world
2.只输出重复的行,并输出重复次数
#sort testfile | uniq -d -c
3 hello
2 world
3.仅显示不重复的行
sort testfile | uniq -u
【split分割】
1.按行分割
分割成10行 文件名5位数字开头
split -l 10 -d -a 5 file
2.按MB分割
分割成10MB大小 文件名5位数字开头
split -b 10m -d -a 5 file
【Cat 合并文件】
Cat命令详解:http://www.cnblogs.com/perfy/archive/2012/07/23/2605550.html
1.合并多个文件
Cat 1.txt 2.txt 3.txt > hb.txt
2.合并整个文件夹
Cat *.txt > newfile
【Sed 】
以行为单位行头行尾添加字符
1.行首添加字符
在每行的头添加字符,比如"TOU_",命令如下:
sed 's/^/TOU_&/g' 1.txt
2.行尾添加字符
2.在每行的尾添加字符,比如"Wei_",命令如下:
sed 's/$/Wei_&/g' 1.txt
3.每一行的行头和行尾分别添加字符
sed '/./{s/^/Tou_/;s/$/Wei/}' 1.txt
"^"代表行首,"$"代表行尾
's/$/&TAIL/g'中的字符g代表每行出现的字符全部替换,如果想在特定字符处添加,g就有用了,否则只会替换每行第一个,而不继续往后找了
以行为单位的新增/删除
将第 2~5 行删除
sed '2,5d
只要删除第 2 行
sed '2d'
要删除第 3 到最后一行
sed '3,$d'
在第二行后(亦即是加在第三行)加上『drink tea?』字样!
sed '2a drink tea'
那如果是要在第二行前
sed '2i drink tea'
以行为单位的替换与显示
将第2-5行的内容取代成为『No 2-5 number』呢?
sed '2,5c No 2-5 number'
仅列出文件内的第 5-7 行
Sed -n '5,7p'
数据的搜寻并显示
搜索有root关键字的行 模糊搜索哦
sed -n '/root/p
数据的搜寻并删除
删除/etc/passwd所有包含root的行,其他行输出
nl /etc/passwd | sed '/root/d'
数据的搜寻并替换
sed 's/要被取代的字串/新的字串/g' 1.txt
替换@开 到TAB尾
sed 's/@[^\t]*\t/\t/g' 1.txt
只保留有某个字符的行 用于保留某行,或者删除没有分隔符的行
sed -n '/\t/p'> out.txt 只输出包含TAB的行
【WC 】
统计行数,在对记录数时,很常用
Wc -l 1.txt
使用Cygwin在WIN系统下处理文本常用命令的更多相关文章
- 解决在win系统下使用DOS命令开启TensorBoard的问题及方法步骤
解决在win系统下使用DOS命令开启TensorBoard的问题及方法步骤: TensorBoard是TensorFlow下的一个可视化的工具,能够帮助研究者们可视化训练大规模神经网络过程中出现的复杂 ...
- win系统下启动linux上的kafka集群及使用
一.首先在win系统下C:\Windows\System32\drivers\etc文件夹中hosts文件加入例如以下内容: 10.61.6.167 slaves1 10.61.6.168 slave ...
- Linux 系统下安装 rz/sz 命令及使用说明
Linux 系统下安装 rz/sz 命令及使用说明 rz/sz命令,实现将本地的文件上传到服务器或者从服务器上下载文件到本地,但是很多Linux系统初始并没有这两个命令,以下为安装和使用的具体步骤: ...
- 【linux配置】Linux系统下安装rz/sz命令以及使用说明
Linux系统下安装rz/sz命令以及使用说明 对于经常使用Linux系统的人员来说,少不了将本地的文件上传到服务器或者从服务器上下载文件到本地,rz / sz命令很方便的帮我们实现了这个功能,但是很 ...
- Linux 系统基础优化和常用命令
目录 Linux 系统基础优化和常用命令 软连接 tar解压命令 gzip命令 netstart命令 ps命令 kill命令 killall命令 SELinux功能 iptables防火墙 Linux ...
- 运维 07 Linux系统基础优化及常用命令
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令 ...
- 实验 1 Linux 系统的安装和常用命令
实验 1 Linux 系统的安装和常用命令 (题目) 一.实验目的 (1)掌握 Linux 虚拟机的安装方法.Spark 和 Hadoop 等大数据软件在 Linux 操作系统 上运行可以发挥最佳性能 ...
- win 系统下制作U盘安装 linux系统
win 系统制作U盘安装硬盘镜像用ultraiso_v9.5.3.2901将Centos.iso写进U盘.安装过程全程区分大小写.过低的ultraiso不能正确读取文件.本文所有资料均能在网上免费下载 ...
- win系统下的eclipse连接和使用linux上的hadoop集群
准备工作 先在win系统的hosts文件中加入下面内容 10.61.6.164master //hadoop集群的master节点 一.首先在eclipse上安装hadoop插件 下载hado ...
随机推荐
- Python 动态加载 Extension Manager Classes
看着看着发现了一个库:stevedore(http://stevedore.readthedocs.org/en/latest/managers.html),但是感觉文档做得不行啊,都没个tutori ...
- Android 解决Glide 加载图片缓慢(第一次加载不出来图片)的Bug
- 理解及快速测定 Azure 虚拟机的磁盘性能
随着越来越多的用户将生产系统迁移到 Azure 平台的虚拟机服务中,Azure 虚拟机的性能愈发被关注.传统的数据中心中,我们通常使用 CPU,内存,存储和网络的性能来衡量生产压力.特别是对于 IO ...
- jQuery替换已存在于元素element上的事件event
<html><head><script type="text/javascript" src="/jquery/jquery.js" ...
- supersocket 通过配置文件启动服务 总是 初始化失败的 解决办法
<serverTypes> <add name="APPServerType" type="TMPServer.APP.APPServer, TMPSe ...
- 【java开发系列】—— java输入输出流
前言 任何语言输入输出流都是很重要的部分,比如从一个文件读入内容,进行分析,或者输出到另一个文件等等,都需要文件流的操作.这里简单介绍下reader,wirter,inputstream,output ...
- gitlab 邮件服务器配置
一.修改 /etc/gitlab/gitlab.rb 文件,添加邮件服务器信息 SMTP settings 例如163 邮件服务器 external_url 'http://你的IP地址或域名' ## ...
- 作为软件技术人员建立自己的git账户并保存资料的重要性
日常生活中,当修改并保存了一个文件,所得到的就是此文件的最新版本,假若今后因某一问题需要用到原来文件,可是很多情况下,这种修改是不可逆的.你修改完之后,无法回到你修改前的样子.为了避免这种情况,有的人 ...
- 漫谈C++:良好的编程习惯与编程要点(转载)
这个博主写的文章真是细腻,全面,严谨,应当多读几回 原文http://www.cnblogs.com/QG-whz/p/5517643.html 阅读目录 以良好的方式编写C++ class Clas ...
- Intellij idea创建(包、文件)javaWeb以及Servlet简单实现(Tomcat)
准备:1. 安装jdk2. 安装tomcat 一.创建并设置javaweb工程 创建项目成功 创建包 创建Servlet 创建包成功,但是报错,原因是没有引入包 我们先表明 现在要引入servlet- ...