linux修改时间日期

linux修改时间日期
linux修改时间日期

linux修改时间和日期的方法

修改linux的时间可以使用date指令

修改日期:

时间设定成2009年5月10日的命令如下:

#date -s 05/10/2009

修改时间:

将系统时间设定成上午10点18分0秒的命令如下。

#date -s 10:18:00

修改时区:

找到相应的时区文件/usr/share/zoneinfo/Asia/Shanghai替换当前的/etc/localtime。

修改/etc/sysconfig/clock文件的内容为:

ZONE=”Asia/Shanghai”

UTC=false

ARC=false

同步bios时间:

同步BIOS时钟,强制把系统时间写入CMOS,命令如下:

#clock -w

date命令的功能是显示和设置系统日期和时间。

输入date 查看目前系统时间。

修改时间需要date -功能字符修改内容

命令中各选项的含义分别为:

-d datestr, --date datestr 显示由datestr描述的日期

-s datestr, --set datestr 设置datestr 描述的日期

-u, --universal 显示或设置通用时间

时间域

%H 小时(00..23)

%I 小时(01..12)

%k 小时(0..23)

%l 小时(1..12)

%M 分(00..59)

%p 显示出AM或PM

%r 时间(hh:mm:ss AM或PM),12小时

%s 从1970年1月1日00:00:00到目前经历的秒数

%S 秒(00..59)

%T 时间(24小时制)(hh:mm:ss)

%X 显示时间的格式(%H:%M:%S)

%Z 时区日期域

%a 星期几的简称(Sun..Sat)

%A 星期几的全称(Sunday..Saturday)

%b 月的简称(Jan..Dec)

%B 月的全称(January..December)

%c 日期和时间(Mon Nov 8 14:12:46 CST 1999)

%d 一个月的第几天(01..31)

%D 日期(mm/dd/yy)

%h 和%b选项相同

%j 一年的第几天(001..366)

%m 月(01..12)

%w 一个星期的第几天(0代表星期天)

%W 一年的第几个星期(00..53,星期一为第一天)

%x 显示日期的格式(mm/dd/yy)

%y 年的最后两个数字(1999则是99)

%Y 年(例如:1970,1996等)

需要特别说明的是,只有超级用户才能用date命令设置时间,一般用户只能用date命令显示时间。

例1:用指定的格式显示时间。

$ date '+This date now is =>%x ,time is now =>%X ,thank you !'

This date now is =>11/12/99 ,time is now =>17:53:01,thank you !

例2:用预定的格式显示当前的时间。

# date

Fri Nov 26 15:20:18 CST 1999

例3:设置时间为下午14点36分。

# date -s 14:36:00

Fri Nov 26 14:15:00 CST 1999

例4:设置时间为1999年11月28号。

# date -s 991128

Sun Nov 28 00:00:00 CST 1999

实例:设置时间伟2008年8月8号12:00

# date -s "2008-08-08 12:00:00"

修改完后,记得输入:clock -w

把系统时间写入CMOS

在Linuix 系统里面,系统时间由3个因素决定:硬件时间、UTC

(/etc/default/rcS)、Timezone。

/etc/default/rcS 里面的UTC选项,告诉Linux系统,这个硬件时间是否UTC时间。Timezone 是设定系统所处UTC时区(我现在用的是Asia/Shanghai)。

最后,系统启动时候读出硬件时间,再根据是否UTC时间、系统所处Timezone计算出系统localtime。下面是硬件时钟的时间。

DNAS:~# hwclock --show

Wed 03 Oct 2007 09:40:10 PM CST -0.169539 seconds

由于我已经在/etc/default/rcS 里面设置了UTC=no,告诉了系统,硬件时间并不是UTC时间。之后

系统时间就会根据以下两个文件决定时区了:

/etc/timezone

/etc/localtime

timezone 是一个文本文件,只需要把自己所处的时区写进去就可以了,我的是

Asia/shanghailocaltime直接从/usr/share/zoneinfo 把自己所处时区的文件做一个ln 过去就好了。

ln -sf /usr/share/zoneinfo/Asia/Shanghai

/etc/localtime

下面是date命令所返回的日期时间,这是已经计算过的了。

DNAS:~# date

Wed Oct 3 21:38:11 CST 2007

接下来就是关于系统时间、硬件时间同步问题了

在刚装好的系统里面,hwclock 这个命令是返回这样的错误的:

select() to /dev/rtc to wait for clock tick timed out

也就是说系统不能访问硬件时间(RTC),也许是因为自己的新型号机器BIOS的处理方式跟Linux 的老款RTC module之间有兼容问题。

有问题,换一个RTC module就是了。Linux的RTC module有下面三个rtc/genrtc/rtc_dev

modprobe

hwclock --show

rmmod

把三个module都试过,看哪个比较好用的。

然后修改/etc/modprobe.d/blacklist 把不好用的blacklist掉,/etc/modules 把好用的那个加上。我自己用的就是rtc_dev 这个module。

关于date/hwclock 命令的使用,man一下就有很详细了。

DOS下设置日期时间

一、DATA日期设置命令

功能:设置或显示系统日期。

类型:内部命令

格式:Date[mm-dd-yy]

使用说明:

(1)省略[mm-dd-yy]显示系统日期并提示输入新的日期,不修改则可直接按回车键,[mm-dd-yy]为“月月-日日-年年”格式;

