linux at命令使用案例

linux at命令使用案例

摘要:用户使用linux at命令在指定时刻执行指定的命令序列。也就是说,该命令至少需要指定一个命令、一个执行时间才能够正常运行

标签:linux at命令 linux at命令详解 使用案例

Oracle帮您准确洞察各个物流环节

linux at命令

用户使用linux at命令在指定时刻执行指定的命令序列。也就是说,该命令至少需要指定一个命令、一个执行时间才能够正常运行。linux at命令能够只指定时间,也能够时间和日期一起指定。需要注意的是,指定时间有个系统判别问题。比如说:用户现在指定了一个执行时间:凌晨3:20,而发出linux at命令的时间是头天晚上的20:00,那么究竟是在哪一天执行该命令呢?假如用户在3:20以前仍然在工作,那么该命令将在这个时候完成;假如用户3:20以前就退出了工作状态,那么该命令将在第二天凌晨才得到执行。下面是linux

at命令的语法格式:

at [-V] [-q 队列] [-f 文档名] [-mldbv] 时间

at -c 作业 [作业...]

at允许使用一套相当复杂的指定时间的方法,实际上是将POSIX.2标准扩展了。他能够接受在当天的hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。当然也能够使用midnight(深夜),noon(中午),teatime(饮茶时间,一般是下午4点)等比较模糊的

词语来指定时间。用户还能够采用12小时计时制,即在时间后面加上AM(上午)或PM(下午)来说明是上午还是下午。

也能够指定命令执行的具体日期,指定格式为month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必须跟在指定时间的后面。

上面介绍的都是绝对计时法,其实还能够使用相对计时法,这对于安排不久就要执行的命令是很有好处的。指定格式为:now + count time-units ,now就是当前时间,time-units是时间单位,这里能够是minutes(分钟)、hours(小时)、days(天)、weeks(星期)。count是时间的数量,究竟是几天,还是几小时,等等。

更有一种计时方法就是直接使用today(今天)、tomorrow(明天)来指定完成命令的时间。下面通过一些例子来说明具体用法。

[例2] 指定在今天下午5:30执行某命令。假设现在时间是中午12:30,1999年2月24日,其命令格式如下:

at 5:30pm at 17:30

at 17:30 today

at now + 5 hours

at now + 300 minutes

at 17:30 24.2.99

at 17:30 2/24/99

at 17:30 Feb 24

以上这些命令表达的意义是完全相同的,所以在安排时间的时候完万能够根据个人喜好和具体情况自由选择。一般采用绝对时间的24小时计时法能够避免由于用户自己的疏忽造成计时错误的情况发生,例如上例能够写成:

at 17:30 2/24/99

这样很清楚,而且别人也看得懂。

对于linux at命令来说,需要定时执行的命令是从标准输入或使用-f选项指定的文档中读取并执行的。假如linux at命令是从一个使用su命令转换到用户shell中

执行的,那么当前用户被认为是执行用户,任何的错误和输出结果都会送给这个用户。但是假如有邮件送出的话,收到邮件的将是原来的用户,也就是登录时shell的任何者。

[例3]

$ at -f work 4pm + 3 days

在三天后下午4点执行文档work中的作业。

$ at -f work 10am Jul 31

在7月31日上午10点执行文档work中的作业。

在任何情况下,终极用户都能够使用这个命令。对于其他用户来说,是否能够使用就取决于两个文档:/etc/at.allow和/etc/at.deny。

假如/etc/at.allow文档存在的话,那么只有在其中列出的用户才能够使用linux at命令;假如该文档不存在,那么将检查/etc/at.deny文档

是否存在,在这个文档中列出的用户均不能使用该命令。假如两个文档都不存在,那么只有终极用户能够使用该命令;空的/etc/at.deny文档意味着所有的用户都能够使用该命令,这也是默认状态。 下面对命令中的参数进行说明。

-V 将标准版本号打印到标准错误中。

