linux tr命令实现windows文本格式与linux文本格式间的转换
tr 命令
转换和删除字符
选项:
-d --delete:删除字符
-s --squeeze-repeats:把连续重复的字符以一个字符表示,即去重
-c –C --complement:取字符集的补集
该命令会把/etc/issue中的小写字符都转换成大写字符
tr 'a-z' 'A-Z' < /etc/issue
删除fstab文件中的所有abc中任意字符
tr –d abc < /etc/fstab
将df命令输出的结果中为连续重复的空格,用一个空格取代
[root@localhost ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/centos-root 16603136 7635296 8967840 46% /
devtmpfs 485144 0 485144 0% /dev
tmpfs 500664 140 500524 1% /dev/shm
tmpfs 500664 26076 474588 6% /run
tmpfs 500664 0 500664 0% /sys/fs/cgroup
/dev/mapper/centos-home 2037760 33000 2004760 2% /home
/dev/sda1 201388 145376 56012 73% /boot
tmpfs 100136 36 100100 1% /run/user/0
[root@localhost ~]# df > df.log
[root@localhost ~]# tr -s ' ' < df.log
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/centos-root 16603136 7635292 8967844 46% /
devtmpfs 485144 0 485144 0% /dev
tmpfs 500664 140 500524 1% /dev/shm
tmpfs 500664 26076 474588 6% /run
tmpfs 500664 0 500664 0% /sys/fs/cgroup
/dev/mapper/centos-home 2037760 33000 2004760 2% /home
/dev/sda1 201388 145376 56012 73% /boot
tmpfs 100136 36 100100 1% /run/user/0
[root@localhost ~]# tr -s ' ' : < df.log
Filesystem:1K-blocks:Used:Available:Use%:Mounted:on
/dev/mapper/centos-root:16603136:7635292:8967844:46%:/
devtmpfs:485144:0:485144:0%:/dev
tmpfs:500664:140:500524:1%:/dev/shm
tmpfs:500664:26076:474588:6%:/run
tmpfs:500664:0:500664:0%:/sys/fs/cgroup
/dev/mapper/centos-home:2037760:33000:2004760:2%:/home
/dev/sda1:201388:145376:56012:73%:/boot
tmpfs:100136:36:100100:1%:/run/user/0
windows文本格式与linux文本格式间的转换,windows格式文本中比linux格式文本中多回车键'\r',通过tr删除'\r'实现格式转换
实例如下:
[root@localhost ~]# cat windows.txt
a
b
c
[root@localhost ~]# file windows.txt
windows.txt: ASCII text, with CRLF line terminators
[root@localhost ~]# hexdump windows.txt
0000000 0d61 620a 0a0d 0063
0000007
[root@localhost ~]# hexdump -C windows.txt
00000000 61 0d 0a 62 0d 0a 63 |a..b..c|
00000007
[root@localhost ~]# tr -d '\r' <windows.txt >linux.txt
[root@localhost ~]# file linux.txt
linux.txt: ASCII text
[root@localhost ~]# hexdump linux.txt
0000000 0a61 0a62 0063
0000005
[root@localhost ~]# hexdump -C linux.txt
00000000 61 0a 62 0a 63 |a.b.c|
00000005
[root@localhost ~]# cat linux.txt
a
b
c
注意:不能使用 tr 命令将文件从 Unix 格式转换为 Windows(DOS)。
除此之外Linux还提供了两种文本格式相互转化的命令:dos2unix和unix2dos,dos2unix把"\r\n"转化成"\n",unix2dos把"\n"转化成"\r\n"。
linux tr命令实现windows文本格式与linux文本格式间的转换的更多相关文章
- (转)linux traceroute命令参数及用法详解--linux跟踪路由命令
linux traceroute命令参数及用法详解--linux跟踪路由命令 原文:http://blog.csdn.net/liyuan_669/article/details/25362505 通 ...
- linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例【转】
转自:http://blog.csdn.net/jiangkai_nju/article/details/7338177 一般情况,本地网络跟远程网络进行数据交抱,或者数据迁移,常用的有三种方法,一是 ...
- Linux常用命令英文全称与中文解释Linux系统
Linux常用命令英文全称与中文解释Linux系统(转) Linux常用命令英文全称与中文解释Linux系统 man: Manual 意思是手册,可以用这个命令查询其他命令的用法. pwd:Pri ...
- linux dmesg命令参数及用法详解(linux显示开机信息命令)
linux dmesg命令参数及用法详解(linux显示开机信息命令) http://blog.csdn.net/zhongyhc/article/details/8909905 功能说明:显示开机信 ...
- linux tr命令详解
通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符.您也可以用它来除去重复 ...
- [转]linux tr命令详解
转自:http://www.cnblogs.com/huangxingkezhan/archive/2013/01/23/2874031.html 通过使用 tr,您可以非常容易地实现 sed 的许多 ...
- Linux tr命令
介绍 tr命令可以对来自标准输入的字符进行替换.压缩和删除.tr只能接收来自标准的输入流,不能接收参数. 语法 tr [OPTION]... SET1 [SET2] 注意:SET2是可选项 OPTIO ...
- Linux tr 命令使用
man tr: TR(1) User Commands TR(1) NAME tr - translate or delete characters SYNOPSIS tr [OPTION]... S ...
- Linux tr命令使用方法
tr命令主要用于删除文件中控制字符或进行字符转换.本文主要介绍tr命令的基本语法和使用实例. tr基本语法 tr命令格式:tr [ -d ] [ -c ] [ -s ] [ 字符串1 ] [ 字符串2 ...
随机推荐
- 对于fetch的理解
在一篇文章里见到一位作者是这么说的 XMLHttpRequest 是一个设计粗糙的 API,不符合关注分离(Separation of Concerns)的原则,配置和调用方式非常混乱,而且基于事件的 ...
- 使用df -h命令查看磁盘空间使用率不算高,还有很多空余空间,但是创建文件或写入数据时一直报错磁盘写满
关于磁盘空间中索引节点爆满的问题还是挺多的,借此跟大家分享一下: 一.发现问题 在公司一台配置较低的Linux服务器(内存.硬盘比较小)的/data分区内创建文件时,系统提示磁盘空间不足,用df -h ...
- HOOK API(三) —— HOOK 所有程序的 MessageBox
转载来源:https://www.cnblogs.com/hookjc/ 0x00 前言 本实例要实现HOOK MessageBox,包括MessageBoxA和MessageBoxW,其实现细节与H ...
- JS介绍、意义
HTML和CSS 京东 网页.网站和应用程序 网页:单独的一个页面 网站:一些列相关的页面组成到一起 应用程序:可以和用户产生交互,并实现某种功能. 演示JavaScript的强大 http://im ...
- Keepalived配置与使用(1)
介绍 Keepalived是一个基于VRRP协议来实现的WEB服务高可用方案,可以利用其来避免单点故障.一个WEB服务至少会有2台服务器运行Keepalived,一台为主服务器(MASTER),一台为 ...
- 痞子衡嵌入式:揭秘i.MXRT1060,1010上串行NOR Flash冗余程序启动设计
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1060,1010上串行NOR Flash冗余程序启动设计. 工业产品设计里经常会有冗余程序/备份程序设计的需求,因为在工业 ...
- LinkedHashSet、Map、Map接口HashMap、Hashtable,TreeSet、TreeMap、如何选择使用集合实现类,Collections工具类
一.Set接口实现类LinkedHashSet 实现继承图: 1.LinkedHashSet的全面说明 1) LinkedHashSet是 HashSet的子类 2) LinkedHashSet底层是 ...
- vue中的钩子函数
什么是vue的钩子函数? Vue 实例在被创建时,会经过一系列的初始化过程,初始化过程中会运行一些函数,叫做生命周期钩子函数,通过运用钩子函数,用户在可以在Vue实例初始化的不同阶段添加自己的代码,以 ...
- 36、python并发编程之多线程(操作篇)
目录: 一 threading模块介绍 二 开启线程的两种方式 三 在一个进程下开启多个线程与在一个进程下开启多个子进程的区别 四 练习 五 线程相关的其他方法 六 守护线程 七 Python GIL ...
- Solution -「CF 908D」New Year&Arbitrary Arrangement
\(\mathcal{Description}\) Link. 给定 \(n,p_a,p_b\),初始有一个空串,每次操作有 \(\frac{p_a}{p_a+p_b}\) 的概率在其后添加字 ...