Creating new file" date > $HOME/testing fi else echo "sorry .you do not have a home directory" fi 第一个检查用-e比较来判断用户是否有...如过有,下一个-e比较会检查并判断testing文件是否存在与$home目录中。如果不存在,shell脚本会用单个大于号(输出重定向符号)来用date命令的输出创建一个新文件。...第二次运行这个shell脚本时,他会使用双大于号,这样他就能将date的输出追加到已经存在的文件后面。 '>'表示如果文件不存在 则创建文件,如果文件存在 则清空文件并输出。'...>>'表示 如果文件存在 则追加输出到文件后。 检查文件 -e比较适用于文件和目录。要确定指定的对象是个文件,必须用-f比较: #!...-r比较判断出我没有这个文件的读权限,所以test 命令失败了,而且bash shell 执行了if-then语句的else部分。 检查空文件 #!
文件准备 创建两个文件,分别为a.txt和b.txt,它们所含内容分别为: a.txt b.txt 1-wfhune2-chdamnsbchj3-uyr92fiubkqw5-cgvdnsb 2-djyv4...-dvcahsgdb5-wvchdfyt 普通用法,整行对比 命令 diff a.txt b.txt grep -f a.txt b.txt grep -vf a.txt b.txt 解释 比较两个文件...取两个文件中都有的行 取b文件中有,但a文件中没有的行 结果 1,4c1,3 2-djyv...> 4-dvcahsgdb 空 2-djyv4-dvcahsgdb5-wvchdfyt 高级用法,每行关键部分对比 回顾一下两个文件中的内容,格式都是 x-yyyy这种格式,我们认为x为键,yyyy为值...现在我们只想比较x,而不关心yyyy。 该怎么办呢?
比较两个文件内容的不同,主要有comm和diff两个命令。...comm 主要用法:comm file1.txt file2.txt 在comm比较之前需要对两个文件进行sort,可以输出在仅第一个文件里出现的、仅在第二个文件里出现的和两个文件共有的内容。...file2.txt # 第一个和第二个共有 comm -23 file1.txt file2.txt # 第一个特有 comm -13 file1.txt file2.txt # 第二个特有 也可以专门比较某两列或某几列...: comm -12 <(sort file1.txt | cut -f1) <(sort file1.txt | cut -f2.txt) # 这个只能在前台运行 diff diff可以直接输出比较结果...文件夹内容比较: diff -ruNa dir1/ dir2/
Linux下一个文件有三个主要的变动时间,mtime,ctime,atime: mtime(modification time):当文件的内容更改时,就会更新这个时间。...ctime(status time):当文件的状态被更改时,会更改这个时间,比如像文件的权限或者属性被更改时就会更改这个时间。...atime(access time):就是文件访问时间,当文件的内容被读取时就会更改这个时间。比如使用cat指令读取某个文件时,这个时间就会被更改。...有时候由于时区等问题,你的文件时间可能和标准时间不一致,这个时候就可以使用touch指令来修改文件时间。...这个指令会修改文件的三个时间,当文件不存在时会创建文件 touch -a 文件名 这个指令我使用man来查看时,上面说明只会修改文件的访问时间,但是在实际操作的时候发现除了mtime每变之外,atime
在 Windows 下,一个文件有创建时间、修改时间、访问时间。而在 Linux 下,一个文件也有三种时间,分别是访问时间(Access)、修改时间(Modify)、状态改变时间(Change)。...可以使用 stat 命令查看文件的访问时间、修改时间和状态改变时间。 很不幸,Linux 目前常见的文件系统是没有存储文件创建时间的,比如 ext3 就没有存储。...但是,如果文件创建后就没有修改过,修改时间=创建时间;如果文件创建后,状态就没有改变过,那么状态改变时间=创建时间;如果文件创建后,没有被读取过,那么访问时间=创建时间,当这个基本不太可能。...比如我们使用vi打开文件但不编辑,那么退出后文件的访问时间就会改变; 比如我们使用vi打开文件并且编辑后保存退出,那么文件的修改时间就会改变,当然访问时间也改变了; 再比如使用chmod +x给文件增加可执行的属性...,那么文件的状态改变时间就会改变。
微信图片_20200220133741.jpg 在我们进行系统运维的时候,会需要去查看系统下文件的一些时间属性,如创建时间、修改时间等,比如查看一个应用的配置文件的修改时间,用于初步判断该文件是否被篡改过...那么本文就针对Linux系统下的文件的时间属性来做一个介绍。 文件的时间属性 在Linux系统下,文件的时间属性主要分为三种: 访问时间 atime: 也就是Access time。...(实际操作中,出现过atime不变的情况) 利用时间属性的常见操作 结合find命令查找特定时间要求的文件,例如查询最近24小时内修改过的文件:find /data -mtime 24 ?...;并介绍借由ll命令查看文件的时间属性;再演示触发更新时间的几个命令的效果;分享利用时间属性的一般常见操作;最后提供时间属性的系统优化的操作给大家参考。...以上是本文对进行系统运维时,查看Linux系统下文件的时间属性的分享,希望对大家有帮助。 作者:何立
修改/etc/profile文件,在文件内容末尾加入 export TIME_STYLE=’+%Y-%m-%d %H:%M:%S’ 执行如下命令,使你修改后的/etc/profile文件配置内容生效 source
在windows下,一个文件有:创建时间、修改时间、访问时间。而在Linux下,一个文件也有三种时间,分别是:访问时间(Access)、修改时间(Modify)、状态改变时间(Change)。...使用stat命令查看文件的访问时间,修改时间和状态改变时间。 image.png 很不幸,Linux目前常见的文件系统是没有存储文件创建时间的,比如ext3就没有存储。...但是,如果文件创建后就没有修改过,修改时间=创建时间;如果文件创建后,状态就没有改变过,那么状态改变时间=创建时间;如果文件创建后,没有被读取过,那么访问时间=创建时间,这个基本不太可能。...比如我们使用vi打开文件并且编辑后保存退出,那么文件的修改时间就会改变,当然访问时间也改变了。 再比如使用chmod +x给文件增加可执行的属性,那么文件的状态改变时间就会改变。...---- 参考文献 [1]What file systems on Linux store the creation time?
a = '2017-10-18 22:17:46' b = '2017-10-19 22:17:40' print a > b # 结果False 解释:python中字符串的大小比较,是按照字符顺序,...从前往后依次比较字符的ASCII数值,例如‘abc’要小于‘abd’。...因此,时间字符串也可以直接比大小。
可以使用 DateTime 类型的 ToString 方法将时间转换为字符串,然后比较字符串是否相等来判断时间的各个部分是否发生了变化。.../// /// 上一个时间。 /// 当前时间。.../// /// 上一个时间。 /// 当前时间。.../// /// 上一个时间。 /// 当前时间。.../// /// 上一个时间。 /// 当前时间。
使用ll指令查看文件信息 [root@localhost urldata]# ll xsb90.txt -rw-rw-r--. 1 zabbix zabbix 1660151 8月 15 12:16...xsb90.txt 其中包含文件的最后修改时间,可以使用awk指令获取其中的修改时间 [root@localhost urldata]# ll xsb90.txt |awk '{print $6 "-..." $7 "-" $8 }' 8月-15-12:16 这种方式获取到的时间格式明显观赏性可用性都不强,还好linux提供了查看文件最后修改时间的指令 [root@localhost urldata]#...stat -c %Y xsb90.txt 1502770578 这种方式获取到的时间是时间戳(可以在这个网站将时间戳转换成日期格式的时间),拿到时间戳就好说了,可以通过各种语言的代码将时间戳转换成对应格式的时间
Linux下如果想要批量删除制定时间的文件,可以使用find命令: find /home -maxdepth 1 -type f -newermt "Nov 22" -print find命令查找.../home 目录下的十一月22日创建的类型是文件的该层文件并打印输出 -maxdepth 用于设置查找的最大层数,设置为1是不让递归查找 -type 制定查找的类型 -newermt 制定查找的时间...如果我们使用-delete参数则会删除制定时间的文件 find /home -maxdepth 1 -type f -newermt "Nov 22" -delete 还有其他一些参数,可以参见find
linux系统时间有两个,一个是硬件时间,即BIOS时间,就是我们进行CMOS设置时看到的时间,另一个是系统时间,是linux系统Kernel时间。...[root@linux-node ~]# hwclock --systohc或者 [root@linux-node ~]# clock --systohc 备注:以系统时间为基准,硬件时间找系统时间同步...但是通过tzselect命令设置TZ这个环境变量来选择的时区,需要将变量添加到.profile文件中。...二、修改配置文件来修改时区 [root@linux-node ~]# echo "ZONE=Asia/Shanghai" >> /etc/sysconfig/clock [root@linux-node...~]# rm -f /etc/localtime #链接到上海时区文件 [root@linux-node ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /
既然知道了如何在 Linux 系统中创建目录,接下来你可能会想在这些目录中创建一些文件,可以使用 touch 命令。...需要注意的是,touch 命令不光可以用来创建文件(当指定操作文件不存在时,该命令会在当前位置建立一个空文件),此命令更重要的功能是修改文件的时间参数(但当文件存在时,会修改此文件的时间参数)。...Linux 系统中,每个文件主要拥有 3 个时间参数(通过 stat 命令进行查看),分别是文件的访问时间、数据修改时间以及状态修改时间: 访问时间(Access Time,简称 atime):只要文件的内容被读取...可以看到,touch 命令可以只修改文件的访问时间,也可以只修改文件的数据修改时间,但是不能只修改文件的状态修改时间。...因为,不论是修改访问时间,还是修改文件的数据时间,对文件来讲,状态都会发生改变,即状态修改时间会随之改变(更新为操作当前文件的真正时间)。 【例 1】 touch 命令创建文件。
sdf.parse(sdf.format(new Date())); } catch (ParseException e) { e.printStackTrace(); } Java中日期时间比较...----比较日期时间 java中日期时间的比较要用到java.text.SimpleDateFormat 类和java.util.Date类compareTo方法,SimpleDateFormat...类用于时间日期格式化,将日期时间格式化为制定的格式,compareTo方法用于比较日期时间。...} 方法三: 比如:现在是2004-03-26 13:31:40 过去是:2004-01-02 11:30:24 我现在要获得两个日期差,差的形式为:XX天XX小时XX分XX秒 java计算时间差及比较时间大小...天”+hour1+”小时”+minute1+”分”+second1+”秒”); ==================================================== java 比较时间大小
第一种方法: ls -l|grep "^-"|wc -l ls -l 长列表输出该目录下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)。...如果ls -lR|grep "^-"|wc-l则可以连子目录下的文件一起统计。...grep ^- 这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d wc -l 统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件...,所以也就是文件的个数。...linux统计指定时间的文件总数 由于工作原因,需要统计某目录下atime时间大于365天的文件,google搜索之后,发现find命令异常强大。
时间属性介绍 Linux下一个文件通过stat命令可以查看到这个文件时间方面的属性,具体信息如下: # stat tengine-2.0.0-23tf4566.tar.gz File: 'tengine...: 在终端上用cat、more 、less、grep、sed、 cp 、file 一个文件时,此文件的Access的时间记录都会被更新(空文件例外),纯粹的access是不会影响modify和change...用ls -lu看到的文件时间是最近一次access的时间。...Modify 意思是更改(内容)or 写入: 当更改了一个文件的内容的时候,此文件的modify的时间记录会被更新。用ls -l看到的文件时间是最近一次modify的时间。...用ls -lc看到的文件时间是最近一次change的时间。
获取当前时间、秒级时间戳time.Now()// 获取当前时间,类型为time.Timetime.Unix()// 获取当前时间的秒级时间戳,时间戳的起始时间是2006-01-02 15:04:05,go...语言的诞生时间获取任意时间的秒级时间戳t.Unix()// 获取秒级时间戳时间、时间戳转换为字符串时间转时间字符串timeStr := time.Now().Format("2006-01-02")时间戳转时间字符串...:= time.Unix(t, 0).Format(timeTemplate1)字符串转时间对象方式一time.ParseInLocation()转换成本地时区的时间timeTemplate1 := "...)的比较Before, After, Equal,分别对应,==t1.Before(t2)// t1 t2t1.Equal(t2)// t1 ==...t2当前时间加1分钟time.ParseDuration()函数参数的有效时间单位为“ns”、“us”(或“µs”)、“ms”、“s”、“m”、“h”。
) 文件时间戳:最近一次被修改的时间 访问:access 修改:modity,文件内容发生改变 改变:changed,metadate、元数据(权限,大小等)发生改变 Linux...cache :缓存目录 /var/run :保存到下次引导前有效的关于系统的信息文件 /var/lib :系统正常运行时要改变的文件 Linux关机重启 shutdown命令格式: #...init :init定义了8个运行级别(runlevel),init 0为关机,init 1为重启 Linux日期时间管理 cal 显示日历 date 显示或设置日期和时间,命令格式: # date...touch 修改文件时间戳或创建空文件,命令格式 # touch [OPTION]......-c (--no-create):不创建空文件 -a -t :指定文件访问时间,时间格式为 [[CC]YY]MMDDhhmm[.ss] -m -t :指定文件修改时间 例:# touch
原理:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。...* * 缺点:桶排序需要尽量保证元素分散均匀,否则当所有数据集中在同一个桶中时,桶排序失效 * * 分析: * 时间复杂度: * 最好:...O(n+k) * 最坏:O(n^2) * 平均时间复杂度: O(n+k) * 空间复杂度: O(n+k) * 稳定性:稳定(其稳定性是根据桶内排序使用的算法) ...: * 最好:O(d*(n+r)) * 最坏:O(d*(n+r)) * 平均时间复杂度: O(d*(n+r)) * 空间复杂度: O(n+r) * 稳定性...(arr == null || arr.length < 2) return; // 第一种方法,这种方法实际上应该算是用了三次N循环完成排序,单是空间上会出现比较大的问题
领取专属 10元无门槛券
手把手带您无忧上云