(2)当机器开始启动时,有自动处理文件(AUTOEXEC.BAT)被执行,则系统不提示输入系统日期。否则,提示输入新日期和时间。

实例:

查看当前系统的日期,直接输入date即可。

二、TIME系统时钟设置命令

功能:设置或显示系统时期。

类型:内部命令

格式:TIME[hh:mm:ss:xx]

使用说明:

(1)省略[hh:mm:ss:xx],显示系统时间并提示输入新的时间,不修改则可直接按回车键,[hh:mm:ss:xx]为“小时:分钟:秒:百分之几秒”格式;

(2)当机器开始启动时,有自动处理文件(AUTOEXEC.BAT)被执行,则系统不提示输入系统日期。否则,提示输入新日期和时间

Linux系统操作员复习题

Linux操作员认证模拟 题 题目注销虚拟控制台的命令 答案 a 选项A [Ctrl]-[D] 选项B [Ctrl]-[C] 选项C [Ctrl]-[V] 选项D [Ctrl]-[A] 题目要关闭虚拟控制台时在shell 提示下键入()命令 答案 b 选项A quit 选项B exit 选项C halt 选项D close 题目哪个不是ls命令的选项()答案 c 选项A a 选项B l 选项C w 选项D r 题目与head命令相反的命令是()答案 b 选项A cat 选项B tail 选项C locate 选项D cd 题目下列哪一个命令是用来查找指定字串()答案 a 选项A grep 选项B clear 选项C tail 选项D ls 题目在字符界面环境下注销控制 台,可用() 答案 c 选项A exit或quit 选项B quit或ctrl+D 选项C exit或ctrl+D 选项D 以上都可 题目在RedHat Linux安装的界面 上,可选择的安装方式有() 答案 c 选项A 功能键安装与图形模式安装 选项B 功能键安装与文本模式安装 选项C 文本模式安装与图形模式安 装 选项D 题目使用命令chmod的数字设置, 可以改变() 答案 c 选项A 文件的访问特权 选项B 目录的访问特权 选项C 文件/目录的访问特权 选项D 题目主机通过局域网直接接入 Internet,应该配置() 答案 d 选项A IP地址 选项B 子网掩码 选项C 默认网关和DNS服务器的IP 地址 选项D 以上选项都是 题目RedHat Linux安装过程中, 如果以图形化模式安装可按( )键 答案 a 选项A 按回车键 选项B 输入:"linux text" 选项C 输入:"linux askmethod" 选项D 按:"F5" 题目RedHat Linux的安装过程 中磁盘分区选项中不包括() 答案 b 选项A 自动分区 选项B 选择分区 选项C Disk Druid来手工分区 选项D 题目安装程序提供了两个引导装 载程序() 答案 c 选项A GROUP和LLTO 选项B DIR和COID 选项C GRUB和LILO 选项D 题目命令cp与DOS下什么命令 等同() 答案 b 选项A CUP 选项B COPY 选项C CCP 选项D CORP 题目cat命令经常和什么命令搭配 答案 d 选项A much 选项B very 选项C easy 选项D more 题目cat命令是下面哪一个单词的 缩写() 答案 b 选项A CONT 选项B CONCATENATE 选项C COPY 选项D CID 题目clear命令的作用() 答案 a 选项A 清除终端窗口 选项B 关闭终端窗口 选项C 打开终端窗口 选项D 调整窗口大小 题目面那一组命令是用于压缩或 解压缩文件() 答案 b 选项A compress,uncompress 选项B gzip,gunzip 选项C ppt,ftp 选项D haccp,file 题目下面那一组命令是用于压缩 或解压缩数据() 答案 a

Linux服务器常用命令(简化版)

Linux服务器常用命令(简化版) 信息来源:网络整理:HY 日期:2011-5-27 Intel Fortran编译 Linux shell管道命令(pipe)使用及与shell重定向 Linux命令替换 Linux 任务控制(bg jobs fg nohup &) Linux进程查看 Linux账户管理 Linux系统与硬盘信息查询 Linux VIM语法高亮与程序段错误 Linux十大常用命令

