#每日LinuxShell小练习#02 tr命令的使用

对于文本操作,tr命令的作用很大。今天对tr功能进行初步学习。

1、 tr的工作原理

tr命令不接受指定的文件参数,而只是对标准输入进行翻译

tr的命令格式是tr SET1 SET2,凡是在SET1中的字符,都会被替换为SET2中相应位置上的字符

2、简单的替换功能

tr 1 2 < ./material/20150804tr_height.txt
tr ‘ ‘ ‘\11‘ < ./material/20150804tr_height.txt

3、对一系列字符进行处理

tr ‘a-z‘ ‘A-Z‘ < ./material/20150804tr_word.txt
tr ‘1-8‘ ‘[A*]‘  < ./material/20150804tr_number.txt#重复指定的字符到与 SET1 相同长度为止 
tr ‘1-8‘ ‘[A*5]B‘  < ./material/20150804tr_number.txt# [CHAR*REPEAT],将CHAR重复REPEAT次数

在练习中成长~

#!/bin/bash
echo "this is test for command ‘tr‘"

echo "1.79 1.83" > ./material/20150804tr_height.txt
echo "1.65 1.59" >> ./material/20150804tr_height.txt

echo "AbcDe" > ./material/20150804tr_word.txt

echo "1234567890" > ./material/20150804tr_number.txt

echo "file writing finished"
########################################
tr 1 2 < ./material/20150804tr_height.txt
tr ‘ ‘ ‘\11‘ < ./material/20150804tr_height.txt
tr ‘a-z‘ ‘A-Z‘ < ./material/20150804tr_word.txt
tr ‘1-8‘ ‘[A*]‘  < ./material/20150804tr_number.txt
tr ‘1-8‘ ‘[A*5]B‘  < ./material/20150804tr_number.txt

补充知识:

1、将内容写入文件

两个管道命令就可以实现: 
1)  >  符号表示将信息写入文件中 
2)  >> 符号表示在已有的文件中添加信息

2、文件使用git进行管理,我不希望git把我的文件夹material也提交了,于是使用.gitignore文件

在仓库目录下新建一个名为.gitignore的文件

.gitignore文件对其所在的目录及所在目录的全部子目录均有效。通过将.gitignore文件添加到仓库,其他开发者更新该文件到本地仓库,以共享同一套忽略规则。

【例子】

# 忽略*.o和*.a文件

*.[oa]

# 忽略*.b和*.B文件,my.b除外

*.[bB]

!my.b

# 忽略dbg文件和dbg目录

dbg

# 只忽略dbg目录,不忽略dbg文件

dbg/

# 只忽略dbg文件,不忽略dbg目录

dbg

!dbg/

# 只忽略当前目录下的dbg文件和目录,子目录的dbg不在忽略范围内

/dbg

时间: 2024-10-07 12:46:44

#每日LinuxShell小练习#02 tr命令的使用的相关文章

#每日LinuxShell小练习#05 awk-好用的数据处理工具

awk是数据处理工具.相比如sed常作用于一整行的处理,awk则倾向于将一行分为数个“字段”来处理. 因此,awk适合处理小型的数据. awk的基本模式如下: awk '条件类型1{动作1}条件类型2{动作2}' 首先,看一段基本的代码 echo "basis exmaple pf awk" echo "**************************" echo "before awk###############" last -n 5 e

#每日Linux小练习#11作业命令继续分析

在对比中发现不同 1.进程和作业的概念有所区别.一个正在执行的进程称为一个作业,而且作业可以包含一个或多个进程,尤其是当使用了管道和重定向命令.例如“nroff -man ps.1|grep kill|more”这个作业就同时启动了三个进程. 2.作业和bash是相关的,在进行工作管理的行为中,其实每个工作都是目前bash的子进程,即彼此之间具有相关性.比如无法使用job control的方式由tty1的环境去管理tty2的bash. 前台作业和后台作业 只有前台程序可以接受终端输入,后台作业试

#每日LinuxShell小练习#04 find指令

今天对find指令进行练习 原材料来源于http://www.cnblogs.com/wanqieddy/archive/2011/06/09/2076785.html find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; 这个是find的基本公式 1.基本形式 find path -option 如果有两个以上的选择,则使用 -o -a -o 是或者的意思 -a 是而且的意思 比如: #!/bin/ba

#每日LinuxShell小练习#03 正则表达式

正则表达式(Regular Expression ,RE)是处理字符串的方法,它是以行为单位来进行字符串的处理行为, 通过一些特殊符号的辅助,可以让用户轻易达到查找,删除,替换某特定字符串的处理程序. #!/bin/bash if [ $# == 0 ];then echo "Please input parameters:" echo "dmesg OR txt" fi if [ "$1" == "dmesg" ];then

linux系统之tr命令

tr命令介绍以及使用 目录: 1.tr命令的介绍 2.tr命令格式 3tr命令使用项. 4.常见的tr命令的使用 tr命令介绍 从标准输入中翻译.压缩和/或删除字符,写入标准输出,说白了就转换和删除字符. tr命令格式 tr 参数 test1 test2 tr命令的使用项 -c, -C, –complement 用集合1中的字符串替换,要求字符集为ASCII. -d, –delete 删除集合1中的字符而不是转换 -s, –squeeze-repeats 删除所有重复出现字符序列,只保留第一个:

[每日一个小技巧] CentOS 下使用yum安装一类软件包

yum 提供了丰富的工具用于支持软件包的安装. 有时候需要安装不只只是一个的情况下,可以使用groupinstall选项. 首先可以通过grouplist查询对应的group信息,比如需要安装开发工具的情况下, 可以使用以下命令: $ yum groupinstall  "Development Tools" [每日一个小技巧] CentOS 下使用yum安装一类软件包,布布扣,bubuko.com

通过案例学习重定向.tr命令

1.将日历重定向指定文件中 解释:当一个大于号的时候会覆盖重定向的文件,因此在工作中要注意此操作,(set -C),可以防止文件被覆盖 ,两个大于号表示追加,不会使目的文件里的内容覆盖.在大于号前面其实是省略了一个数字1,表示标准正确输出,数字2表示 标准错误输出,这里没有演示,有兴趣的同学可以实验. 2.理解>filename 2>&1 解释:ls /boot /err 这条命令是显示目录/boot和/err里的内容,由于/err这目录不存在,所以会显示错误提示,这里也就可以达到既显

tr命令用法

原文链接 # echo "abcd"|tr 'a' 'b' bbcd tr 命令 用途 转换字符. 语法 tr [ -c | -cds | -cs | -C | -Cds | -Cs | -ds | -s] [ -A] String1 String2 tr { -cd | -cs |-Cd | -Cs | -d| -s} [ -A] String1 描述 tr 命令从标准输入删除或替换字符,并将结果写入标准输出.根据由 String1 和 String2 变量指定的字符串以及指定的标志

第四天重定向tr命令用户名密码修改

直接指针间接指针ext4格式 硬链接特点不能跨分区 [mage@centos7 data]$ln /root/f3 /data/f3.lnk ln: failed to create hard link '/data/f3.lnk' => '/root/f3': Invalid cross-device link 硬链接本质是一个文件多个名称,夸分区则文件不同 不能针对目录 [mage@centos7 data]$ln /data /data/link ln: '/data': hard lin