Linux学习——2016.10.8

来源:互联网 发布:网络招聘软件 编辑:程序博客网 时间:2024/04/28 14:28

Linux学习——2016.10.8
简要内容
ls命令,ctime & mtime & atime 以及 touch命令

ls

名称: ls – list directory contents
用法: ls [OPTION]… [FILE]…
常用选项:

  • -l 最常用的选项,显示详细信息(权限,所有者,修改时间等)
  • -h 自动格式化合适的大小 k,m,G 等,按照1k=1024
  • -si 同-l ,但是单位转换使用1000而不是1024
  • -F 在文件或者文件夹后面增加一些字符,eg 可执行文件后面加*,文件夹后面加/ 等
  • -a 显示所有选项 包括 ‘.’ ‘..’ ‘.开头的隐藏文件’
  • -A 同-A 不包括 ‘.’ ‘..’
  • –color[=WHEN] never | auto 颜色选项
  • -i 显示inode号
  • -S 按照大小排序
  • -r 倒序
  • -R 递归打印目录内容
  • -c 和lt一起,显示ctime,按ctime排序,和l,显示ctime
  • -t 使用修改时间排序
  • -u 和lt 一起用,使用访问时间排序,和l,显示访问时间

ctime & mtime & atime

Linux系统文件有三个主要的时间属性,分别是ctime(change time, 而不是create time), atime(access time), mtime(modify time)。

  1. ctime, 很多朋友把它理解成create time,实际上ctime是指change time。
  2. mtime, 就是modify time。mtime和ctime的区别在于,只有修改了文件的内容,才会更新文件的mtime,而对文件更名,修改文件的属主等操作,只会更新ctime。
  3. 举例说明: 对文件进行mv操作,mtime不变,ctime更新;编辑文件内容,mtime和ctime同时修改。touch操作,会同时修改mtime和ctime
  4. atime, 这个就是每次查看文件内容的时候会更新。比如cat操作,而ls操作是不会更新的
  5. 可以通过stat来查看文件的mtime,ctime,atime等属性,也可以通过ls命令来查看,具体如下:
    ls -lc filename 列出文件的 ctime
    ls -lu filename 列出文件的 atime
    ls -l filename 列出文件的 mtime

touch

名称:touch - change file timestamps
用法:touch [OPTION]… FILE…
常用选项:

  • -a 只改变atime
  • -c 不创建文件,touch一个不存在的文件会新建
  • -d 解析时间string作为变动时间,默认当前时间
  • -m 修改mtile
  • -t 使用指定格式时间
  • -r touch -r f1 f2 把f1的时间戳改成f2的

touch file,若file不存在则新建名为file的文件,ctime,mtime,atime均为当前时间,如果file存在,则把上述3个时间均改为当前时间,不想使用当前时间可以使用-d / -t。eg: touch -t 201610081530.50 file

0 0