Intel Fortran编译 完整编译顺序 $ ifort -c Hello.f90 -o Hello.o编译源文件(.f90)生成目标文件(.o) $ ifort Hello.o -o Hello链接目标文件生成可执行程序Hello $./Hello 执行可执行程序 默认(常用编译方法) $ ifort Hello.f90编译&链接 $./a.out 执行a.out(默认可执行程序名) 后台运行 $ ./a.out & 后台运行,退出shell会使程序停止,输出信息会显示在屏幕,不建议这样使用$nohup ./a.out & 输出到屏幕的信息输出到nohup.out文件 $nohup ./a.out > screen.txt & 输出到屏幕的信息输出到screen.txt文件(推荐) Linux shell管道命令(pipe)使用及与shell重定向 Ref:https://www.360docs.net/doc/5010232319.html,/chengmo/archive/2010/10/21/1856577.html 重定向 详细解释参考:https://www.360docs.net/doc/5010232319.html,/view/2173319.htm 在Linux命令行模式中,如果命令所需的输入不是来自键盘,而是来自指定的文件,这就是输入重定向。同理,命令的输出也可以不显示在屏幕上,而是写入到指定文件中,这就是输出重定向。 重定向分为: 重定向分为 输出重定向、输入重定向和错误重定向。 < 实现输入重定向。 >或>> 实现输出重定向,用户可以使用输出重定向把一个命令的输出重定向到一个文件 1)ls –l /etc>dir 将ls命令生成的/etc目录下的一个清单存到当前目录 中的dir文件,而不在屏幕输出。 2)ls –l /usr>>dir 将ls命令生成的/usr目录的一个清单以追加的方式存 到当前目录中的dir文件中。 重定向连接两个或多个文件? 使用cat命令并重定向输出到一个文件可以连接两个或多个文件。 重定向追加到一个文件:可以使用双重定向输出符号“>>”,保留文件以前的内容。 这种情况下,命令输出追加到另一个文件中。 重定向重定向标准输出到一个设备? 除了重定向一个命令的输出到一个文件,也可以把它重定向到一个设备,因为UNIX系统将设备当做文件。 $echo “Hello! I am petter!” > /dev/tty01 重定向标准输入? 使用“<”重定向输入。例如:用户已经创建好了一个文件letter。如果希望通过电子邮件发送给用户petter。可以使用下面方式:$mail petter < letter 重定向标准错误重定向? 没有专门的符号用于重定向stderr。我们可以同样使用“< ”或“>”符号,但需在它前面补一个数字2。 PS:重定向的优先级大于管道的优先级!^_^ 管道右边的命令只能对管道左边的命令的标准输出(输出到屏幕)起作用,不对错误输出(也输出到屏幕)起作用。 一个命令的执行首先决定0,1,2设备的定向,然后才执行命令,可以将定向理解为命令执行

linux 的系统时间和硬件时间查看修改

linux 的系统时间有时跟硬件时间是不同步的 Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟。系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。 Linux中的所有命令(包括函数)都是采用的系统时钟设置。在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只用一个就行,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。 1、date 查看系统时间 # date 设置系统时间 # date --set “07/07/06 10:19" (月/日/年时:分:秒) 2、hwclock/clock 查看硬件时间 # hwclock --show 或者# clock --show 设置硬件时间 # hwclock --set --date="07/07/06 10:19" (月/日/年时:分:秒) 或者# clock --set --date="07/07/06 10:19" (月/日/年时:分:秒) 3、硬件时间和系统时间的同步 按照前面的说法,重新启动系统,硬件时间会读取系统时间,实现同步,但是在不重新启动的时候,需要用hwclock或clock命令实现同步。 硬件时钟与系统时钟同步:# hwclock --hctosys(hc代表硬件时间,sys代表系统时间)或者# clock --hctosys 系统时钟和硬件时钟同步:# hwclock --systohc或者# clock --systohc

实验四 Linux输入输出管理

实验四、Linux输入输出管理 一、实验目的 通过实验理解Linux的标准输入输出设备,了解Linux的窗口管理器,体验Linux系统下的USB 存储设备管理,掌握Linux的输入输出重定向和管道操作。 二、实验内容与步骤 预习背景知识,理清相关概念。 1、熟悉GNOME 开机启动,登录Red Hat Linux系统; GNOME桌面最强大的功能就是能够自由配置,并且执行任务有多种方式。GNOME桌面的组件可共同使用。通常,可以用几种不同的方式执行相同的操作。例如,既可以从面板启动应用程序,也可以从菜单或桌面启动应用程序。 GNOME桌面包含专用的首选项工具。每一个工具控制GNOME桌面行为的一个特定部分。要启动首选项工具,请从“主菜单”中选择“首选项”。从子菜单中选择要配置的项目。 在GNOME环境中执行下面的步骤。 (1)练习使用GNOME面板 GNOME面板左下方有若干个图标。移动鼠标光标停留在这些图标上一到两秒钟, 可看到关于它们的操作提示。请将观察结果记录在表4-1中。 (2)显示面板主菜单 GNOME面板左端有一个带箭头的主菜单按钮。单击并记录主菜单标题,填入表4-2。 (3)打开和最小化/最大化一个视窗 单击面板上的文字处理器图标,打开一个文字处理视窗。在打开文字处理视窗之后,可以单击右上角的按钮选择最小化、最大化或者还原。 (4)改变视窗的大小 把鼠标光标移动到视窗的任何一边,可以看到一个箭头标志。当该标志出现的时候按下鼠标左键不放,然后拖动视窗的边界可以迸行缩放。 (5)移动视窗 单击视窗的标题栏保持不放。拖动视窗到一个新的位置。 (6)处理重叠视窗 在文字处理视窗打开的情况下,打开新的视窗会重叠或者覆盖住文字处理视窗。新打开的视窗现在成为前端视窗或者说是当前进程。为了把文字处理视窗从底层带到顶层来,可单击能够看见的视窗的任何部分。如果看不到,则可单击前面视窗的左上角符号,打开“窗口菜单”,从中选择需要的视窗。 (7)关闭视窗 单击视窗右上角“关闭窗口”按钮,可关闭当前视窗。 (8)处理工作区按钮 ●在工作空间1~4中分别打开不同的任务视窗。 ●单击各个工作区按钮,在4个视窗中切换。 ●关闭每一个视窗中正在运行的应用程序。 2、加载USB存储设备 USB存储设备可以通过终端命令加载。 (1)插人USB存储设备,稍过片刻,打开终端,输入: [root@localhost ~] # fdisk -1

MC52i作服务器用的命令和步骤

