![]() 在软件开发的世界中,作为web端程序猿打交道最多的操作系统相信就是Linux系统了吧。而对于Linux系统的使用,如果能掌握一些小技巧,在程序开发、调试的过程中,相信做事的效率也会有一些提升。下面就和大家分享3个Linux编程中用户命令行小技巧。 1. 如何在不使用Cron的情况调度Linux下的任务 所谓Cron,就是在Linux下调度一个任务/命令。通常我们调度任务时,我们都会使用到Cron,但其实在不适用Cron的情况下,也是可以调度任务的。 每5秒钟运行一个命令(date)然后将结果写入到一个文件(data.txt)。为了实现这一点,我们可以直接在命令提示符运行如下单行脚本。 $ while true; dodate >> date.txt ; sleep 5 ; done & 其中: while true :让脚本进入一个条件总为真的循环中,也就是制造一个死循环,将里边的命令一遍遍地重复运行。 do :do是while语句中的关键字,它之后的命令会被执行,在它后边可以放置一个或一系列命令。 date >>date.txt :运行date命令,并将其输出写入到data.txt文件中。注意我们使用>>,而不是>。 >> :对文件(date.txt)进行追加写的操作,这样每次运行命令后,输出内容会被追加到文件中。如果使用>的话,则会一遍遍地覆盖之前的内容。 sleep 5 :让脚本处于5秒睡眠状态,然后再运行之后的命令。注意这里的时间单位只能用秒。也就是说如果你想让命令每6分钟运行一次,你应该使用sleep360。 done :while循环语句块结束的标记。 & :将整个进程放到后台运行。 类似地,我们可以这样运行任何脚本。下边的例子是每100秒运行一个名为script_name.sh的脚本。 另外值得一提的是上面提到的脚本文件必须处于当前目录中,否则需要使用完整路径(/home/$USER/…/script_name.sh)。实现如上功能的单行脚本如下: $ while true; do/bin/sh script_name.sh ; sleep 100 ; done & 总结:上述的单行脚本并不是Cron的替代品,因为Cron工具支持众多选项,更加灵活,可定制性也更高。然而如果我们想运行某些测试,比如I/O评测,上述的单行脚本也管用。 2. 如何不使用clear命令实现终端内容的清空 通常我们在Linux上清空终端内容都是直接使用clear命令,但如果使用ctrl + l快捷键,我们将节省大量时间。因为ctrl + l是一个快捷键,不可以在脚本中使用,除了需要在脚本中清空屏幕内容必须使用clear命令外,其他清空内容的情况都可使用该快捷键。 3. 在其它目录运行一个命令,然后自动返回当前工作目录 在编程中,我们很多时候都想在其它目录运行一个命令,然后再回到当前目录,但是这往往又难以实现。其实要实现这个需求简单,只需要将命令放在一个圆括号里即可。 下面我们来举例说明一下: avi@deb:~$ (cd/home/avi/Downloads/) 示例输出: avi@deb:~ 它首先会cd到Downloads目录,然后又回到了之前的家目录。也许你认为里边的命令根本没有执行,或者是出了某种错误,因为从命令提示符看不出任何变化。让我们简单修改一下这个命令: avi@deb:~$ (cd/home/avi/Downloads/ && ls -l) 示例输出: -rw-r----- 1 avi avi 54272 May 3 18:37 text1.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text2.txt -rw-r----- 1 avi avi 54272 May 3 18:37 text3.txt avi@deb:~$ 在上述命令中,它首先进入Downloads目录,然后列出文件内容,最后又回到了当前目录。并且它证明了命令成功执行了。你可以在括号中包含任何命令,执行完都会顺利返回到当前目录。 以上就是Linux命令行的3个超实用小技巧,掌握并熟练使用它们,将使你在Linux系统上开发软件显得更专业、更事半功倍。 推荐学习:php开发实战教程 http://www.maiziedu.com/course/php/ 文章来源:code |
已抢187057个
抢已抢67495个
抢已抢353725个
抢已抢668381个
抢已抢123784个
抢已抢25936个
抢