zz from: http://www.catonmat.net/blog/top-ten-one-liners-from-commandlinefu-explained

中文地址:http://wowubuntu.com/linux_shell_1.html

I love working in the shell. Mastery of shell lets you get things done in seconds, rather than minutes or hours, if you chose to write a program instead.

In this article I’d like to explain the top one-liners from the commandlinefu.com. It’s a user-driven website where people get to choose the best and most useful shell one-liners.

But before I do that, I want to take the opportunity and link to a few of my articles that I wrote some time ago on working efficiently in the command line:

Working Efficiently in Bash (Part I).
Working Efficiently in Bash (Part II).
The Definitive Guide to Bash Command Line History.
A fun article on Set Operations in the Shell.
Another fun article on Solving Google Treasure Hunt in the Shell.
Update: Russian translation now available.

And now the explanation of top one-liners from commandlinefu.

#1. Run the last command as root

$ sudo !!
We all know what the sudo command does – it runs the command as another user, in this case, it runs the command as superuser because no other user was specified. But what’s really interesting is the bang-bang !! part of the command. It’s called the event designator. An event designator references a command in shell’s history. In this case the event designator references the previous command. Writing !! is the same as writing !-1. The -1 refers to the last command. You can generalize it, and write !-n to refer to the n-th previous command. To view all your previous commands, type history.

This one-liner is actually really bash-specific, as event designators are a feature of bash.

I wrote about event designators in much more detail in my article “The Definitive Guide to Bash Command Line History.” The article also comes with a printable cheat sheet for working with the history.

#2. Serve the current directory at http://localhost:8000/

$ python -m SimpleHTTPServer
This one-liner starts a web server on port 8000 with the contents of current directory on all the interfaces (address 0.0.0.0), not just localhost. If you have “index.html” or “index.htm” files, it will serve those, otherwise it will list the contents of the currently working directory.

It works because python comes with a standard module called SimpleHTTPServer. The -m argument makes python to search for a module named SimpleHTTPServer.py in all the possible system locations (listed in sys.path and $PYTHONPATH shell variable). Once found, it executes it as a script. If you look at the source code of this module, you’ll find that this module tests if it’s run as a script if __name__ == ‘__main__’, and if it is, it runs the test() method that makes it run a web server in the current directory.

To use a different port, specify it as the next argument:

$ python -m SimpleHTTPServer 8080
This command runs a HTTP server on all local interfaces on port 8080.

#3. Save a file you edited in vim without the needed permissions

:w !sudo tee %
This happens to me way too often. I open a system config file in vim and edit it just to find out that I don’t have permissions to save it. This one-liner saves the day. Instead of writing the while to a temporary file :w /tmp/foobar and then moving the temporary file to the right destination mv /tmp/foobar /etc/service.conf, you now just type the one-liner above in vim and it will save the file.

Here is how it works, if you look at the vim documentation (by typing :he :w in vim), you’ll find the reference to the command :w !{cmd} that says that vim runs {cmd} and passes it the contents of the file as standard input. In this one-liner the {cmd} part is the sudo tee % command. It runs tee % as superuser. But wait, what is %? Well, it’s a read-only register in vim that contains the filename of the current file! Therefore the command that vim executes becomes tee current_filename, with the current directory being whatever the current_file is in. Now what does tee do? The tee command takes standard input and write it to a file! Rephrasing, it takes the contents of the file edited in vim, and writes it to the file (while being root)! All done!

#4. Change to the previous working directory

$ cd –
Everyone knows this, right? The dash “-” is short for “previous working directory.” The previous working directory is defined by $OLDPWD shell variable. After you use the cd command, it sets the $OLDPWD environment variable, and then, if you type the short version cd -, it effectively becomes cd $OLDPWD and changes to the previous directory.

To change to a directory named “-“, you have to either cd to the parent directory and then do cd ./- or do cd /full/path/to/-.

#5. Run the previous shell command but replace string “foo” with “bar”

$ ^foo^bar^
This is another event designator. This one is for quick substitution. It replaces foo with bar and repeats the last command. It’s actually a shortcut for !!:s/foo/bar/. This one-liner applies the s modifier to the !! event designator. As we learned from one-liner #1, the !! event designator stands for the previous command. Now the s modifier stands for substitute (greetings to sed) and it substitutes the first word with the second word.

Note that this one-liner replaces just the first word in the previous command. To replace all words, add the g modifer (g for global):

