ls: add option to reverse the sort order
Now you can list directory contents ordered by mtime with the latest file displayed last in the output.
This commit is contained in:
parent
96c8c5f389
commit
3a3cd24092
3
ls.1
3
ls.1
@ -24,6 +24,9 @@ print the index number of each file.
|
||||
lists detailed information about each file, including their type, permissions,
|
||||
links, owner, group, size, and modification time.
|
||||
.TP
|
||||
.B \-r
|
||||
reverses the sort order.
|
||||
.TP
|
||||
.B \-t
|
||||
sorts files by modification time instead of by name.
|
||||
.TP
|
||||
|
8
ls.c
8
ls.c
@ -35,6 +35,7 @@ static bool iflag = false;
|
||||
static bool lflag = false;
|
||||
static bool tflag = false;
|
||||
static bool Uflag = false;
|
||||
static int sortorder = 1;
|
||||
static bool first = true;
|
||||
static bool many;
|
||||
|
||||
@ -63,6 +64,9 @@ main(int argc, char *argv[])
|
||||
case 'l':
|
||||
lflag = true;
|
||||
break;
|
||||
case 'r':
|
||||
sortorder = -1;
|
||||
break;
|
||||
case 't':
|
||||
tflag = true;
|
||||
break;
|
||||
@ -94,9 +98,9 @@ entcmp(const void *va, const void *vb)
|
||||
const Entry *a = va, *b = vb;
|
||||
|
||||
if(tflag)
|
||||
return b->mtime - a->mtime;
|
||||
return sortorder * (b->mtime - a->mtime);
|
||||
else
|
||||
return strcmp(a->name, b->name);
|
||||
return sortorder * (strcmp(a->name, b->name));
|
||||
}
|
||||
|
||||
void
|
||||
|
Loading…
Reference in New Issue
Block a user