为大家准备了几道简单的小题,不知道看过这篇文章后能否做出来?(考验你能力的时候到了,接招吧。。。)

1、将0-9分别替代成a-j

2、/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中

3、计算1+2+3+..+99+100的值

4、处理字符串“xt.,l 1 jr#!$mn
2 c*/fe 3 uz 4
”,只保留其中的数字和空格

5、将PATH变量每个目录显示在独立的一行

下面就来说说tr是什么:

        tr:可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符,经常用来编写优美的单行命令。

语法:tr [选项] [参数]

选项:

        -c:第一字符集的补集。

        -d:删除字符集一里的字符。

        -s:删除‘连续着的’重复字符,只保留第一个。

        -t:若第一字符集的字符多于第二字符集的字符,那么多出的字符还以原样输出;若第一字符集的字符少于第二字符集的字符,那么第二字符集的字符按照第一字符集的字                符位数替换输出,第二字符集多出的字符不输出。

参数:

          字符集1:指定要转换或删除的原字符集。当执行转换操作时,必须使用参数“字符集2”指定转换的目标字符集。但执行删除操作时,不需要参数“字符集2”;

          字符集2:指定要转换成的目标字符集。

字符:

        [:alnum:]  字母和数字

        [:alpha:]   字母

        [:digit:]    数字

        [:lower:]  小写字母

        [:space:]  空白字符

        [:upper:]  大写字母

        [:graph:]  图形字符

        [:xdigit:]  十六进制字符

示例:

1. echo “hello world” |tr  ‘a-z’  ‘A-Z’    (将小写字符替换成大写字符;反之(tr  ‘A-Z’  ‘a-z’),将大写字符替换成小写字符)

   

2.tr  ‘abc’  ‘xyz’

     

3.tr  -s  ‘a-z’   (-s 删除重复字符,只保留一个)

 

4. echo “haha 1234”  |tr -d [:alpha:]     (-d 删除字母。)

5. echo “haha  9876” |tr -cd [:alpha:]  (-c 删除补集,反向选择)

6. 利用tr做个小计算

  echo {1..10} |tr ‘  ‘  ‘ + ‘ |bc

7. 利用tr进行换行

  通过这几个示例看懂了tr了么?上面的题是不是都会做呢?对对答案吧

(提示:

  1. tr ‘0-9’  ‘a-j’

  2. cat /etc/issue |tr ‘a-z’ ‘A-Z’ > /tmp/issue.out

  3. echo {1..100} |tr ‘ ‘ ‘+’ |bc

  4. echo  ‘”xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4″‘ |tr -cd [:digit:][:space:]

  5. echo $PATH |tr ‘:’ ‘\n’

 ) 

原创文章,作者:吼吼哈嘿,如若转载,请注明出处:http://www.178linux.com/82183

(0)
吼吼哈嘿吼吼哈嘿
上一篇 2017-07-22
下一篇 2017-07-22

相关推荐

  • CentOS7下使用rmcli配置IP地址详解及网络连接状态查看工具和进程管理工具的使用

    一、在CentOS7中推荐使用nmcli工具来管理网卡配置,nmcli是NetworkManager Command-Line Interface(网络管理命令行接口)的简称,可以通过它以命令行的方式管理网卡。也可以使用nmtui管理工具,nmtui是NetworkManager Text-User Interface(网络管理文本用户接口)的简称,它提供的…

    Linux干货 2016-09-07
  • 自制 mini linux

    思路 先装载一块硬盘,按照上面两个实验的部分结果,创建各个目录 在/boot 里面添加内核 ,添加initramfs.img文件添加grub组件  ,创建grub.conf   然后复制bash  ,ls  ,cp  等,命令和响应的库文件,并在启动的时候指定第一个进程为/bin/bash 顺便加载一个网卡驱…

    2017-05-14
  • LVM

       本节主要为raid和LVM相关 一、作业 1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 …

    Linux干货 2016-08-30
  • 浅谈正则表达式

    1.       什么是正则表达式 基本说来,正则表达式是一种用来描述一定数量文本的模式。Regex代表Regular Express。本文将用<<regex>>来表示一段具体的正则表达式。 一段文本就是最基本的模式,简单的匹配相同的文本。   2. &n…

    Linux干货 2016-08-12
  • 第十周-Centos启动流程及Shell脚本编程

    一、CentOS启动流程 POST –> Boot Sequence(BIOS) –> Boot Loader (MBR) –> Kernel(ramdisk) –> rootfs –> switchroot –> /sbin/init –…

    2017-10-14
  • 常用磁盘阵列说明

    一.什么是磁盘阵列     磁盘阵列英文全名为RedundantArrays of Inexpensive Disks(RAID),即容错廉价磁盘阵列。     RAID可以将一些容量较小的磁盘通技术手段组成一个容量较大的磁盘设备,而且不只是容量上的提升,RAID还可以提供数据保…

    Linux干货 2015-04-02