$ !!:gs/foo/bar
This one-liner is also bash-specific, as event designators are a feature of bash.

Again, see my article “The Definitive Guide to Bash Command Line History.” I explain all this stuff in great detail.

#6. Quickly backup or copy a file

$ cp filename{,.bak}
This one-liner copies the file named filename to a file named filename.bak. Here is how it works. It uses brace expansion to construct a list of arguments for the cp command. Brace expansion is a mechanism by which arbitrary strings may be generated. In this one-liner filename{,.bak} gets brace expanded to filename filename.bak and puts in place of the brace expression. The command becomes cp filename filename.bak and file gets copied.

Talking more about brace expansion, you can do all kinds of combinatorics with it. Here is a fun application:

$ echo {a,b,c}{a,b,c}{a,b,c}
It generates all the possible strings 3-letter from the set {a, b, c}:

aaa aab aac aba abb abc aca acb acc
baa bab bac bba bbb bbc bca bcb bcc
caa cab cac cba cbb cbc cca ccb ccc
And here is how to generate all the possible 2-letter strings from the set of {a, b, c}:

$ echo {a,b,c}{a,b,c}
It produces:

aa ab ac ba bb bc ca cb cc
If you liked this, you may also like my article where I defined a bunch of set operations (such as intersection, union, symmetry, powerset, etc) by using just shell commands. The article is called “Set Operations in the Unix Shell.” (And since I have sets in the shell, I will soon write articles on on “Combinatorics in the Shell” and “Algebra in the Shell”. Fun topics to explore. Perhaps even “Topology in the Shell” :))

#7. mtr – traceroute and ping combined

$ mtr google.com
MTR, bettern known as “Matt’s Traceroute” combines both traceroute and ping command. After each successful hop, it sends a ping request to the found machine, this way it produces output of both traceroute and ping to better understand the quality of link. If it finds out a packet took an alternative route, it displays it, and by default it keeps updating the statistics so you knew what was going on in real time.

#8. Find the last command that begins with “whatever,” but avoid running it

$ !whatever:p
Another use of event designators. The !whatever designator searches the shell history for the most recently executed command that starts with whatever. But instead of executing it, it prints it. The :p modifier makes it print instead of executing.

This one-liner is bash-specific, as event designators are a feature of bash.

Once again, see my article “The Definitive Guide to Bash Command Line History.” I explain all this stuff in great detail.

#9. Copy your public-key to remote-machine for public-key authentication

$ ssh-copy-id remote-machine
This one-liner copies your public-key, that you generated with ssh-keygen (either SSHv1 file identity.pub or SSHv2 file id_rsa.pub) to the remote-machine and places it in ~/.ssh/authorized_keys file. This ensures that the next time you try to log into that machine, public-key authentication (commonly referred to as “passwordless authentication.”) will be used instead of the regular password authentication.

If you wished to do it yourself, you’d have to take the following steps:

your-machine$ scp ~/.ssh/identity.pub remote-machine:
your-machine$ ssh remote-machine
remote-machine$ cat identity.pub >> ~/.ssh/authorized_keys
This one-liner saves a great deal of typing. Actually I just found out that there was a shorter way to do it:

your-machine$ ssh remote-machine ‘cat >> .ssh/authorized_keys’ < .ssh/identity.pub
#10. Capture video of a linux desktop

$ ffmpeg -f x11grab -s wxga -r 25 -i :0.0 -sameq /tmp/out.mpg
A pure coincidence, I have done so much video processing with ffmpeg that I know what most of this command does without looking much in the manual.

The ffmpeg generally can be descibed as a command that takes a bunch of options and the last option is the output file. In this case the options are -f x11grab -s wxga -r 25 -i :0.0 -sameq and the output file is /tmp/out.mpg.

Here is what the options mean:

-f x11grab makes ffmpeg to set the input video format as x11grab. The X11 framebuffer has a specific format it presents data in and it makes ffmpeg to decode it correctly.
-s wxga makes ffmpeg to set the size of the video to wxga which is shortcut for 1366×768. This is a strange resolution to use, I’d just write -s 800×600.
-r 25 sets the framerate of the video to 25fps.
-i :0.0 sets the video input file to X11 display 0.0 at localhost.
-sameq preserves the quality of input stream. It’s best to preserve the quality and post-process it later.
You can also specify ffmpeg to grab display from another x-server by changing the -i :0.0 to -i host:0.0.