一、Configuration Commands配置命令 1、AT&F Set all current paramete rs to manufacturer defaults设置所有的当前参数到出厂设置 2、AT&V Display current configuration显示当前的配置 AT&V ACTIVE PROFILE: E1 Q0 V1 X4 &C1 &D2 &S0 \Q0 S0:000 S3:013 S4:010 S5:008 S6:000 S7:060 S8:000 S10:002 S18:000 +CBST: 7,0,1 +CRLP: 61,61,78,6 +CR: 0 +FCLASS: 0 +CRC: 0 +CMGF: 0 +CNMI: 0,0,0,0,1 +ILRR: 0 +IPR: 57600 +CMEE: 0 ^SMGO: 0,0 +CSMS: 0,1,1,1 ^SACM: 0,"000000","000000" ^SLCC: 0 ^SCKS: 0,1 +CREG: 0,1 +CLIP: 0,2 +CAOC: 0 +COPS: 0,0,"CHN-CUGSM" +CGSMS: 3 OK 3、AT&W Stores current configur ation to user defined profile存储当前的配置到用户定义的文件中

4、ATQ Result code presentation mode ATQ0 ATQ1 5、ATV Result code format mode ATV0 //第一行内容前没有回车和换行,但内容后有回车并换行了,//第二行返回码是用数据的行式,有回车,但没有换行 ATV1 //每行都有回车和换行,返回码是字符形式

Domino常用服务器命令

比较全的Domino常用服务器命令(包括邮件替换) Show Inetusers:展示当前服务器在线人数 tell amgr run "highcomoa/application/udf_fwgl.nsf" 'agent_sh' :通过命令直接在服务器上运行代理,代理属性需要设置为“数据库中所有文档” 刷新替换数据库设计 load convert mail\test.nsf * mail8.ntf :用lotus\domino\date目录下的mail8.ntf更新 lotus\domino\date目下mail文件夹中的test.nsf数据库。 load convert mail\*.nsf * mail8.ntf :用lotus\domino\date目录下的mail8.ntf更新 lotus\domino\date目下mail文件夹中的所有nsf数据库。 load convert -r mail\*.nsf * mail8.ntf :用lotus\domino\date目录下的mail8.ntf更新 lotus\domino\date目下mail文件夹中的test.nsf数据库,如果mail文件夹下有子文件夹,那么子文件夹里面的所有数据库也都会进行替换。 -------------------------------------------------------------------------- Broadcast message 向该服务器的用户广播消息 Broadcast message usernames 向该服务器的某一用户广播消息 Dbcache Flush 关闭当前在数据库高速缓存中打开的所有数据库。使用此命令可以在高速缓存中维护数据库,例如:备份或恢复数据库。 Drop username 关闭一个或多个服务器会话。如果希望亲眼确认哪些会话已被关闭,则必须在服务器的NOTES.INI 文件中输入 Log_Sessions=1 的设置。 Drop "username" 关闭在指定用户名下运行的当前会话 Drop " username1 " " username2 " 关闭在用户username1和username2下运行的会话Drop All 关闭所有服务器会话 Exit,queit或者q 关闭服务器,注:不能用远程控制台重起服务器 Hangup portname 挂断指定端口 Help 显示服务器命令列表,并附有每个命令的简短描述、参数(如果有的话)和正确的语法。 Load 启动服务器外接程序 Load Fixup 加载并运行Fixup 服务器任务

最新整理Linux系统修改时间用什么命令

L i n u x系统修改时间用什么命令 L i n u x中除了在控制面板手动设置时间外,还能用命令直接修改,如果熟悉命令的话,非常快,具体怎么操作呢。下面由学习啦小编为大家整理修改l i n u x时间的命令的相关知识,希望对大家有帮助! 修改l i n u x时间命令 我们一般使用d a t e-s命令来修改系统时间。比如将系统时间设定成1996年6月10日的命令如下。 #d a t e-s06/10/96 将系统时间设定成下午1点12分0秒的命令如下。 #d a t e-s13:12:00 注意,这里说的是系统时间,是l i n u x由操作系统维护的。 在系统启动时,L i n u x操作系统将时间从C M O S中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与C M O S时间的一致性, L i n u x 每隔一段时间会将系统时间写入C M O S。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行d a t e -s后,如果马上重起机器,修改时间就有可能没有被写入C M O S,这就是问题的原因。如果要确保修改生效可以

执行如下命令。 #h w c l o c k-w 这个命令强制把系统时间写入C M O S 相关阅读:L i n u x常用基本命令 文件名--t e s t m k d i r t e s t创建一个文件夹 m k d i r t e s t/t e s t1/t e s t2-p在创建t e s t1时候,继续创建t e s t2目录,一起创建 m v t e s t t e s t1修改文件名称 m v t e s t/位置复制文件到指定位置 c a t t e s t查看文件内容 u n z i p解压包解压当前文件 u n z i p解压包 -d/位置解压压缩包到指定位置 r m t e s t删除一个文件 r m-r f t e s t删除一个带文件或者文件夹的文件目录 c p t e s t t e s t1复制一个文件 c p-r t e s t t e s t1复制一个文件夹(包含文件夹下的文件) v i文件名修改文件内容

常用命令

