Linux字符转换命令集

1、tr 替换与删除文字

# tr [-ds] string

  • -d :删除所匹配的字符;
  • -s :取代掉匹配的重复字符;

范例一:将last输出的讯息,一律变更大写

# last | tr "[a-z]" "[A-Z]"

范例二:输出/etc/passwd内容,并将“:”删除

cat /etc/passwd | tr -d ":"

2、join 合并对应行

# join [-ti12] file1 file2

  • -t :设定分隔符,默认为空格。并且比对【第一个字段】的数据,如果两个文件所比对的字段相同,就合并;
  • -i :忽略大小写;
  • -1 :代表第一个文件;
  • -2 :代表第二个文件;

范例一:用root身份,将/etc/passwd与/etc/shadow相关数据合并

# join -t ":" /etc/passwd /etc/shadow

范例二:将/etc/passwd的第4个字段GID与/etc/group的第3个字段比对,并合并

# join -t ":" -1 4 /etc/passwd -2 3 /etc/group
我将第一个档案的第四栏与第二个档案的第三栏取出,放置到输出的最前方,然后将剩下的数据给他加在一起!就成了上面的输出啦!

3、paste 合并行,与join相比它比较简单,没有任何的判断直接合并行

# paste [-d] file1 file2

  • -d : 设定分隔符,默认为空格。


4、expand 将【tab】键转换成【空格】键

# expand [-t] file

  • -t :设定【空格】键为多少个;

范例一:

# grep "^MANPATH" /etc/man.config | head -3 | expand -t 6 - | cat -A
这里需要说明的是,expand -t 6 后面的符号“-”,它代表stdout。可省略在这里。

5、split 分割文件

# split [-bl] file PREFIX

  • -b :设定分割限定单位,例如 b、k、m;
  • -l :设定分割限定行数;

范例一:将file.txt文件已200K来分割

# split -b 200k file.txt sfile.txt
被分割的文件会以你所定义sfile.txt来命名,并已该文件名称追加aa、ab、ac、等方式来区分。


范例二:将file.txt文件已每20行来分割

# split -l 20 file.txt sfile.txt


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值