-q queue 使用指定的队列。队列名称是由单个字母组成,合法的队列名能够由a-z或A-Z。a队列是linux at命令的默认队列。

-m 作业结束后发送邮件给执行linux at命令的用户。

-f file 使用该选项将使命令从指定的file读取,而不是从标准输入读取。

-l atq命令的一个别名。该命令用于查看安排的作业序列,他将列出用户排在队列中的作业,假如是终极用户,则列出队列中的任何工作。

命令的语法格式如下:

atq [-V] [-q 队列] [-v]

-d atrm 命令的一个别名。该命令用于删除指定要执行的命令序列,语法格式如下:

atrm [-V] 作业 [作业...]

-c 将命令行上所列的作业送到标准输出。

[例4] 找出系统中任何以txt为后缀名的文档,并且进行打印。打印结束后给用户foxy发出邮件通知取件。指定时间为十二月二十五日凌晨两点。

首先键入:

$ at 2:00 12/25/99

然后系统出现at>提示符,等待用户输入进一步的信息,也就是需要执行的命令序列:

at> find / -name "*.txt"|lpr

at> echo "foxy:All texts have been printed.You can take them over.Good

day!River" |mail -s "job done" foxy

输入完每一行指令然后回车,任何指令序列输入完毕后,使用组合键结束linux at命令的输入。这时候屏幕将出现如下信息:

warning:command will be executed using /bin/sh.

job 1 at 1999-12-25 02:00

提醒用户将使用哪个shell来执行该命令序列。

实际上假如命令序列较长或经常被执行的时候,一般都采用将该序列写到一个文档中,然后将文档作为linux at命令的输入来处理。这样不容易出错。

[例5] 上面的例子能够修改如下:

将命令序列写入到文档/tmp/printjob,语句为:

$ at -f /tmp/printjob 2:00 12/25/99

这样一来,linux at命令将使用文档中的命令序列,屏幕显示如下:

Warning:command will be executed using /bin/sh.

job 2 at 1999-12-25 02:00

/sbin/service crond start //启动服务

/sbin/service crond stop //关闭服务

/sbin/service crond restart //重启服务

/sbin/service crond reload //重新载入配置

可以将这个服务在系统启动的时候也自动启动:

在/etc/rc.d/rc.local这个脚本的末尾加上:

/sbin/service crond start

以上是linux at命令的使用案例。

合集下载

Linux常用命令之查找命令find——细说-atime,-mtime,-ctime

Linux常用命令之查找命令find——细说-atime,-mtime,-ctime

Linux常⽤命令之查找命令find——细说-atime,-mtime,-ctime

我们知道 Linux⾥⾯⼀切皆⽂件 ,那么我们能否查看⼀个⽂件是何时创建的呢?答案是否定的。那我们可以知道些⽂件关于时间的什么信息呢?

那就不得不说⽂件状态的三个时间了,它们分别是 -atime, -ctime 和 -mtime。

先让我们来看⼀个Linux下的⽂件信息:

我们可以从中看到,关于时间的信息有三个:最近访问时间 access time (-atime)、最近更改时间 modify time (-mtime) 和 最近状态改动时

间 change time(-ctime),当然我们也看到了创建时间那⼀项为空⽩,也证实了Linux系统下是⽆法查看⽂件的创建时间的。

下⾯具体解释这三个时间:

atime : 它代表着最近⼀次访问⽂件的时间,显⽰⼀个⽂件的内容或者运⾏⼀个shell脚本会更新⽂件的atime。可⽤ls -lu命令查看。有⼀个要注意

的就是,在kernel版本2.6.30之前,linux的核⼼开发⼈员针对Ext3/Ext4⽂件系统的性能进⾏了讨论,其中包括atime。在kernel 2.6.30之前,⽂件系统

中默认会及时的更新atime,⽽在此之后的版本⾥,只有发⽣以下三种情况之⼀才会更新atime

1. 将分区mount的挂载的时候指定采⽤⾮relatime⽅式