服务器开始加电,等待片刻会自动引导操作系统,操作系统初始化完毕后会出现登录界面,输入正确的用户名:root和密码:zclroot就可以进入X 图形桌面环境了。 1.启动应用,数据库和数据交换 1).在数据库(SDB)机器上启动数据交换,在#号切到db2inst1用户: su –db2inst1 dbstart (启动数据库) 2)启动websphere:点击屏幕左下角的终端程序(贝壳状图标),然后在#后面输入 /opt/IBM/WebSphere/AppServer/bin/startServer.sh server1 提示进程号则表示启动成功,大约需要五分钟,注意:最后面是数字1不是字母l,server1前面有个空格,注意大小写字母 注:相应的停止websphere的命令为: #/opt/IBM/WebSphere/AppServer/bin/stopServer.sh server1 注意:如果在启动websphere的时候提示: ADMUO116I:正在文件 /opt/IBM/WebSphere/AppServer/bin/startServer.log 中记录工具信息 ADMUO128I:正在启动具有default概要文件的工具 ADMU3100I:正在从服务器读取配置:server1 ADMU3028I:在端口8880上检测到冲突。可能的原因:a) 已经有一个服务器server1的实例在运行b) 一些其他程序在使用端口8880 ADMU3027E:可能已经有一个服务器的实例在运行:server1

ADMU0111E:由于错误 Com.ibm.websphere.management.exception.AdminExcetption: ADMU3027E: 可能已经有一个服务器的实例在运行:server1 ,程序推出。 ADMU1211I:要获取故障的全部跟踪,使用–trace选项。 此时表示应用W ebsphere已经启动了,不需要再进行启动。 注意:如果在停止websphere的时候提示: ADMUO116I:正在文件 /opt/IBM/WebSphere/AppServer/bin/startServer.log 中记录工具信息 ADMUO128I:正在启动具有default概要文件的工具 ADMU3100I:正在从服务器读取配置:server1 ADMUO509I:无法到达 server “server1”.服务器看上去已经停止。 ADMUO211I:在文件 /opt/IBM/WebSphere/AppServer/bin/stopServer.log 中可以看到错误的信息 表示此时:应用W ebsphere现在处在停止状态,需要启动。 3)在数据库(SDB)机器上启动数据交换,在#号切到db2inst1用户: su –db2inst1 >cd server >showsjjh (查看数据交换,如果有四行表示数据交换已经启动。) > stopsjjh (停止数据交换) >showsjjh (查看数据交换,到没有命令行显示为止) >loadsjjh (启动数据交换) >showsjjh (查看数据交换信息) 出现如上四条信息为正常启动了数据交换 2.重启及开关机命令 #reboot重新启动计算机 #shutdown -r now 重新启动计算机,停止服务后重新启动计算机 #shutdown -h now 关闭计算机,停止服务后再关闭系统 #halt 关闭计算机,强制关闭 一般用shutdown -r now,在重启系统是关闭相关服务,shutdown -h now也是如此。 3.备份 #su –db2inst1 >db2 force applications all (切断目前所有与数据库的连接,可以多执行几次) >db2 backup db sino to /db2log (备份目录) 若备份成功会返回提示,并生成一个时间戳,所谓时间戳就是一串记录当前“年月日时分秒”的数字,形如20070212152930,也包含在新生成的备份文件的文件名里。 压缩命令 tar -cvfz sino20070317(压缩后的文件名).tar.gz 被压缩的文件名

Linux输入输出重定向的原理和实现

Linux I/O重定向的原理和实现 在Unix系统中,每个进程都有STDIN、STDOUT和STDERR这3种标准I/O,它们是程序最通用的输入输出方式。几乎所有语言都有相应的标准I/O函数,比如,C语言可以通过scanf从终端输入字符,通过printf向终端输出字符。熟悉Shell的朋友都知道,我们可以方便地对Shell命令进行I/O重定向,比如find -name "*.java" >testfile.txt 把当前目录下的Java文件列表重定向到testfile.txt。多数情况下,我们只需要了解I/O重定向的使用就够了,但是如果要编程实现类似Shell的I/O重定向以及管道功能,那么就需要清楚它的原理和实现。 下面本文就以Linux系统为具体例子,介绍I/O重定向的原理和实现(文中实验环境为Ubuntu 12.04,内核版本3.2.0-59)。 文件描述符表 理解I/O重定向的原理需要从Linux内核为进程所维护的关键数据结构入手。对Linux 进程来讲,每个打开的文件都是通过文件描述符(File Descriptor)来标识的,内核为每个进程维护了一个文件描述符表,这个表以FD为索引,再进一步指向文件的详细信息。在进程创建时,内核为进程默认创建了0、1、2三个特殊的FD,这就是STDIN、STDOUT和STDERR,如下图所示意: 所谓的I/O重定向也就是让已创建的FD指向其他文件。比如,下面是对STDOUT重定向到testfile.txt前后内核文件描述符表变化的示意图 重定向前:

