首页 > 语言 > 关键词  > 开发人员最新资讯  > 正文

每个开发人员都应该知道的8个Linux命令

2012-08-30 13:57 · 稿源:大爱数据

每个开发人员到了他们职业人生的某个阶段的时候,将会发现自己要寻找有关Linux的信息。我并不是这方面的专家。但是掌握了以下8个命令,我几乎可以得到我任何需要的东西。

注意:以下的命令都有很多扩展的文档,博客里提出的知识我最常用的命令,用法。如果你不了解Linux命令,这个帖子会给你一点指导。

我们以一些文本举例。假设我们有2个文件,里面有订单关于第三方的放置地点和发送回应。

order.out.log

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

order.in.log

8:22:20 111, Order Complete

8:23:50 112, Order sent to fulfillment

8:24:20 113, Refund sent to processing

cat

–追加文件并在标准输出上打印

jfields$ cat order.out.log

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

正如他的名字所说的,你可以串联多个文件

jfields$ cat order.*

8:22:20 111, Order Complete

8:23:50 112, Order sent to fulfillment

8:24:20 113, Refund sent to processing

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

看到效果了,但我们可以提高其可读性。

sort

–对文本文件进行行排序,这里使用排序是不错的选择

jfields$ cat order.* | sort

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:22:20 111, Order Complete

8:23:45 112, 1, Joy of Clojure, Hardcover, 29.99

8:23:50 112, Order sent to fulfillment

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:24:20 113, Refund sent to processing

上面显示了我们想要看到的效果,但是这只是小文件。而真实的数据是很大的,有些是你不想要的数据怎么办?

grep

grep, egrep, fgrep–进行匹配输出

假设我只关心给PofEAA的订单,使用grep就可以做到。

jfields$ cat order.* | sort | grep Patterns

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

假设订单113里面发生了一些问题,你想看到关于113的所有订单信息。没错,grep能帮你。

jfields$ cat order.* | sort | grep ":\d\d 113,"

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:24:20 113, Refund sent to processing

你会发现在表达式里面不止有113,这是因为113也可能出现在价格里面,或者产品里面,这样做是严格限制其查找结果。

现在我们已经发出退货订单的信息,我们每日也要给会计发送销售统计。他们要求每个PofEAA的项目,但他们只关心数量和价格,我们要把

不需要的部分删减掉。

cut

–从文件的每一行删除一部分

还是要先使用grep。

jfields$ cat order.* | sort | grep Patterns

8:22:19 111, 1, Patterns of Enterprise Architecture, Kindle edition, 39.99

8:24:19 113, -1, Patterns of Enterprise Architecture, Kindle edition, 39.99

jfields$ cat order.* | sort | grep Patterns | cut -d"," -f2,5

1, 39.99

-1, 39.99

我们已经减少了数据,让会计一目了然。

假设会计想要把订单ID做为参考,把它放在每一行的最后,并用单引号。

sed

–流编辑器。用来处理文本转换。

下面的示例演示怎样使用它来做到我们想要的数据。

jfields$ cat order.* | sort | grep Patterns \

>| sed s/"[0-9\:]* \([0-9]*\)\, \(.*\)"/"\2, '\1'"/

1, Patterns of Enterprise Architecture, Kindle edition, 39.99, '111'

-1, Patterns of Enterprise Architecture, Kindle edition, 39.99, '113'

lmp-jfields01:~ jfields$ cat order.* | sort | grep Patterns \

>| sed s/"[0-9\:]* \([0-9]*\)\, \(.*\)"/"\2,'\1'"/ | cut -d"," -f1,4,5

1, 39.99,'111'

-1, 39.99, '113'

这是一个正则表达式,但没什么复杂的。做以下事情

1.删除时间

2.捕获订单号

3.删除逗号和订单号后面的空格

4.捕获此行的其余部分

一旦我们看到了我们需要的数据,可以使用\1&\2让输出数据符合我们的格式要求。

uniq

–去除重复行

下面的示例演示如何grep的唯一相关的交易,削减不必要的信息,并获得计数。

jfields$ cat order.out.log | grep "\(Kindle\|Hardcover\)" | cut -d"," -f3 | sort | uniq -c

1 Joy of Clojure

2 Patterns of Enterprise Architecture

jfields$ cat order.out.log | grep "\(Kindle\|Hardcover\)" | cut -d"," -f3 | sort | uniq

Joy of Clojure

Patterns of Enterprise Architecture

find

–在目录里找文件

假设这2个文本文件存在于我们的主目录,我们不必知道他们的全名。

jfields$ find /Users -name "order*"

Users/jfields/order.in.log

Users/jfields/order.out.log

当然还有很多选项,但99%的情况下我这么做。

less

–在一个文件里面向前向后移动

让我们回到最简单的cat|sort的例子。你可以向前搜索使用”/”,向后使用”?”,2者都可以使用正则表达式。

jfields$ cat order* | sort | less

你可以试试/113.*,这将突出显示订单113。你可以使用?.*112,也将突出显示订单112,你可以用’q‘退出。

Linux命令很丰富,有些人很头疼。这几个命令应该能帮你完成大部分的文本工作,不用交到你的脚本语言手里。

原文:jayfields编译:大爱数据

