linux两道面试题(关于cut和join命令)

上一篇 / 下一篇  2013-11-23 16:28:26 / 个人分类:LINUX

!gi{-y(r-v3}0遇见过两道linux面试题,
`#h:V VJ/n0两文件如下:t1.txt(tab隔开每一列)51Testing软件测试网(B8J:uZd V5t-BC
学号 姓名51Testing软件测试网R`EzehS)u
001 xiaoming
Yq(wp9c:|#N9}0002 zhangsan
T@2S Y.K z(Y051Testing软件测试网C!o6Jq~X^v
t2.txt
h;b1ey,h8bk2c0科目号 学号 分数
.z1WU$P J4?sk9P(c00001   001 90
.I m9Xz~1dx4J00002   001 8051Testing软件测试网?&Q7v!I?HA+o P-G
0001   002 90
SC%[6g7J^.w3I&R M&a00002   002 10051Testing软件测试网Oer-Y eTl

51Testing软件测试网 {j0Q*KH0St;y6R

1.找出t1文件中工号为002的学生姓名
(F9C0M9}6[ V}3|02,使用命令将t1、t2合并为51Testing软件测试网m&O nT3|i:o
0001 001 xiaoming 90
"DMgJ(J-@ D3z L00002 001 xiaoming 8051Testing软件测试网ph+EjDh
0001 002 zhangsan 90
[;h&c6?` jZ00002 002 lisi     100

-sB0foU1w0

zV"UOL,M0一般我们用grep来查找,但显示某列真心没用过,貌似可以用cut,但具体怎么用没啥印象了,包括第二题压根就没做,后来回来查了下,贴下答案
:}L3d~b{_Ta01.grep 002 t1.txt|cut -f2
3Y4t.bV }$t_L;c0 (-d:表示以:为分隔符,默认为制表符或空格,-f2表示分割后第二个域的值)51Testing软件测试网P1y[p@H ?+Hi
其实还可以使用awk命令
/t-y_PH1q/Z X-m0awk ‘$1="002"{print $2}' t1.txt 
}8X,uB P P$U/z}3x7P02.join -2 2 t1.txt t2.txt51Testing软件测试网0g$B`d;\3Ur
大家可以自己去查具体用法51Testing软件测试网.`6^[J%N_H

gA2^a {W]1_ Ge6l.q*t051Testing软件测试网4l+D0Og4f;d
51Testing软件测试网(["@kD-y9a}Z


TAG:

 

评分:0

我来说两句

Open Toolbar