2. atime⼩于ctime或者⼩于mtime的时候

3. 本次的access time和上次的atime超过24个⼩时

mtime : 它代表着最近⼀次⽂件内容被修改的时间。可⽤ls -l 命令查看。

ctime : 它代表着最近⼀次⽂件状态改变的时间 ,是status change time,是在写⼊⽂件、更改所有者、权限或链接设置时随 Inode 的内容更改⽽更

改,即⽂件状态最后⼀次被改变的时间。可⽤ls -lc 命令查看。

演⽰⼀下命令的运⾏结果:

炫酷的Linux终端命令大全

炫酷的Linux终端命令大全

炫酷的Linux终端命令大全

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。接下来是小编为大家收集的炫酷的Linux终端命令大全,希望能帮到大家。

炫酷的Linux终端命令大全

1.命令行日常系快捷键

如下的快捷方式非常有用,能够极大的提升你的工作效率:

CTRL + U -剪切光标前的内容

CTRL + K -剪切光标至行末的内容

CTRL + Y -粘贴

CTRL + E -移动光标到行末

CTRL + A -移动光标到行首

ALT + F -跳向下一个空格

ALT + B -跳回上一个空格

ALT + Backspace -删除前一个单词

CTRL + W -剪切光标后一个单词

Shift + Insert -向终端内粘贴文本

那么为了让上述内容更易理解来看下面的这行命令。

sudo apt-get intall programname如你所见,命令中存在拼写错误,为了正常执行需要把“intall”替换成“install”。

想象现在光标正在行末,我们有很多的方法将她退回单词install并替换它。

我可以按两次ALT+B这样光标就会在如下的位置(这里用指代光标的位置)。

sudo apt-get^intall programname现在你可以按两下方向键并将“s”插入到install中去了。

如果你想将浏览器中的文本复制到终端,可以使用快捷键"shift +

insert"。 2. SUDO !!

如果你还不知道这个命令,我觉得你应该好好感谢我,因为如果你不知道的话,那每次你在输入长串命令后看到“permission denied”后一定会痛苦不堪。

sudo !!

如何使用sudo 很简单。试想你刚输入了如下命令:

apt-get install ranger一定会出现“Permission denied”,除非你已经登录了足够高权限的账户。

linux开机自启动命令

linux开机自启动命令

linux开机自启动命令

用户想要在linux开机的时候自启动相关的程序。那我们要怎么设置呢?下面由店铺为大家整理了linux下开机自启动命令的相关知识,希望对大家有所帮助!

linux下开机自启动命令

1.开机启动时自动运行程序

Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。

例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。

扩展:其他情况下linux自启动程序命令

2.登录时自动运行程序

用户登录时,bash首先自动执行系统管理员建立的全局登录script :/etc/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、/.bash_login、 /.profile,但只执行最先找到的一个。

因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。

3.退出登录时自动运行程序

退出登录时,bash自动执行个人的退出登录脚本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。

4.定期自动运行程序

linux有一个称为crond的守护程序,主要功能是周期性地检查

/var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。 例如,建立文件crondFile,内容为"00 9 23 Jan *

linux下tail命令整理

linux下tail命令整理

Linux 下tail 命令整理

在linux系统中需要经常看各种程序的日志,经常用到的工具就是tail.

主要功能:显示每个指定文件的最后10 行到标准输出。

用法如下:

tail [选项]... [文件]...

-c, --bytes=K 输出最后K 字节;另外,使用-c +K 从每个文件的

第K 字节输出

-f, --follow[={name|descriptor}]

即时输出文件变化后追加的数据。

-f, --follow 等于--follow=descriptor

-F 即--follow=name --retry

-n, --lines=K output the last K lines, instead of the last 10;

or use -n +K to output lines starting with the Kth

--max-unchanged-stats=N

with --follow=name, reopen a FILE which has not

changed size after N (default 5) iterations