If you’re interested in ffmpeg, here are my other articles on ffmpeg that I wrote while ago:

How to Extract Audio Tracks from YouTube Videos
Converting YouTube Flash Videos to a Better Format with ffmpeg
PS. This article was so fun to write, that I decided to write several more parts. Tune in the next time for “The Next Top Ten One-Liners from CommandLineFu Explained” :)

Have fun. See ya!

PSS. Follow me on twitter for updates.

This article was sponsored by:

Canadian domain names available through Netfirms.ca
Hosting.com offers Dedicated server hosting
Advanceware’s Inventory management software can help you organize your resources.
Sherweb provides Hosted Exchange solutions for your small business.
Contact me, if you wish to sponsor any other of my existing posts or future posts!

——

netstat -tulnp (监测端口)

1. 更友好的显示当前挂载的文件系统

mount | column -t

这条命令适用于任何文件系统,column 用于把输出结果进行列表格式化操作,这里最主要的目的是让大家熟悉一下 columnt 的用法。

下面是单单使用 mount 命令的结果:

$ mount

/dev/root on / type ext3 (rw)
/proc on /proc type proc (rw)
/dev/mapper/lvmraid-home on /home type ext3 (rw,noatime)

而加了 column -t 命令后就成为这样了:

$ mount | column -t

/dev/root on / type ext3 (rw)
/proc on /proc type proc (rw)
/dev/mapper/lvmraid-home on /home type ext3 (rw,noatime)

另外你可加上列名称来改善输出结果

$ (echo “DEVICE – PATH – TYPE FLAGS” && mount) | column -t

DEVICE – PATH – TYPE FLAGS
/dev/root on / type ext3 (rw)
/proc on /proc type proc (rw)
/dev/mapper/lvmraid-home on /home type ext3 (rw,noatime)

列2和列4并不是很友好,我们可以用 awk 来再处理一下

$ (echo “DEVICE PATH TYPE FLAGS” && mount | awk ‘$2=$4=””;1′) | column -t

DEVICE PATH TYPE FLAGS
/dev/root / ext3 (rw)
/proc /proc proc (rw)
/dev/mapper/lvmraid-home /home ext3 (rw,noatime)

最后我们可以设置一个别名,为 nicemount

$ nicemount() { (echo “DEVICE PATH TYPE FLAGS” && mount | awk ‘$2=$4=””;1′) | column -t; }

试一下

$ nicemount

DEVICE PATH TYPE FLAGS
/dev/root / ext3 (rw)
/proc /proc proc (rw)
/dev/mapper/lvmraid-home /home ext3 (rw,noatime)

2. 运行前一个 Shell 命令,同时用 “bar” 替换掉命令行中的每一个 “foo”

!!:gs/foo/bar

!! 表示重复执行上一条命令,并用 :gs/foo/bar 进行替换操作。

关于 !! 这个用法在前一篇文章中已有详细的介绍。

3. 实时某个目录下查看最新改动过的文件

watch -d -n 1 ‘df; ls -FlAt /path’

在使用这条命令时你需要替换其中的 /path 部分,watch 是实时监控工具,-d 参数会高亮显示变化的区域,-n 1 参数表示刷新间隔为 1 秒。

df; ls -FlAt /path 运行了两条命令,df 是输出磁盘使用情况,ls -FlAt 则列出 /path 下面的所有文件。

ls -FlAt 的参数详解:

-F 在文件后面加一个文件符号表示文件类型,共有 */=>@| 这几种类型,* 表示可执行文件,/ 表示目录,= 表示接口( sockets) ,> 表示门, @ 表示符号链接, | 表示管道。
-l 以列表方式显示
-A 显示 . 和 ..
-t 根据时间排序文件

4. 通过 SSH 挂载远程主机上的文件夹

sshfs name@server:/path/to/folder /path/to/mount/point

这条命令可以让你通过 SSH 加载远程主机上的文件系统为本地磁盘,前提是你需要安装 FUSE 及 sshfs 这两个软件。

译者注:关于 sshfs 实际上我之前写过一篇文章介绍过,详见”在 Ubuntu 上使用 sshfs 映射远程 ssh 文件系统为本地磁盘“。

卸载的话使用 fusermount 命令:

fusermount -u /path/to/mount/point

5. 通过 DNS 来读取 Wikipedia 的词条

dig +short txt <keyword>.wp.dg.cx

