方法一: Date 命令
在 Linux 中, 你可以通过 date 命令来更改系统的日期和时间:
# date --set=‘NEW_DATE’
其中 NEW_DATE 是诸如 “Sun, 28 Sep 2014 16:21:42” 或者 “2014-09-29 16:21:42” 的可读格式的日期字符串。
日期格式也可以手动指定以获得更精确的结果:
# date +FORMAT --set=‘NEW_DATE’
例如:
# date +’%Y%m%d %H%m’ --set=‘ 1518’
你也可以用相对的方式地增加或减少一定的天数,周数,月数和秒数,分钟数,小时数。 你也可以把日期和时间的参数放到一个命令中。
# date --set=‘+5 minutes’# date --set=‘-2 weeks’# date --set=‘+3 months’# date --set=‘-3 months +2 weeks -5 minutes’
最后, 把硬件时钟设置为当前系统时钟:
# hwclock --systohc
运行 hwclock --systohc 的目的是将硬件时钟同时钟同步, 这可以更正硬件时钟的系统漂移(即时钟按照一定的速度走快或走慢)。
另一方面, 如果硬件时钟是正确的, 但系统时钟有误, 可以用下面的命令更正:
# hwclock --hctosys
在两种情况下, hwclock 命令都是将两个时钟同步。 否则, 重启后时间会是错误的, 因为当电源关闭时硬件时钟会记忆时间。 然而, 这对于虚拟机器并不适用, 因为虚拟机器并不能访问硬件时钟。
方法二: NTP
另一种使系统日期和时间保持精确的方法是使用 NTP (网络时间协议)。 在 Linux 上, ntpdate 命令通过 NTP 将系统时钟和公共 NTP 服务器同步。
你可以使用如下命令来安装 ntpdate:
在 Debian 及基于 Debian 的发行版上:
# aptitude install ntpdate
在基于 Ret Hat 的发行版上:
# yum install ntpdate
使用 NTP 同步系统时钟:
# ntpdate -u 《NTP 服务器名或IP》# hwclock --systohc
除了一次性使用 ntpdate 来同步时钟, 你也可以使用 NTP 守护进程(ntpd), 它会始终在后台运行, 不断地通过 NTP 来调整系统时钟。
㈡ linux 默认时间格式问题请教。 越详细越好。
Linux 的时间内部是 timestemp 。这个时间输出是根据当前时区的设置进行输出,当前时区的设置文件是 /etc/localtime (如果我没记错)。就算你没设置时区,那么系统依然会有一个默认的时区进行输出。
系统默认有一个 localtime ,好像格式设置是英国表示法。时区没有,应该是 local 时间而不是 GMT 。
一个正确使用的 linux 专用机器,计算机时间一般是保存为格林威治标准时间,系统在输出时会根据 localtime 进行转换输出。
自定义默认日期应该是在输出时间时设置输出格式信息,而不是强行的去设置整个系统的环境。
因为这个设置只对考虑时区设置的输出格式的一些程序管用,在系统内部,依然是通用的 timestemp 存储。而且很多程序有自己独立的设置,尤其是在某些程序里面,他不同的情况下会进行不同的输出。比如 mysql ,非 timestemp 时间的存储用的是 ISO 标准格式,也就是 YYYY-MM-DD HH:mm:ss 的样子(如果还是我没记错),如果你需要格式要求,需要自己查询后或者查询时进行格式转换。
你正在一个错误的方向进行一个错误的折腾。
㈢ Linux哪个命令可以查看当前系统时间
题主你好,
最常用的命令是: date
=====
希望可以帮到题主, 欢迎追问.
㈣ linux命令获取进程运行时长,不足一小时,如何将时间输出为:时分秒格式。
使用 ps命令 ,命令执行参数及运行结果如下:
#ps -A -opid,stime,etime,args
结果:
root:src# ps -A -opid,stime,etime,args
PID STIME ELAPSED COMMAND
1 09:21 08:56:14 init [3]
2 09:21 08:56:14 [migration/0]
3 09:21 08:56:14 [ksoftirqd/0]
4 09:21 08:56:14 [watchdog/0]
5 09:21 08:56:14 [events/0]
6 09:21 08:56:14 [khelper]
7 09:21 08:56:14 [kthread]
10 09:21 08:56:14 [kblockd/0]
11 09:21 08:56:14 [kacpid]
47 09:21 08:56:14 [cqueue/0]
说明:PID指的是进程ID号,STIME即启动时间,ELAPSED 即运行时间。
㈤ linux如何设置服务器上的系统时间
date -s “20181121 17:34:00”
输入这条命令系统时间会设置为2018年11月21日17点39分。
修改之后你可以输入date命令查询当前时间。
(5)如何获取linux服务器时间格式扩展阅读:
1、桌面右上角齿轮按钮,点击System Settings。
㈥ 在LINUX下用C++编程,如何获取系统当前的时间。
//方案— 优点:仅使用C标准库;缺点:只能精确到秒级
#include <time.h>
#include <stdio.h>
int main( void )
{
time_t t = time(0);
char tmp[64];
strftime( tmp, sizeof(tmp), "%Y/%m/%d %X %A 本年第%j天 %z",localtime(&t) );
puts( tmp );
return 0;
}
size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);
根据格式字符串生成字符串。
struct tm *localtime(const time_t *timer);
取得当地时间,localtime获取的结果由结构tm返回
返回的字符串可以依下列的格式而定:
%a 星期几的缩写。Eg:Tue
%A 星期几的全名。 Eg: Tuesday
%b 月份名称的缩写。
%B 月份名称的全名。
%c 本地端日期时间较佳表示字符串。
%d 用数字表示本月的第几天 (范围为 00 至 31)。日期
%H 用 24 小时制数字表示小时数 (范围为 00 至 23)。
%I 用 12 小时制数字表示小时数 (范围为 01 至 12)。
%j 以数字表示当年度的第几天 (范围为 001 至 366)。
%m 月份的数字 (范围由 1 至 12)。
%M 分钟。
%p 以 ''AM'' 或 ''PM'' 表示本地端时间。
%S 秒数。
%U 数字表示为本年度的第几周,第一个星期由第一个周日开始。
%W 数字表示为本年度的第几周,第一个星期由第一个周一开始。
%w 用数字表示本周的第几天 ( 0 为周日)。
%x 不含时间的日期表示法。
%X 不含日期的时间表示法。 Eg: 15:26:30
%y 二位数字表示年份 (范围由 00 至 99)。
%Y 完整的年份数字表示,即四位数。 Eg:2008
%Z(%z) 时区或名称缩写。Eg:中国标准时间
%% % 字符。
//方案二 优点:能精确到毫秒级;缺点:使用了windows API
#include <windows.h>
#include <stdio.h>
int main( void )
{
SYSTEMTIME sys;
GetLocalTime( &sys );
printf( "%4d/%02d/%02d %02d:%02d:%02d.%03d 星期%1d\n",sys.wYear,sys.wMonth,sys.wDay,sys.wHour,sys.wMinute, sys.wSecond,sys.wMilliseconds,sys.wDayOfWeek);
return 0;
}
//方案三,优点:利用系统函数,还能修改系统时间
//此文件必须是c++文件
#include<stdlib.h>
#include<iostream>
using namespace std;
void main()
{
system("time");
}
//方案四,将当前时间折算为秒级,再通过相应的时间换算即可
//此文件必须是c++文件
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
time_t now_time;
now_time = time(NULL);
cout<<now_time;
return 0;
}
㈦ linux中,怎么通过shell语句获取当前日期,输出格式要求20111224.
在Linux下,可以通过date语句来获取当前日期:
输入:date +%Y%m%d
输出:20190314
命令实际执行情况如下图:
(7)如何获取linux服务器时间格式扩展阅读
GNU 对 date 命令的另一个扩展是 -d 选项,使用这个功能强大的选项,您可以完成很多有意义的工作。
1、快速地查明一个特定的日期究竟是星期几:
输入:date -d "nov 22"
输出:2019年 11月 22日 星期五 00:00:00 CST
在本示例中,您可以看到今年(2019年)的 11 月 22 日是星期五。
2、获得相对日期
-d 选项还可以告诉您,相对于当前日期之前或者以后的日期。
如,您需要了解两星期以后的日期,那么:
输入: date -d "2 weeks"
输出:2019年 03月 29日 星期五 00:12:24 CST
3、使用 next/last指令,您可以得到以后的星期几是哪一天:
输入: date -d "next monday" (下周一的日期)
输入: date -d next-day +%Y%m%d(明天的日期)或者:date -d tomorrow +%Y%m%d
输入: date -d last-day +%Y%m%d(昨天的日期) 或者:date -d yesterday +%Y%m%d
输入: date -d last-month +%Y%m(上个月是几月)
输入: date -d next-month +%Y%m(下个月是几月)
4、使用 ago 指令,您可以得到过去的日期:
输入: date -d "30 days ago" (30天前的日期)
5、您可以使用负数以得到相反的日期:
输入: date -d "dec 14 -2 weeks" (相对:dec 14这个日期的两周前的日期)
输入: date -d "-100 days" (100天以前的日期)
输入: date -d "50 days" (50天后的日期)
㈧ linux怎么查看当前系统时间
输入命令:date “+%Y-%m-%d %H:%M:%S”即可显示年月日、时分秒
㈨ 如何在linux下用shell获得以如2014-05-10格式显示的日期
使用命令 "date +%F" 。注意:加号前面有个空格。
㈩ 如何获取linux毫秒级的当前时间
24小时,就是相差一天,所以变化的只有天数。
我这里提供一个笨方法:
用date获取当前日期和时间,格式化成你的文件命名格式,用下面的字符串截取方法获得天数:
${varible:n1:n2}:截取变量varible从n1到n2之间的字符串
天数减1后,重新组织成新的字符串。
用循环比较 ls 出来的文件名与这个字符串。
代码试过后再放上来。