重定向后: 在I/O重定向的过程中,不变的是FD 0/1/2代表STDIN/STDOUT/STDERR,变化的是文件描述符表中FD 0/1/2对应的具体文件,应用程序只关心前者。本质上这和接口的原理是相通的,通过一个间接层把功能的使用者和提供者解耦。 下面我们通过strace命令跟踪一下echo命令的系统调用: dagang@ubuntu12:~$ strace echo hello 2>&1 >/dev/null | grep write write(1, "hello\n", 6) = 6 我们可以看到write(1, "hello\n", 6) 这样一个系统调用,它的第一个参数1就是代表的STDOUT的FD,这说明对于echo程序,它只管(通过标准I/O函数从STDOUT)向FD 1写入,而不关心它们FD 1到底对应的是哪个文件。 Shell正是通过I/O重定向和管道这种特殊的文件把多个程序的STDIN和STDOUT串联在一起组成更复杂功能的,下面是Shell中通过管道的示意图: 下面我们用一个实际的例子来体验一下: dagang@ubuntu12:~$ sleep 30 | sleep 40 & [1] 5584 dagang@ubuntu12:~$ pgrep -l sleep 5583 sleep 5584 sleep dagang@ubuntu12:~$ ll /proc/5583/fd total 0 lrwx------ 1 dagang dagang 64 Feb 27 13:41 0 -> /dev/pts/3 l-wx------ 1 dagang dagang 64 Feb 27 13:41 1 -> pipe:[246469] lrwx------ 1 dagang dagang 64 Feb 27 13:41 2 -> /dev/pts/3 dagang@ubuntu12:~$ ll /proc/5584/fd

linux之修改时钟(rtc)

Linux下的时钟 ========================= 第一部分:时间设置 ========================= 我们一般使用“date -s”命令来修改系统时间(这里说的是系统时间,是linux由操作系统维护的) 将日期时间设置成2014年8月7日下午3点5分0秒可以用 #date -s "08/07/2014 15:05:00" #date -s "2014-08-07 15:05:00" 这里的格式是"MM/DD/YYYY hh:mm:ss" 或者 #date 080715052014.00 这里的格式是MMDDhhmmYYYY.ss (月日时分年.秒) 在系统启动时,Linux操作系统将时间从CMOS中读到系统时间变量中,以后修改时间通过修改系统时间实现。为了保持系统时间与CMOS时间的一致性,Linux每隔一段时间会将系统时间写入CMOS。由于该同步是每隔一段时间(大约是11分钟)进行的,在我们执行date -s后,如果马上重起机器,修改时间就有可能没有被写入CMOS,这就是问题的原因。如果要确保修改生效可以执行如下命令。 #hwclock -w 这个命令强制把系统时间写入CMOS,(等同于hwclock --systohc) linux提供两类的rtc兼容性很高的用户空间系统调用接口,如下所示: (1)/dev/rtc ... 这个RTC适合pc体系的系统,而并不适合非x86体系的系统 (2)/dev/rtc0,/dev/rtc1 ... 他们依赖一种架构,这种架构在所有的系统上被RTC 芯片广泛的支持。 程序员必须知道,PC/AT的功能不总是有效,其他的系统可能会有另外的实现。这种情况下,如果在相同的系统结构上使用同样的RTC API,那么硬件会有不同的反应。例如,不是每一个RTC都提供IRQ,所以这些不能处理报警中断;标准的PC系统RTC只能处理未来24小时以内的闹钟,而其他系统的RTC可能处理未来一个世纪的任何时间。 在文件系统修改将rtc0改成rtc1 Vi etc/udev/rules.d/local.conf 或者在启动开发板下 设置系统时间 date -s "2014-08-07 15:05:00"

网络常见DOS地9大命令,非常实用

网络常见的9大命令 1、ping命令 ping是个使用频率极高的实用程序,主要用于确定网络的连通性。这对确定网络是否正确连接,以及网络连接的状况十分有用。简单的说,ping就是一个测试程序,如果ping运行正确,大体上就可以排除网络访问层、网卡、Modem 的输入输出线路、电缆和路由器等存在的故障,从而缩小问题的围。 ping能够以毫秒为单位显示发送请求到返回应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络,连接速度比较快。ping还能显示TTL(Time To Live,生存时间)值,通过TTL值可以推算数据包通过了多少个路由器。 (1) 命令格式 ping 主机名 ping 域名 ping IP地址

如图所示,使用ping命令检查到IP地址210.43.16.17的计算机的连通性,该例为连接正常。共发送了四个测试数据包,正确接收到四个数据包。 (2) ping命令的基本应用 一般情况下,用户可以通过使用一系列ping命令来查找问题出在什么地方,或检验网络运行的情况。 下面就给出一个典型的检测次序及对应的可能故障: ① ping 127.0.0.1 如果测试成功,表明网卡、TCP/IP协议的安装、IP地址、子网掩码的设置正常。如果测试不成功,就表示TCP/IP的安装或设置存在有问题。 ② ping 本机IP地址

如果测试不成功,则表示本地配置或安装存在问题,应当对网络设备和通讯介质进行测试、检查并排除。 ③ ping局域网其他IP 如果测试成功,表明本地网络中的网卡和载体运行正确。但如果收到0个回送应答,那么表示子网掩码不正确或网卡配置错误或电缆系统有问题。 ④ ping 网关IP 这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够做出应答。 ⑤ ping 远程IP 如果收到正确应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP的DNS会有问题)。 ⑥ ping localhost local host是系统的网络保留名,它是127.0.0.1的别名,每台计算机都应该能够将该名字转换成该地址。否则,则表示主机文件(/Windows/host)中存在问题。 ⑦ ping ..(一个著名域名) 对此域名执行Ping命令,计算机必须先将域名转换成IP地址,通常是通过DNS 服务器。如果这里出现故障,则表示本机DNS服务器的IP地址配置不正确,或它所访问的DNS服务器有故障

Linux基础操作练习题

