ls -lt 在 SFTP 中不起作用

ls -lt 在 SFTP 中不起作用

我登录 sftp:

sftp user@server

然后我运行:

ls -lt

我希望文件按日期排序。

sftp>  ls -lt *.csv
-rw-------    0 76547986 200       5073032 Mar 14 08:42 file1.csv
-rw-------    0 76547986 200       5073032 Mar 15 08:41 file2.csv
-rw-------    0 76547986 200       5073032 Mar 16 08:41 file3.csv
-rw-------    0 76547986 200       5072802 Mar 17 08:42 file4.csv
-rw-------    0 76547986 200       1117736 Sep 30 14:44 file5.csv
-rw-------    0 76547986 200       1120419 Oct  2 08:45 file6.csv
-rw-------    0 76547986 200       1119763 Oct  1 08:43 file7.csv
-rw-------    0 76547986 200       5073258 Mar 13 08:41 file8.csv

但事实并非如此。

这是 OpenSSH 的版本

OpenSSH_7.2p2 Ubuntu-4ubuntu2.1, OpenSSL 1.0.2g  1 Mar 2016

知道为什么 sftp 中的 ls 日期排序不起作用吗?

注意:ls -lt 在 sftp 服务器上的 bash 中有效,但不能通过 sftp 提示符。也许是 sftp 中存在错误?

答案1

如果ls参数包含掩码(并且掩码不与单个文件夹匹配),则所有排序标志都将被忽略。

注意缺少LS_*_SORT标志的使用do_globbed_ls功能

与非全局的相反do_ls_dir


我觉得这似乎是一个错误。因此我发布了一个错误报告:
sftp ls 命令忽略了全局列表的排序标志

自 OpenSSH 7.6 以来已包含修复。

相关内容