xiawenhao
V2EX  ›  macOS

macOS 命令行中如何列出当前目录下今天创建的文件,并按创建时间排序?

  •  
  •   xiawenhao · Apr 23, 2018 · 3504 views
    This topic created in 2982 days ago, the information mentioned may be changed or developed.
    11 replies    2018-04-26 04:49:04 +08:00
    xiaket
        1
    xiaket  
       Apr 23, 2018
    和问题无关,我自己命令行下输 ls 的肌肉记忆是 ls -lhtr
    jackietsui72
        2
    jackietsui72  
       Apr 23, 2018 via iPhone
    find / -ctime -1 | xargs ls -lht 这样子?
    hackpro
        3
    hackpro  
       Apr 23, 2018
    ls -lt
    my101du
        4
    my101du  
       Apr 23, 2018
    ll -rst
    geelaw
        5
    geelaw  
       Apr 23, 2018 via iPhone
    PowerShell 在 macOS 也是可用的,可以

    gci -file | ? creationtime -gt (get-date -h 0 -min 0 -s 0) | sort-object creationtime

    或者如果你要写一个重复使用的脚本

    Get-ChildItem -File | Where-Object -Property CreationTime -GT (Get-Date -Hour 0 -Minute 0 -Second 0) | Sort-Object -Property CreationTime

    管道末端输出的是排好序的文件信息对象。
    lululau
        6
    lululau  
       Apr 23, 2018   ❤️ 1
    ls *(mh-$(date '+%H')om)
    xiawenhao
        7
    xiawenhao  
    OP
       Apr 23, 2018
    @lululau 这就是我想要的,但是我看不懂,可以帮我讲解下思路吗?
    lululau
        8
    lululau  
       Apr 23, 2018   ❤️ 1
    在 zsh 中,一个 GLOB 的末尾加一对圆括号,圆括号内的内容叫 GLOB Qualifier,其中的:

    m[Mwhms][-|+]N 表示匹配 N 个月 /周 /小时 /分钟 /秒前的之前(加号) 或之后(减号)修改过其内容的文件
    o[nLlamc] 表示按文件名 /文件大小 /链接数 /最后访问时间 /文件内容最后修改时间 /文件状态最后时间的升序排序

    其他修饰符见:man zshexpn
    xiawenhao
        9
    xiawenhao  
    OP
       Apr 23, 2018 via Android
    @lululau 谢谢。
    TonyLiu2ca
        10
    TonyLiu2ca  
       Apr 24, 2018
    bash 下:ls -ltU
    quinoa42
        11
    quinoa42  
       Apr 26, 2018
    ls -Ult | ag "$(date +"%b %d")"
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4597 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 50ms · UTC 00:15 · PVG 08:15 · LAX 17:15 · JFK 20:15
    ♥ Do have faith in what you're doing.