Linux基础操作练习题 姓名:古慧班级:09软件学号:20090300430117 二、问答题 1.使用什么命令在Linux文件系统的不同目录之间切换,如何显示当前所有的目录? 答:在Linux文件系统的不同目录之间切换的命令是cd, 显示当前所有的目录的命令是pwd。 2.使用什么命令列出当前目录中的文件和子目录名? 答:使用ls 命令将列出当前目录中的文件和子目录名。 使用dir或vdir命令也可以列出目录中的文件清单。使用上与ls命令类似。 3.使用什么命令把两个文件合并成一个文件? 答:cat命令可用来进行文件的合并、建立、覆盖或者添加内容等操作。 4.有哪些命令可用来查看文件的内容,这些命令有什么不同? 答:cat命令用来把文件内容显示到屏幕上,还用来进行文件的合并、建立、覆盖或者添加内容等操作。 more命令可以在浏览文件的时候前后翻页,在阅读长文本时特别有用。 less命令比more命令功能更强,是许多程序(比如man命令等)使用的缺省的阅读命令。less 的输出结果可以向前或向后翻页,但是 more 仅能向前 翻页。 head和tail命令用来阅读文件的开头或者结尾的部分。加上参数-n x 可以指定查看x 行。 5.新建、移动、删除和复制文件使用什么命令? 答:Cat、touch命令可用来建立文件。 rm命令可以用来删除文件和目录。 mv命令用于文件改名,也可以用来在文件系统内移动文件或者子目录。 cp命令用来对文件进行复制操作。 6. 新建、移动、删除和复制目录使用什么命令? 答:mkdir命令用于建立子目录。此命令可以一次建立多个子目录。 mv命令用于文件改名,也可以用来在文件系统内移动文件或者子目录。 rm命令可以用来删除文件和目录。 rmdir命令用来删除空子目录。 cp命令用来对子目录进行复制操作。 7.使用什么命令统计文件中的信息? 答:命令file用来确定文件的类型。使用此命令时,可以指定一个或多个文件名。 wc命令可以统计指定文件中的字节数、字数、行数, 并将统计结果显示在屏幕上。 8.标准输入和标准输出指什么?输出重定向和输入重定向指什么? 答:标准输入文件(stdin),通常对应终端的键盘; 标准输出文件(stdout),这个文件都对应终端的屏幕。 进程将从标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中。

Linux 操作系统查看服务器系统信息命令(linux系统)

