Предположим, я удалю все файлы, кроме последнего
$ ls -l | sed "s/$USER/me/g" | nl
1 total 72
2 drwxrwxr-x 8 me me 4096 Oct 19 13:21 BackupAll
3 drwxrwxr-x 5 me me 4096 Oct 19 13:21 BookShelf
4 drwxrwxr-x 4 me me 4096 Oct 19 13:20 CodingEmacsModules
5 drwxrwxr-x 4 me me 4096 Oct 19 13:23 content
6 drwxrwxr-x 6 me me 4096 Oct 19 13:23 DataScienceRepo
7 drwxrwxr-x 9 me me 4096 Oct 19 13:24 English
8 drwxrwxr-x 3 me me 4096 Oct 19 13:23 FlaskProjs
9 drwxrwxr-x 3 me me 4096 Oct 19 13:21 iEnterprise
10 drwxrwxr-x 2 me me 4096 Oct 19 13:21 LibreOffice
11 drwxrwxr-x 10 me me 4096 Oct 19 13:23 MyLand
12 drwxrwxr-x 7 me me 4096 Oct 19 13:24 OrgMode
13 drwxrwxr-x 2 me me 4096 Oct 19 13:36 posts
14 drwxrwxr-x 4 me me 4096 Oct 19 19:54 primary.doom.d
15 drwxrwxr-x 15 me me 4096 Oct 19 13:24 Programs
16 drwxrwxr-x 2 me me 4096 Oct 19 13:21 Projects
17 drwxrwxr-x 16 me me 4096 Oct 19 13:24 PubRepo
18 drwxrwxr-x 11 me me 4096 Oct 19 13:23 quickstart
19 -rwxrwxr-x 1 me me 409 Oct 19 13:30 #utility_list.md#
Это можно сделать с помощью косвенного решения:
$ ls -l | sed "s/$USER/me/g" | head -18| while read line; do rm -rf $line; done
Как насчет, если не знать о числовых строкахпредыдущих команд.
Возможно ли получить все строки, кроме последней?