現在のディレクトリに10個のファイルがあるとします/home/usr
。その番号は1
-です10
。9
を除くすべてのファイルを削除するには10
どうすればよいですか?
次の手順で下の2つのファイルを選択できます
ls -l /home/usr/ | tail -2
しかし、この情報を使用して最後の2つを除くすべてのアイテムを削除するにはどうすればよいですか?つまり、1
- をどのように削除しますか8
?
何かを明確にしたい。ls -l
ファイル名に基づいて削除せずにファイルリストに基づいて削除したいと思います。その1
-10
文書は例です。特定の名前に関係なくファイルを削除しますls -l
。
ベストアンサー1
そしてzsh
:
echo rm -f /home/usr/*(n[1,-3])
echo
(満足すれば削除)
n
数字順に並べ替え(10以降2)[1,-3]
最初から3番目から最後まで選択してください。
(D
隠しファイルも考慮するには、glob修飾子を追加してください)