有很多事情,所有程序员应该知道,但我特别感兴趣的Unix / Linux命令,我们应该都知道。为了完成我们可能在某些时候遇到的任务,例如重构,报告,网络更新等。
我很好奇的原因是,因为以前在软件公司工作时,我正在研究我的学位,我注意到所有的开发人员(谁正在开发Windows软件)有2台电脑。
左边是他们的Windows XP开发机器,右边是一个Linux盒子。我认为是Ubuntu。无论如何,他们告诉我,他们使用它,因为它提供了强大的unix操作,Windows不能在他们的开发过程中。
这让我很好奇的知道,作为一个软件工程师,你相信是一些最强大的脚本/命令/用途,你可以在Unix / Linux操作系统上执行,每个程序员应该知道解决现实世界的任务,可能不必然涉及编写代码?
我们都知道sed,awk和grep是做什么的。我对一些实际的Unix / Linux脚本块感兴趣,这些块解决了一个困难的问题,让其他程序员可以受益。请提供您的故事和来源。
我相信有很多这样的例子,人们保留在他们的“脚本”文件夹中。
更新:人们似乎误解了这个问题。我不是要求单个unix命令的名称,而是UNIX代码片段,为您解决了一个问题。
从社区的最佳答案
遍历目录树并打印出与正则表达式匹配的任何文件的路径:
find . -exec grep -l -e 'myregex' {} \; >> outfile.txt
调用默认编辑器(Nano / ViM)
(works on most Unix systems including Mac OS X)
Default editor is whatever your
“EDITOR” environment variable is
set to. ie: export
EDITOR=/usr/bin/pico which is
located at ~/.profile under Mac OS
X.
Ctrl+x Ctrl+e
列出所有正在运行的网络连接(包括它们属于哪个应用)
lsof -i -nP
清除终端的搜索历史(我的另一个收藏)
history -c
我发现
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