Linux 用户的 3 个命令行小技巧

开发
Linux世界充满了乐趣,我们越深入进去,就会发现越多有趣的事物。我们会努力给你提供一些小技巧,让你和其他人有所不同,下面就是我们准备的3个小技巧。

Linux世界充满了乐趣,我们越深入进去,就会发现越多有趣的事物。我们会努力给你提供一些小技巧,让你和其他人有所不同,下面就是我们准备的3个小技巧。

 

[[136893]]

1. 如何在不使用Cron的情况调度Linux下的任务

在Linux下,调度一个任务/命令称之为Cron。当我们需要调度一个任务时,我们会使用Cron,但你知道我们在不使用Cron的情况也可以调度一个在将来时间运行的任务吗?你可以按照如下建议操作……

每5秒钟运行一个命令(date)然后将结果写入到一个文件(data.txt)。为了实现这一点,我们可以直接在命令提示符运行如下单行脚本。

  1. $ while true; do date >> date.txt ; sleep 5 ; done &

上述脚本的解释:

  • while true :让脚本进入一个条件总为真的循环中,也就是制造一个死循环,将里边的命令一遍遍地重复运行。

  • dodowhile语句中的关键字,它之后的命令会被执行,在它后边可以放置一个或一系列命令。

  • date >> date.txt :运行date命令,并将其输出写入到data.txt文件中。注意我们使用>>,而不是>

  • >> :对文件(date.txt)进行追加写的操作,这样每次运行命令后,输出内容会被追加到文件中。如果使用>的话,则会一遍遍地覆盖之前的内容。

  • sleep 5 :让脚本处于5秒睡眠状态,然后再运行之后的命令。注意这里的时间单位只能用秒。也就是说如果你想让命令每6分钟运行一次,你应该使用sleep 360

  • donewhile循环语句块结束的标记。

  • & :将整个进程放到后台运行。

类似地,我们可以这样运行任何脚本。下边的例子是每100秒运行一个名为script_name.sh的脚本。

另外值得一提的是上面提到的脚本文件必须处于当前目录中,否则需要使用完整路径(/home/$USER/…/script_name.sh)。实现如上功能的单行脚本如下:

  1. $ while true; do /bin/sh script_name.sh ; sleep 100 ; done &

总结:上述的单行脚本并不是Cron的替代品,因为Cron工具支持众多选项,更加灵活,可定制性也更高。然而如果我们想运行某些测试,比如I/O评测,上述的单行脚本也管用。

还可以参考:Linux 下 11 个定时调度任务例子

2. 如何不使用clear命令清空终端的内容

你如何清空终端的内容?你可能会认为这是一个傻问题。好吧,大家都清楚可以使用clear命令。如果养成使用ctrl + l快捷键的习惯,我们会节省大量时间。

Ctrl + l快捷键的效果和clear命令一样。所以下一次你就可以使用ctrl + l来清空终端的内容了。

总结:因为ctrl + l是一个快捷键,我们不可以在脚本中使用。所以如果我们需要在脚本中清空屏幕内容,还是需要使用clear命令。但我能想到的所有其他情况,ctrl + l都更加有效。

3. 在其它目录运行一个命令,然后自动返回当前工作目录

这是一个很多人可能不知道的令人吃惊的技巧。你可能想在其它目录运行任何一个命令,然后再回到当前目录。要实现这样的目的,你只需要将命令放在一个圆括号里。

via: http://www.tecmint.com/useful-linux-hacks-commands/

作者:Avishek Kumar 译者:goreliu 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

来源:http://www.tecmint.com/useful-linux-hacks-commands/

责任编辑:王雪燕 来源: Linux中国
相关推荐

2022-06-12 15:32:27

bashLinux

2017-01-16 15:12:36

Linuxwatch命令命令

2017-08-30 19:11:38

Linux命令行tab

2015-05-25 10:40:22

Linux命令行技巧

2013-09-27 09:56:25

2009-12-23 14:14:09

Linux高级命令行

2017-09-05 08:57:02

Linux命令行技巧

2015-10-08 09:01:51

2011-03-01 09:17:34

Linux命令行

2009-07-31 18:43:55

linux vi命linux vi命令详添加行号

2013-09-10 10:34:49

PowerShell

2018-10-22 10:30:58

命令Fedora操作系统

2019-09-29 10:05:26

Linux命令行工具代码

2018-04-25 08:25:01

Linux命令行密码管理器

2020-12-20 17:34:50

Linux命令行终端

2015-09-29 16:03:43

2014-01-09 14:43:40

Linux用户命令行

2021-03-20 21:43:17

LibreOffice命令行开源

2018-03-14 14:27:00

2019-09-09 15:43:29

UnixLinux命令行
点赞
收藏

51CTO技术栈公众号