举报

  • 相关推荐
  • 增量计算掀架构革命:云器定义新标准,Flink高成本遇挑战

    云器科技提出"通用增量计算"技术,解决大数据处理痛点。相比传统流计算框架Flink,该技术采用"按需增量"模式,仅计算数据变化部分,在保证分钟级时效的同时大幅降低资源消耗。云器还制定了行业首个增量计算标准SPOT,推动技术生态发展。该技术已在小红书等企业应用,实现流批一体化开发,支持标准SQL语法,开发效率提升显著。增量计算代表数据处理第四范式革命,为中小企业数字化转型提供新可能。

  • 无缘玄戒!小米平板8系列曝光:搭载骁龙8 Elite

    博主数码闲聊站曝光了小米平板8系列的参数信息,该系列没有搭载小米自研的玄戒芯片,而是选择了高通骁龙8 Elite旗舰平台,新品预计将在9月登场,大概率和小米16系列一同发布。 该博主还爆料,小米平板8系列采用LCD屏幕,尺寸在11-12英寸之间,小米会做一些独家游戏特性,这将是性能最强悍的小米平板。

  • 华为回应《原神》鸿蒙版何时上线:正进行鸿蒙5的开发适配

    日前,华为终端BGCEO何刚微博发文,称鸿蒙5上架了很多游戏,我也要下载体验一下。 有网友在评论区留言询问:《原神》啥时候上线? 对此,华为终端客户服务表示,华为正与应用开发者进行HarmonyOS 5的开发适配与技术沟通工作,因体量、功能差异不同功能的适配周期和进度不同,可以尝试在应用市场我的心愿单中添加心愿。 一旦应用上架,应用市场将会第一时间通过通知

  • 门店回应38.88万买玛莎拉蒂:2天卖了10多辆 经销商独立行为

    近日,社交平台一则“上海浦东玛莎拉蒂Grecale限时38.88万元起”的促销海报引发广泛关注。海报显示,这款豪华品牌SUV的指导价区间为65.08万-103.88万元,而此次活动价直降近半,活动截止日期为9月30日。 消息迅速在车友圈引发热议,部分网友质疑其真实性。 对此,销售人员确认该促销属实,但强调这是经销商“买断包销”的独立行为,与玛莎拉蒂官方无关。

  • 首发鸡血版骁龙8 Elite 2!三星Galaxy S26系列现身

    据媒体报道,三星Galaxy S26系列现身GSMA数据库,该系列将在明年上半年登场。 GSMA数据库显示,三星Galaxy S26系列有3款机型,分别是Galaxy S26、Galaxy S26Edge和Galaxy S26Ultra,其型号分别是SM-S942、SM-S947、SM-S948,这意味着Galaxy S26已被砍掉。 这跟苹果的策略如出一辙,今年9月登场的iPhone17系列不再推出Plus版本,取而代之的是iPhone17Air,主打超薄设计。 三星也加入了超薄赛道,今年上�

  • 2025 MWC 上海,IndoorLink无线讲解器在现场!

    6月18日,亚洲科技盛会MWC上海开幕。中国智能导览品牌IndoorLink携旗舰无线讲解器亮相,凭借500米超距抗干扰传输、智能多团队协作系统及全场景适配能力成为展会焦点。其搭载RangeBoost技术实现500米无障碍稳定传输,信号穿透力达普通设备2.6倍。创新智能信道管理系统支持999+无限频道和300+设备同步运行,毫秒级跳频规避干扰,确保多语种分组导览"零串频"。产品通过国际认证,已服务全球30国,在巴塞罗那MWC经5000人次极限考验。同时推出主副双讲+同声传译系统,支持12种语言实时翻译,助力跨国企业打破文化壁垒。安全方面通过本安防爆认证,成为业内首款可进入石化车间的讲解设备。这款承载30多项专利的中国声学方案,正重塑知识传播边界。

  • 6.3万起 三星Galaxy Z Fold7/Flip7限量版发布:灵感来自Labubu 只有8台

    日前,奢侈品牌厂商Caviar推出Cabubu系列定制版三星Galaxy Z Fold7、三星Galaxy Z Flip7。 其中,三星Galaxy Z Fold7Cabubu版售价8910美元起(约合6.3万元人民币)、三星Galaxy Z Fold7Cabubu版起售价10340美元(约合7.4万元人民币)。

  • 融合数据中台与动态调度:林剑峰在共享出行智能算法开发中的技术探索

    本文讲述了林剑峰在智能出行领域的十年深耕历程。作为系统工程师,他主导构建了融合数据、算法与规则引擎的智能调度体系,通过动态聚类和路径规划模型显著提升了共享单车调度效率。其创新包括分级围栏模型、嵌入式调度判断模块等专利技术,实现了跨区域精准调度和系统自主运行能力。数据显示,他推动的系统使车辆调度效率提升37.38%,异常识别准确率显著提高。林剑峰的工作体现了"技术+业务"的系统设计理念,为城市智能交通建设提供了可借鉴的技术范式。

  • 小米MIX Flip 2保外维修价格公布:主板最高2840元

    小米6月底发布新款折叠屏手机MIX Flip2,售价5999元。该机维修价格公布,主板维修费最高达2840元,可购买一台Redmi K80至尊版(2599元)。内外屏由TCL华星独家供应,均支持1.5K分辨率、120Hz刷新率。搭载骁龙8+芯片、5165mAh电池,支持67W快充和50W无线充电,配备5000万像素双摄。维修费用方面,内屏组件1730元,外屏500元,其他部件均不超过200元。人工维修费统一40元/次(数据线/充电器除外)。

  • iQOO 15/15 Ultra首曝:全系标配骁龙8 Elite 2

    博主数码闲聊站爆料,iQOO 15全系标配骁龙8 Elite 2处理器,全系标配5000万像素3C潜望长焦,这是iQOO最强悍的高端旗舰。 据悉,高通骁龙8 Elite 2采用了第二代自研Oryon CPU架构,其GeekBench 6单核成绩有望突破4000分,多核成绩有望突破11000分,其中多核成绩大概率会超过A19 Pro。 除了升级处理器,iQOO 15系列另一大变化是将同时推出两款机型,分别是标准版和Ultra版,而上一代iQOO 13只