这也许是最有趣的一条技巧了,David Leadbeater 创建了一个 DNS 服务器,通过它当你查询一个 TXT 记录类型时,会返回一条来自于 Wikipedia 的简短的词条文字,这是他的介绍

这里有一个样例,来查询 “hacker” 的含义:

$ dig +short txt hacker.wp.dg.cx

“Hacker may refer to: Hacker (computer security), someone involved
in computer security/insecurity, Hacker (programmer subculture), a
programmer subculture originating in the US academia in the 1960s,
which is nowadays mainly notable for the free software/” “open
source movement, Hacker (hobbyist), an enthusiastic home computer
hobbyist http://a.vu/w:Hacker

这里使用了 dig 命令,这是标准的用来查询 DNS 的系统管理工具,+short 参数是让其仅仅返回文字响应,txt 则是指定查询 TXT 记录类型。

更简单的做法是你可以为这个技巧创建一个别名:

wiki() { dig +short txt $1.wp.dg.cx; }

然后试试吧:

$ wiki hacker

“Hacker may refer to: Hacker (computer security), …”

如果你不想用 dig ,也可以用 host 命令:

host -t txt hacker.wp.dg.cx

6. 用 Wget 的递归方式下载整个网站

5ba166b1779b71_

参数解释:

– -random-wait 等待 0.5 到 1.5 秒的时间来进行下一次请求
-r 开启递归检索
-e robots=off 忽略 robots.txt
-U Mozilla 设置 User-Agent 头为 Mozilla

其它一些有用的参数:

– -limit-rate=20K 限制下载速度为 20K
-o logfile.txt 记录下载日志
-l 0 删除深度(默认为5)
–wait=1h 每下载一个文件后等待1小时

7. 复制最后使用的命令中的参数

ALT + . (or ESC + .)

这个快捷键只能工作于 shell 的 emacs 编辑模式,它可以从最后使用的命令行中复制参数到当前命令行中,下面是一个样例:

$ echo a b c
a b c

$ echo <Press ALT + .>
$ echo c

你可以重复执行该快捷键,以便获取自已需要的参数,

以下是样例:

$ echo 1 2 3
1 2 3
$ echo a b c
a b c

$ echo <Press ALT + .>
$ echo c

$ echo <Press ALT + .> again
$ echo 3

另外,假如你想指定第1个或第2个,或者是第 n 个参数的话,可以按 ALT + 1 (或 ESC + 1) 或 ALT + 2 (或 ESC +2) 这样形式的快捷键。

以下是样例:

$ echo a b c
a b c

$ echo <Press ALT + 1> <Press ALT + .>
$ echo a
a

$ echo <Press ALT + 2> <Press ALT + .>
$ echo b
b

查看” Emacs Editing Mode Keyboard Shortcuts “ 一文获取更多类似的快捷键。

8. 执行一条命令但不保存到 history 中

<space> command

这条命令可运行于最新的 Bash shell 里,在其它 shell 中没测试过。

通过在命令行前面添加一个空格,就可以阻止这条命令被保存到 bash history (~/.bash_history) 文件中,这个行为可以通过 $HISTIGNORE shell 变量来控制。我的设置是 HISTIGNORE=”&:[ ]*” ,表示不保存重复的命令到 history 中,并且不保存以空格开头的命令行。$HISTIGNORE 中的值以冒号分隔。

如果你对此感兴趣,想深入了解的话,可进一步看此文”The Definitive Guide to Bash Command Line History

9. 显示当前目录中所有子目录的大小

5ba166b1779b72_

– -max-depth=1 参数可以让 du 命令显示当前目录下 1 级子目录的统计信息,当然你也可以把 1 改为 2 ,进一步显示 2 级子目录的统计信息,可以灵活运用。而 -h 参数则是以 Mb 、G 这样的单位来显示大小。

译者注:在此推荐一个小工具 ncdu ,可以更方便的达到此效果。

10. 显示消耗内存最多的 10 个运行中的进程,以内存使用量排序

ps aux | sort -nk +4 | tail

显然这并不是最好的方法,但它确实用起还不错。

这是一个典型的管道应用,通过 ps aux 来输出到 sort 命令,并用 sort 排序列出 4 栏,再进一步转到 tail 命令,最终输出 10 行显示使用内存最多的进程情况。

假如想要发现哪个进程使用了大量内存的话,我通常会使用 htop 或 top 而非 ps 。

额外的:用 python 快速开启一个 SMTP 服务

