Linux命令练习(一)

Linux命令练习(一)

一.文件内容浏览cat命令

1.cat查看/etc/passwd文件内容,且输出时带行号
2.使用more查看/etc/passwd内容,且每页显示10行
3.使用head/tail分别查看文件前5行内容和后5行内容
4.使用grep查看/etc/passwd中和root相关的内容

1:

     [root@localhost ~]# cat -n /etc/passwd
     1	root:x:0:0:root:/root:/bin/bash
     2	bin:x:1:1:bin:/bin:/sbin/nologin
     3	daemon:x:2:2:daemon:/sbin:/sbin/nologin
     4	adm:x:3:4:adm:/var/adm:/sbin/nologin
     5	lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
     6	sync:x:5:0:sync:/sbin:/bin/sync
     7	shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
     8	halt:x:7:0:halt:/sbin:/sbin/halt

2:

[root@localhost ~]# more -10 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin

3:

[root@localhost ~]# head -5 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

[root@localhost ~]# tail -5 /etc/passwd
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:975:975::/run/gnome-initial-setup/:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
rhcsa:x:1000:1000:rhcsa:/home/rhcsa:/bin/bash

4:

[root@localhost ~]# more /etc/passwd | grep "root"
root:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin

二.cut命令使用:

给定文件cut_data.txt且内容为:
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60

1、使用默认定界符切割文件内容,且输出切割后的第一个字段
2、切割文件内容,且输出切割后的第一个字段和第三个字段
3、按字节切割:输出切割的第一个字节到第10个字节的内容
4、按字符切割:输出切割后的第一个字符和第5个字符的内容
5、按指定分界符去切割:内容如下, 输出第一个字段和第三个字段内容
No|Name|Score
1|zhang|20
2|li|80
3|wang|90
4|sun|60

1[root@localhost ~]# cut -f1 cut_data.txt 
No
1
2
3 
4 

2[root@localhost ~]# cut -f1,3 cut_data.txt 
No	Score
1	20
2	80
3 	90
4 	60 

3[root@localhost ~]# cut -b1-10 cut_data.txt 
No	Name	Sc
1	zhang	20
2	li	80
3 	wang	90
4 	sun	60 

4[root@localhost ~]# cut -c1-5 cut_data.txt 
No	Na
1	zha
2	li	
3 	wa
4 	su

5[root@localhost ~]# cut -f1,3 -d"|" cut_data.txt 
No|Score
1|20
2|80
3|90
4|60 

三.uniq命令使用

新建文件uniq_data.txt,文件内容为
Welcome to Linux
Windows
Windows
Mac
Mac
Linux
1、 使用uniq命令输出去重后的结果
2、 使用uniqmingl只输出重复的行
3、使用uniq命令输出不重复的行
4、使用uniq命令统计重复次数

1[root@localhost ~]# uniq uniq_data.txt 
Welcome to Linux
Windows
Mac
Linux

2[root@localhost ~]# uniq -d uniq_data.txt 
Windows
Mac

3[root@localhost ~]# uniq -u uniq_data.txt 
Welcome to Linux
Linux

4[root@localhost ~]# uniq -c uniq_data.txt 
      1 Welcome to Linux
      2 Windows
      2 Mac
      1 Linux

四.sort命令

给定文件 num.txt, args.txt
文件内容:num.txt
1
3
5
2
4
文件内容:args.txt
test
args1
args2
args4
args4
args3
1、对num.txt进行排序,且将结果输出到sorted_num.txt中
2、对args.txt进行排序,且将结果输出到sorted_args.txt中
3、对num.txt和args.txt进行排序,且将结果输出到sorted_merge.txt中
4、对args.txt排序后去重输出
5、合并sorted_args.txt和sorted_num.txt且输出
6、给定文件info_txt:按第二列作为key进行排序
No Name Score
1 zhang 20
2 li 80
3 wang 90
4 sun 60


1[root@localhost ~]# sort num.txt -o sorted_num.txt
[root@localhost ~]# more sorted_num.txt 
1
2
3
4
5

2[root@localhost ~]# sort args.txt -o sorted_args.txt
[root@localhost ~]# more sorted_args.txt 
args1
args2
args3
args4
args4
test

3[root@localhost ~]# sort num.txt args.txt -o sorted_merge.txt
[root@localhost ~]# more sorted_merge.txt 
1
2
3
4
5
args1
args2
args3
args4
args4
test

4[root@localhost ~]# sort -u args.txt
args1
args2
args3
args4
test
[root@localhost ~]# more sorted_num.txt 
1
2
3
4
5
args1
args2
args3
args4
args4
test

5[root@localhost ~]# sort sorted_args.txt >> sorted_num.txt 
[root@localhost ~]# more sorted_num.txt 
1
2
3
4
5
args1
args2
args3
args4
args4
test

6[root@localhost ~]# sort -n -k2 info_txt 
1	zhang	20
2	li	80
3	wang	90
4	sun	60
No	Name	Score

五、tr命令

1、将26个小写字母的后13个字母替换成大写字母
2、将hello 123 world 456中的数字替换成空字符
3、将hello 123 world 456中字母和空格替换掉,只保留数字

1[root@localhost ~]# echo 'abcdefghigklmnopqrstuvwxyz' | tr n-z N-Z
abcdefghigklmNOPQRSTUVWXYZ

2[root@localhost ~]# echo 'hello 123 world 456' | tr 0-9 ' '
hello     world    

3[root@localhost ~]# echo 'hello 123 world 456' | tr A-z ' '
      123       456
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值