所有程序员都应该知道很多事情,但我对我们都应该知道的Unix/Linux命令特别感兴趣.为了完成我们可能在某些时候遇到的任务,例如重构,报告,网络更新等.
我很好奇的原因是因为我在学习学位期间曾在一家软件公司担任过软件测试员,我注意到所有开发人员(开发Windows软件的人)都有2台计算机.
左边是他们的Windows XP开发机器,右边是一个Linux机器.我认为这是Ubuntu.无论如何,他们告诉我他们使用它是因为它提供了Windows在开发过程中无法完成的强大的unix操作.
这让我很奇怪,作为一名软件工程师,您认为您可以在Unix/Linux操作系统上执行哪些最强大的脚本/命令/用途,每个程序员都应该知道这些脚本/命令/用途可以解决现实世界中可能没有的任务.必然与编写代码有关?
我们都知道什么是sed,awk和grep.我对一些已经解决了一个难题的实际Unix/Linux脚本片感兴趣,以便其他程序员可以从中受益.请提供您的故事和来源.
我相信有很多这样的例子,人们会保留在他们的' Scripts '文件夹中.
更新:人们似乎误解了这个问题.我不是要求各个unix命令的名称,而是要求解决问题的UNIX代码片段.
遍历目录树并打印出与正则表达式匹配的任何文件的路径:
find . -exec grep -l -e 'myregex' {} \; >> outfile.txt
调用默认编辑器(Nano/ViM)
(适用于大多数Unix系统,包括Mac OS X)默认编辑器是您的" EDITOR "环境变量设置的任何内容.即:导出EDITOR =/usr/bin/pico,位于Mac OS X下的〜/ .profile.
Ctrl+x Ctrl+e
列出所有正在运行的网络连接(包括它们所属的应用程序)
lsof -i -nP
清除终端的搜索历史(我最喜欢的另一个)
history -c
Alex B.. 19
我发现commandlinefu.com是各种shell脚本配方的优秀资源.
# Run the last command as root sudo !! # Rapidly invoke an editor to write a long, complex, or tricky command ctrl-x ctrl-e # Execute a command at a given time echo "ls -l" | at midnight
# output your microphone to a remote computer's speaker dd if=/dev/dsp | ssh -c arcfour -C username@host dd of=/dev/dsp
quant_dev.. 13
如何退出VI
:WQ
保存文件并结束痛苦.
替换" :wq
"是" :x
"来保存和关闭vi编辑器.
我发现commandlinefu.com是各种shell脚本配方的优秀资源.
# Run the last command as root sudo !! # Rapidly invoke an editor to write a long, complex, or tricky command ctrl-x ctrl-e # Execute a command at a given time echo "ls -l" | at midnight
# output your microphone to a remote computer's speaker dd if=/dev/dsp | ssh -c arcfour -C username@host dd of=/dev/dsp
如何退出VI
:WQ
保存文件并结束痛苦.
替换" :wq
"是" :x
"来保存和关闭vi编辑器.
grep的
AWK
SED
perl的
找
Unix的强大功能来自于它操纵文本文件和过滤数据的能力.当然,您可以获得Windows的所有这些命令.它们在操作系统中不是原生的,就像它们在Unix中一样.
以及将命令与管道等链接在一起的能力.这可以通过简单的功能创建极其强大的单行命令.