Linux 操作系统查看服务器系统信息命令(linux 系统系统: # uname -a # 查看内核 /操作系统 /CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看 CPU 信息 # hostname # 查看计算机名 # lspci -tv # 列出所有 PCI 设备 # lsusb -tv # 列出所有 USB 设备 # lsmod # 列出加载的内核模块 # env # 查看环境变量 资源 : # free -m # 查看内存使用量和交换区使用量 # df -h # 查看各分区使用情况 # du -sh <目录名 > # 查看指定目录的大小 # grep MemTotal /proc/meminfo # 查看内存总量 # grep MemFree /proc/meminfo # 查看空闲内存量 # uptime # 查看系统运行时间、用户数、负载 # cat /proc/loadavg # 查看系统负载 磁盘和分区 :

# mount | column -t # 查看挂接的分区状态 # fdisk -l # 查看所有分区 # swapon -s # 查看所有交换分区 # hdparm -i /dev/hda # 查看磁盘参数 (仅适用于 IDE 设备 # dmesg | grep IDE # 查看启动时 IDE 设备检测状况 网络 : # ifconfig # 查看所有网络接口的属性 # iptables -L # 查看防火墙设置 # route -n # 查看路由表 # netstat -lntp # 查看所有监听端口 # netstat -antp # 查看所有已经建立的连接 # netstat -s # 查看网络统计信息 用户 : # w # 查看活动用户 # id <用户名 > # 查看指定用户信息 # last # 查看用户登录日志 # cut -d: -f1 /etc/passwd # 查看系统所有用户 # cut -d: -f1 /etc/group # 查看系统所有组 # crontab -l # 查看当前用户的计划任务

Linux系统调用_时间

asctime(将时间和日期以字符串格式表示) 相关函数 time,ctime,gmtime,localtime 表头文件 #include 定义函数 char * asctime(const struct tm * timeptr); 函数说明 asctime()将参数timeptr所指的tm结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为:“Wed Jun 30 21:49:08 1993\n” 返回值 若再调用相关的时间日期函数,此字符串可能会被破坏。此函数与ctime不同处在于传入的参数是不同的结构。 附加说明 返回一字符串表示目前当地的时间日期。 范例 #include main() { time_t timep; time (&timep); printf(“%s”,asctime(gmtime(&timep))); } 执行 Sat Oct 28 02:10:06 2000 ctime(将时间和日期以字符串格式表示) 相关函数 time,asctime,gmtime,localtime 表头文件 #include 定义函数 char *ctime(const time_t *timep); 函数说明 ctime()将参数timep所指的time_t结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果以字符串形态返回。此函数已经由时区转换成当地时间,字符串格式为“Wed Jun 30 21 :49 :08 1993\n”。若再调用相关的时间日期函数,此字符串可能会被破坏。返回值 返回一字符串表示目前当地的时间日期。 范例

我的世界服务器配置命令详解

基础插件(Essentials)命令 标记*为一般玩家常用命令(仅我服务器) [作弊]打开工作台 /wb [作弊]设置某人可以无限放置物品 /ul [作弊]生成一棵树 /tree [作弊]设置或显示时间 /time [作弊]修理手上或全部的物品 /repair [作弊]调整飞行速度 /speed [作弊]调整某个玩家的时间 /ptime [作弊]把手上的东西数量变成最大堆叠 /more [作弊]生成一个指定工具包 /kit [作弊]给你一个指定的物品 /item [作弊]治疗一个玩家 /heal *[作弊]戴一个帽子 /hat [作弊]上帝模式 /god [作弊]给某人某物品 /give [作弊]设置玩家游戏模式 /gamemode [作弊]飞行模式 /fly [作弊]把某人喂饱 /feed [作弊]给经验 /exp [作弊]附魔 /enchant [作弊]打烂眼前的方块 /break [作弊]生成一棵大树 /bigtree *[经济]显示某物品多少钱 /price [经济]指定某物品的价格 /setworth *[经济]出售指定数量的物品 /sell *[经济]转账给某个玩家 /pay [经济]显示玩家资产排名 /baltop [经济]给某个玩家指定数量的钱 /money [通用]显示玩家信息 /whois *[通用]自杀 /suicide [通用]更改刷怪笼刷出的怪 /spawner

[通用]检查玩家最后在线时间 /seen [通用]显示服务器规则 /rules [通用]显示昵称背后的真名 /realname *[通用]快速回复最后发信息给你的玩家 /r [通用]启动或关闭所有动力工具 /ptt [通用]应用一个命令给手中的物品 /pt [通用]改变你的显示名称(昵称) /nick [通用]列出你附近的玩家 /near *[通用]私聊 /t [通用]表情动作 /me [通用]收发邮件 /mail [通用]显示在线列表 /list [通用]显示物品数据 /itemdb [通用]查看服务器服务器信息 /info [通用]op命令帮助 /helpop *[通用]命令帮助 /help [通用]获取坐标 /getpos [通用]显示所在海拔 /depth [通用]显示所指方向 /compass [通用]设置离开状态 /afk [管理]设置天气 /weather [管理]隐身 /vanish [管理]解除禁止IP /unbanip [管理]接触禁止玩家 /unban [管理]入狱或出狱 /togglejail [管理]开关打雷 /thunder [管理]临时禁止指定玩家 /tempban [管理]允许某个其他玩家使用某命令 /sudo [管理]生成指定数量指定怪 /spawnmob [管理]显示其他玩家私聊 /socialspy [管理]设置新监狱 /setjail [管理]移除世界中的一个实体 /remove [管理]Pong! /ping

linux题库填空简答及标准答案

linux题库填空简答及答案

————————————————————————————————作者:————————————————————————————————日期:

二、填空题 26. 在Linux系统中,以_文件的_方式访问设备。 27. Linux内核引导时,从文件_/etc/fstad___中读取要加载的文件系统。 28. Linux文件系统中每个文件用__i节点_____来标识。 29. 某文件的权限为:d-rw-_r--_r--,用数值形式表示该权限644,该文件属性是目录。 30. 静态路由设定后,若网络拓扑结构发生变化,需由__系统管理员___修改路由的设置。 31. 网络管理的重要任务是:__控制___和_监控_______。 32. 安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区___ 和___交换分区________。 33. 编写的Shell程序运行前必须赋予该脚本文件__执行___权限。 二、填空题(每题2分,共20分) 1.安装Linux系统对硬盘分区时,必须有两种分区类型:Linux原始分区(根分区) 和Linux 交换分区。 2.在Linux的两种链接文件中,只能实现对文件链接的一种方式是:软链接(符号链接)。3.Linux主要采用了请求调页和写时复制 _两种动态内存管理技术实现了物理内存以On demand方式动态分配。 4.对于System V类型的共享内存页面,Linux基于__Clock____算法决定哪些页面应当被换出物理内存。 5.在Linux与中断相关的三个核心数据结构中,用做抽象的中断控制器的数据结构是_ hw_interrupt_type _____,它包含一系列处理中断控制器特有的操作。 6. 通过将_ request _____动态链入块设备控制结构blk_dev_struct,Linux设备管理器有 效的实现了物理设备和缓冲区之间的异步读写通讯。 7.将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现此任务的tar命令格式__tar czvf wang.tar.gz /home/stud1/wang____。 8.对于给定的文件file,统计其中所有包含字符串”WHU”的行数的一条命令是_grep WHU file | wc -l 9. 对于Shell脚本程序,若输入参数数量多于9个,则程序遍历每个参数可通过使用 __shift__命令实现。 10.在System V进程通讯方式中,ipc_perm结构描述对一个系统IPC对象的存取权限,而用于定位IPC对象的引用标志符key可以依据键值分成_公有____和___私有___两种类型。 二、填空题(每空1分,共20分) 1.在Linux2.4.0版本中,进程有 ___6___ 种状态,进程使用 __exit____ 系统调用后进入僵死状态。 2.在Linux 中,管道分为 __2____ 种类型,若创建或打开管道时获得的描述符存放在fd 中,则fd[1]是 _管道写描述符_ 。 3.Linux为用户提供的接口有 shell、XWINDOW、系统调用 4.Linux在I386体系结构中支持 __两级____分页机构。 5.每个设备文件名由主设备号和从设备号描述。第二块IDE硬盘的设备名为__hdb____,它上面的第三个主分区对应的文件名是 __hdb3____ 。 6. 超级块是描述 __文件系统属性____ 信息的数据结构,索引节点是描述 __文件属性____

相关文档
最新文档