to see if it has been unlinked or renamed

(this is the usual case of rotated log files).

With inotify, this option is rarely useful.

--pid=PID 同 -f 一起使用,当 PID 所对应的进程死去后终止

-q, --quiet, --silent 不输出给出文件名的头

【IT专家】linux环境下pppd gprs拨号上网总结

【IT专家】linux环境下pppd gprs拨号上网总结

本文由我司收集整编,推荐下载,如有疑问,请与我司联系linux环境下pppd gprs拨号上网总结

2010/06/25 0 我们的gprs拨号上网已经做好了,当初做这个东西的时候对面

这方面的东西一点也不懂,好在网上很多前辈有自己的经验介绍,少走了不少冤枉

路。现在我也把自己GPRS拨号上网的东西总结下,如有错误请大家及时给我纠

正。

网上大部分的GPRS案例都是华为GTM900模块的,我们的拨号用的是中兴的

ME3000模块,模块对拨号程序是没有影响的。一个可以拨号上去另一个也可以

拨。

我先介绍下我参考主要资料:blog.chinaunix/u3/90973/showart_1998886.html博

客,我用的pppd拨号,我本身是要移植到达芬奇平台上面的,本人移植过程中没有

遇到什么问题,感觉移植很是方便。其他的我也没有怎么试。我推荐大家使用这个

拨号。

我建议大家实现GPRS拨号的不要一开始就在网上拷贝几个脚本直接运行,有可

能一下你就成功了,这是有可能的。但是你还是不知道GPRS到底是怎么实现拨号

的,建议大家先去看看拨号的原理和各个阶段分别实现什么功能,好好的阅读你的

拨号模块的说明文档,这对拨号成功后上网功能的实现是很有帮助的。

当你对拨号原理和模块的使用方法了解以后就可以开始实现拨号了。

我建议你分两步走,第一步可以在windows环境下实现这个拨号这个功能。这

里主要难点是使用GPRS模块在xP上面新建一个为模块拨号的modem。至于方法

你可以在网上找一下,这个功能我实现,但是具体的步骤我不记得了,如果实现成

功了电脑的链接速度就会显示171.2k,过程不难。这个过程可以让你了解GPRS拨号

的过程和一些at命令。

第二阶段可以在linux下面拨号了,我使用的pppd拨号主要是以下几个脚本:

第一个是拨号参数配置文件,其中最重的两个参数端口名称和波特率。我把我的参

数配置文件贴出来:

本文由我司收集整编,推荐下载,如有疑问,请与我司联系 #/etc/ppp/peers/gprs# This is pppd script for China Mobile, used Huawei GTM900-B

将Android平台的RIL层移植到基于LINUX的通用平台的研究与实现

将Android平台的RIL层移植到基于LINUX的通用平台的研究与实现

龙源期刊网

将Android平台的RIL层移植到基于LINUX的通用平台的研究与实现

作者:赵国强 彭大芹

来源:《电子世界》2013年第10期

【摘要】本文通过对Android RIL层代码分析,将android RIL层功能在纯LINUX平台上实现,完全脱离了Android系统。为基于LINUX的通用平台实现一套成熟的RIL层代码,并开发出相应的框架层,以便基于LINUX的平台能快速成熟的向3G网络发起相关业务。在OpenWrt系统上验证了移植后的RIL层代码正常工作。

【关键词】Android RIL;LINUX;移植;Parcel;验证

1.课题研究的背景和意义

1.1 Android RIL简介

Android RIL(Radio Interface Layer)提供了无线基带Modem与电话应用之间的抽象层。在Android RIL层中,完善的考虑了电话应用的各种情况,如:双SIM卡;电话,短信,彩信,PS DATA业务,PIN/PUK码等各种3G网络业务。

RIL层在Android系统中,处于硬件抽象层,运行在一个独立的守护进程中,主要为框架层和基带接口提供适配,具有良好的独立性。其中的通信机制,与框架层接口主要使用Socket通信,内部线程主要使用管道,与基带接口默认使用AT命令。且其代码均由C和C++来完成,依赖第三方库较少,所以,Android RIL层具有良好的移植性。