python -m smtpd -n -c DebuggingServer localhost:1025

这是一个用 Python 标准库 smtpd (用 -m smtpd 指定) 实现在简易 SMTP 服务,运行于 1025 端口 。

另外三个参数的解释:

-n 参数让 Python 不要进行 setuid ( 改变用户)为 “nobody” ,也就是说直接用你的帐号来运行
-c DebuggingServer 参数是让 Python 运行时在屏幕上输出调试及运行信息
localhost:1025 参数则是让 Python 在本地的 1025 端口上开启 SMTP 服务

另外,假如你想让程序运行于标准的 25 的端口上的话,你必须使用 sudo 命令,因为只有 root 才能在 1-1024 端口上开启服务。如下:

sudo python -m smtpd -n -c DebuggingServer localhost:25

74 Comments

  1. 下载 says:

    来了留个小脚丫,呵呵

  2. very says:

    博客不错!

  3. pharmacist says:

    Valuable info. Lucky me I found your site by accident, I bookmarked it.

  4. CNA Training says:

    this post is very usefull thx!

  5. hagendorf insurance says:

    I am glad you said that!?

    Adolph

  6. middleman insurance says:

    The best thing I read all week.

  7. roclafamilia says:

    Helpful blog, bookmarked the website with hopes to read more!

  8. Speed Math says:

    Thanks…

    I hope you can continue to build a intelligent community here, I’ve quite loved the experience of reading your blog so far….

  9. A-Designs ATTY says:

    Great read, thanks for posting. Reading this blog is always a pleasure.

  10. Burton Haynes says:

    Hands down, Apple’s app store wins by a mile. It’s a huge selection of all sorts of apps vs a rather sad selection of a handful for Zune. Microsoft has plans, especially in the realm of games, but I’m not sure I’d want to bet on the future if this aspect is important to you. The iPod is a much better choice in that case.

  11. Dolly says:

    Nombre de flykobe.com a GoogleReader!

    Dolly

  12. cfnm says:

    I approve of the work you have achieved here. Most of the samples you have given is something most can associate to. Perhaps this will help me in my work.

  13. boy names says:

    Brilliant , i adore your webpage so much . It’s one of many finest document i’ve seen lately on the web . I agree with all the things you stated inside your post . You are among the most effective document writers i’ve witnessed so far . I’ll ship your weblog to some of my friends . Cheers once more for posting this excellent content with us .

  14. potenzmittel says:

    Hi, for some reason when I place your feed into google reader, it won?t work. Can you give me the RSS link just to be sure I?m using the most appropriate one?

  15. club penguin money maker says:

    Thank you for the article. I found it very interesting.

  16. noclegi says:

    I find myself coming to your blog more and more often to the point where my visits are almost daily now!

  17. escorts western massachusetts says:

    This is my problem…

    Amazingly website, I like how your website looks! The layout is great!…

  18. orchard bank says:

    I am gracious for this beneficial brilliant page; this may be the variety of subject that sustains me though out the day.We’ve normally heard been just lately needing near to in your web-site perfect soon after I observed about these from a shut good friend and was delighted when I was inside a place to acquire it adhering to wanting out for a while. Being a enthusiastic blogger, I’m pleased to view other people taking gumption and including for the neighborhood. I just needed to remark to exhibit my being familiar with for a upload since it is especially inviting, and lots of writers do not get the credit they ought to have. I’m positive I’ll be again once more and will send a handful of of my friends.

  19. federal grants says:

    My partner and I really enjoyed reading this blog post, I was just itching to know do you trade featured posts? I am always trying to find someone to make trades with and merely thought I would ask.

  20. Renadex Review says:

    How much is shipping to canada?

  21. Do-it Center says:

    Kudos from one brainiac to another. :)

  22. Link Building Services says:

    Kudos to you! This is a really good blog here and I love your style of writing. How did you get so good at blogging?

  23. Free Cash says:

    Thanks for the tips!…

    [..]Found another resource for PAID OFFERS on your site, Hope you don’t mind if I link to it.[..]…

  24. Deja Simpton says:

    I found your blog using Bing and I must say this is one of the most informative blogs I have read in a while. I will make sure I come back to read your future posts.

  25. x-ray technician says:

    Valuable info. Lucky me I found your site by accident, I bookmarked it.

  26. スピリチュアル says:

    Great Post!! Thank you very much!

  27. Bette Spiker says:

    Sick and tired of obtaining low numbers of useless traffic to your website? Well i want to share with you a fresh underground tactic that makes me personally $900 daily on 100% AUTOPILOT. I really could be here all day and going into detail but why dont you just check their site out? There is really a excellent video that explains everything. So if your serious about producing simple money this is the website for you. Auto Traffic Avalanche

  28. cna certification says:

    I tried loading this page with chrome, and it seems loads faster!

  29. orchard bank says:

    Thanks for discuss incredibly very good informations. Your net is fantastic, I am fascinated by the specifics which you have on this weblog. It reveals how well you appreciate this subject. Bookmarked this web page, will come back again for additional. You, my buddy, I identified just the material I currently looked all over the place and just couldn’t uncover. What a perfect web-site. Such as this website your web page is one particular of my new preferred.I like this data shown and it has given me some sort of inspiration to have accomplishment for some motive, so maintain up the fine work!

  30. Kami Chalkley says:

    If you like to read more about VPS than you should follow this link. http :// http://www.linuxvpsblog.com

  31. orchard bank says:

    Thank you quite a lot with this amazing great post; this is the selection of stage that produces me although out the day.We’ve constantly seen definitely already been looking all around in your web page just after When i discovered all of them from your close family friend and had been thrilled once i was a student in a position to locate this once having a a little while. Becoming a knowledgeable tumblr, I’m thrilled to watch many people acquiring transfer in addition to increasing on your neighborhood. I merely wished to viewpoint to demonstrate my thankfulness for your personal publish while it’s very pushing, many duplicate copy writers commonly do not have the credit worthiness they need to possess. More than likely I’ll come back again and can produce a few of my personal pals.

  32. greensmoke says:

    Beautiful site, though I would love to see some more media! – Great post anyway, Cheers!

  33. Hotel Ciudad Panama says:

    Thank you very much for your help, this site has been a great abatement from the books,

  34. Panama Hotel says:

    Thanks for the entertaining read! Alright playtime is over and back to school work.

  35. Melanie Ramos says:

    Greet post this will really help me!

  36. Compras Ciudad Panama says:

    I am emphatically bookmarking this page and sharing it with my friends that are looking to learn about SEO. You will be getting plenty of visitors to http://flykobe.com/index.php/2010/08/10/top-ten-one-liners-from-commandlinefu-explained from me!

  37. panafoto panama says:

    As a Newbie, I am always looking online for articles that can help me get further ahead.

  38. Audrea Posso says:

    Great work keep it coming, best blog on earth

  39. novey panamá says:

    You can tally me in for a Digg. Thanks for posting this on your web site!

  40. wendy says:

    wendy…

    excellent info, keep it coming…

  41. dancing says:

    Appreciate your inforamtion. It is just too greeeeat!

  42. natural weight loss pills says:

    Every time I stumble upon a great blog post I do one of three thing:1.Show it to the relevant contacts.2.save it in all my favorite bookmarking websites.3.Make sure to visit the same website where I came accross the article.After reading this article I am seriously thinking of going ahead and doing all of the above…

  43. El Panama Hotel says:

    Thank you for the intriguing read! Alright playtime is over and back to school work.

  44. El Panama Hotel says:

    The layout for your blog is a bit off in Galeon. Even So I like your web site. I may have to install a “normal” browser just to enjoy it. :)

  45. novey catalogo says:

    I just wanted to say that I found your site via Goolge and I am glad I did. Keep up the good work and I will make sure to bookmark you for when I have more free time away from the books. Thanks again!

  46. maria andros says:

    Thanks for the post, keep posting stuff

  47. orchard bank says:

    Undoubtedly agree with precisely what you said. Your own description was surely the lowest amount of intricate to know. I say to you, When i commonly get agitated anybody discuss aspects they obviously don’t be familiar with. You had been in a position to attack your claw for the scalp in addition to typed away almost everything with no side-effect. Possibly, individuals will get a signal. Will probably be here we are at acquire more. Appreciate it

  48. Juli Aleshire says:

    Practical information like this 1 must be kept and maintained so I’ll put this a single on my bookmark list! Many thanks for this fantastic submit and hoping to publish additional of this!

  49. Lavone Wohlschlegel says:

    Stop kidding with overcrowded shared hosting. Be smart guy and go on VPS.

  50. PTZ Camera says:

    An fascinating concept this. I’m 1 of those men and women whom tend to wait for things to mature prior to taking action but in this case I’m mindful that inaction leads to only failures so I will heed your comments and begin to do anything about it.

  51. Muebles Jamar Panamá says:

    It is nice to definitely dig up a blog where the blogger is . Thanks for creating your web site.

  52. Dusti Daugaard says:

    I genuinely like this angle that you have on the topic. Certainly wasn’t planning on this at the time I started browsing for tips. Your ideas was totally simple to understand. Happy to find out that there’s an individual here that obviously understands exactly what its is talking about.

  53. plaiptpoome says:

    The Lyford Cay Denomination serves as a community resource after ecumenical and Bahamian families. Lyford Cay University offers a enormous par Nursery entirely Luxurious Creed education. Help of a multi-cultural environment that promotes understanding amongst distinctive nationalities, students are provided with the opportunities and resources to ripen into cross-cultural learners and responsible citizens. Lyford Cay Seminary is an undecided, non-denominational, hour school. The coterie is a non-profit-making metaphysics ens governed before a Directorship of Directors.

    http://gapopimaxu.wordpress.com
    http://jubujomi.wordpress.com/
    http://katobuhoba.wordpress.com
    http://ivimen.wordpress.com

  54. Smokeless Cigarette says:

    I disagree with the overall premise of this post but I still think its pretty useful. I still really like your other posts. Keep up the great work.

  55. Home Insurance says:

    Really wonderful visual appeal on this website , I’d rate it 10 10.

  56. weight meal says:

    Good information, keep working man. I like your website. Cheers~~~~

  57. wireless router says:

    I absolutely adore reading your blog posts, the variety of writing is smashing.This blog as usual was educational, I have had to bookmark your site and subscribe to your feed in ifeed. Your theme looks lovely.

  58. Karoline Steins says:

    Good day website owner. I like your post about this article flykobe鐨勬妧鏈笌鐢熸椿鏉傝皥 » Blog Archive » Top Ten One-Liners from CommandLineFu Explained [zz]. But i own a issue around topic: Would you take a seperate posting software or do you publish your blogs within the wordpress admin? If you post your answer below mine, i will see this within the next couple of days.. Thanks

  59. Hair Accessories says:

    Strange this post is totaly unrelated to what I was searching google for, but it was listed on the first page. I guess your doing something right if Google likes you enough to put you on the first page of a non related search. :)

  60. steroids says:

    Thanks for this great website. I am trying to read some more posts but I cant get your website to display properly in my Opera Browser. Thanks again.

  61. Rex Malaney says:

    Superb blog post, I accept book apparent this internet website so alluringly I’ll see abundant added on this accountable in the accountable future!

  62. Slim Cleanse Reviews says:

    Will be credit card be charged more then once?

  63. nursing schools says:

    Finally, an issue that I am passionate about. I have looked for information of this caliber for the last several hours. Your site is greatly appreciated.

  64. Gift idea says:

    I love your site. It has been a real help for me as I deal with this subject. Thanks a lot.

  65. Miquel Ballesterous says:

    Hello. Fantastic job on http://flykobe.com/index.php/2010/08/10/top-ten-one-liners-from-commandlinefu-explained, if I wasn’t so busy with my school work I read your entire site to learn about SEO. Thanks!

  66. atlanta homes says:

    GREAT BLOG! You are one of the best writers I’ve seen in a long long time. I hope you keep writing because people like you inspire me!

  67. Gregory Balduf says:

    Good post:D I will take a decent amount of time to ponder your stuff.

  68. Marlana Power says:

    Its consistently great to learn guidelines such as you part targeted blog posting. As I only began posting remarks targeted blog and dealing with trouble as in lots of rejections. I think the suggestion would be useful for me. i’ll let you know if its function for me too.

  69. Luba Soliece says:

    You made some good points there. I did a search on the topic and found most people will consent with your website.

  70. debtconsolidationloans says:

    I just wanted to say that I found http://flykobe.com/index.php/2010/08/10/top-ten-one-liners-from-commandlinefu-explained via Goolge and I am glad I did as I am looking to learn as much as I can about SEO. Keep up the good work and I will make sure to bookmark you for when I have more free time away from the books. Thanks again!

  71. Visit Teton Valley says:

    Good read i think your website is fantastic with superb content which i like to add to my bookmarks.

  72. Carmen Fishburne says:

    It is great to see people that are so enthusiastic about this topic. I really loved reading it.

Leave a Reply