1.2 移植Android RIL的意义

目前很多基于LINUX平台的系统,如:PC(LINUX操作系统),QT,路由器平台(如OpenWrt系统)等等,都对连接3G网络有需求,但在这些平台原生的功能中,没有独立的RIL接口层,所以开发一套基于LINUX的独立应用,用来支持与基带发起各种3G网络相关业务是很有意义的。Android RIL具有良好的稳定性,独立性,以及对3G网络业务的完整性,所以将其移植成一个独立的,供LINUX通用平台使用的RIL层,可方便所有的基于LINUX的平台完成各种电话应用的开发。

linux,lsattr命令的作用和用法

linux,lsattr命令的作用和用法

lsattr命令是在Linux系统中用于显示和修改文件或目录的扩展属性(extended attributes)的工具。扩展属性是一种可以添加到文件或目录上的元数据,能够为文件或目录提供更多的信息。本文将详细介绍lsattr命令的作用和用法。

作为Linux系统下的一个工具命令,lsattr的主要作用是显示文件或目录的扩展属性。在使用lsattr命令时,可以通过特定的参数来指定显示的格式和目标文件或目录。下面我们一步一步地介绍如何使用lsattr命令。

一、显示文件或目录的扩展属性

要显示文件或目录的扩展属性,可以使用以下的命令格式:

lsattr [选项] [目标文件或目录]

1. 默认情况下,lsattr命令会以长格式显示目标文件或目录的扩展属性。例如,我们可以使用下面的命令来显示当前目录下所有文件和目录的扩展属性:

lsattr

2. 如果要显示指定文件或目录的扩展属性,可以在lsattr命令后面添加目标文件或目录的路径。例如,要显示文件“test.txt”的扩展属性,可以使用以下命令:

lsattr test.txt

3. 可以使用通配符来显示符合条件的文件或目录的扩展属性。例如,要显示以“.txt”结尾的所有文件的扩展属性,可以使用以下命令:

lsattr *.txt

4. 可以使用绝对路径或相对路径来指定目标文件或目录的位置。例如,要显示“/var/log”目录下所有文件和目录的扩展属性,可以使用以下命令:

lsattr /var/log

二、修改文件或目录的扩展属性

除了显示文件或目录的扩展属性,lsattr命令还可以用来修改文件或目录的扩展属性。要修改文件或目录的扩展属性,可以使用以下的命令格式:

chattr [选项] [扩展属性] [目标文件或目录]

1. 使用chattr命令修改文件或目录的扩展属性时,需要使用特定的选项来指定要修改的属性。以下是一些常用的选项:

Linux之19——Shell编程基础详解

Linux之19——Shell编程基础详解

第⼀部分:Linux Shell 简介

Shell 是⼀个⽤ C 语⾔编写的程序,它是⽤户使⽤ Linux 的桥梁。Shell 既是⼀种命令语⾔,⼜是⼀种程序设计语⾔。

Shell 是指⼀种应⽤程序,这个应⽤程序提供了⼀个界⾯,⽤户通过这个界⾯访问操作系统内核的服务。

Ken Thompson 的 sh 是第⼀种 Unix Shell,Windows Explorer 是⼀个典型的图形界⾯ Shell。

当⼀个⽤户登陆linux 系统后,系统就会为该⽤户创建⼀个shell程序。

Shell的版本:

Bourne Shell:是贝尔实验室开发的,unix普遍使⽤的shell,在编程⽅⾯⽐较优秀,但在⽤户交互⽅⾯没有其他shell优秀。

BASH:是GNU的Bourne Again Shell,是GNU操作系统上默认的shell,在bourne shell基础上增强了很多特性,如命令补全,命令历史表等等

Korn Shell:是对Bourne Shell 的发展,在⼤部分内容上与Bourne Shell兼容,集成了C Shell和Bourne shell优点。

C Shell:是SUN公司Shell的BSD版本,语法与c语⾔相似,⽐bourne shell 更适合编程

第⼆部分 shell 程序设计基础

2.1 shell输⼊输出

2.1.1 echo

echo命令可以显⽰⽂本⾏或变量取值,或者把字符串输⼊到⽂件中

格式: echo string

echo的常⽤功能:\c 不换⾏ \f 不进纸 \t 跳格 \n 换⾏

note:

对于linux系统,必须使⽤-e选项来使以上转义符⽣效

例:

$ echo -e "hello\tboy"

hello boy

echo命令对特殊字符敏感,如果要输出特殊字符,需要⽤\屏蔽其特殊含义。

常⽤的特殊字符:双引号"" 反引号`` 反斜线\

例:

$ echo "\"\"" //想输出""

linux put用法

linux put用法

摘要:

1.LinuxPUT命令简介

2.PUT命令的语法与参数

3.文件上传与下载实例

4.安全性与注意事项

正文:

Linux作为一款广泛应用于各类场景的操作系统,提供了众多实用的命令。PUT命令是其中之一,主要用于在本地计算机与远程服务器之间进行文件上传和下载。本文将详细介绍PUT命令的用法、实例以及注意事项。

1.Linux PUT命令简介

PUT命令是Linux中用于上传文件到远程服务器或下载文件从远程服务器的命令。与FTP客户端相比,PUT命令更加简洁、易用。通过PUT命令,用户可以直接将本地文件传输到远程服务器,或者从远程服务器下载文件到本地。

2.PUT命令的语法与参数

PUT命令的基本语法如下:

```

PUT hostname file

```

其中,`hostname`表示远程服务器的地址,`file`表示要传输的文件。 PUT命令支持以下参数:

- `-f` 强制覆盖已存在的文件。

- `-i` 交互式模式,在覆盖远程文件前询问用户。

- `-u` 仅在远程文件不存在时上传本地文件。

- `-m` 设置远程服务器的权限信息。

3.文件上传与下载实例

以下为几个PUT命令的实例:

上传文件:

```

put local_file remote_server_address

```

下载文件:

```

put remote_server_file local_file

```

使用交互式模式覆盖远程文件:

```

put -i remote_server_file local_file

```

4.安全性与注意事项

在使用PUT命令时,请注意以下事项:

- 确保您具有远程服务器上目标文件的访问权限。 - 尽量避免在公共场合使用PUT命令,以防泄露敏感数据。

- 使用SSH等加密传输协议,提高数据安全性。

- 在传输较大文件时,可使用分片传输功能,提高传输效率。

linux文件操作cat命令

cat命令是Linux操作系统中常用的一个命令,它可以用来查看文件内容、创建文件、合并文件等。以下是一些常见的cat命令的示例:

1. 查看文件内容:

cat filename.txt

这个命令可以用来查看filename.txt文件的内容。

2. 创建文件:

cat > filename.txt

这个命令可以用来创建一个新的filename.txt文件,并允许您在终端中输入文件内容。按下Ctrl + D结束输入。

3. 合并多个文件:

cat file1.txt file2.txt > combined.txt

这个命令将file1.txt和file2.txt的内容合并为一个新文件combined.txt。

4. 将文件内容追加到另一个文件:

cat file1.txt >> file2.txt

这个命令将file1.txt的内容追加到file2.txt的末尾。

5. 显示行号:

cat -n filename.txt

这个命令可以用来显示filename.txt文件的内容,并在每行前面显示行号。

6. 显示非打印字符:

cat -v filename.txt

这个命令可以用来显示filename.txt文件的内容,并将非打印字符显示为控制字符的可见表示形式。

这些示例只是cat命令的一部分用法,它还有更多的功能和选项可以使用。您可以在终端中输入man cat来查看更多关于cat命令的信息和用法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档