Список всех файлов, начинающихся с sh, sr, se, th, tr или te

У меня Debian Gnu/Linux. У меня он установлен уже несколько лет, и у меня установлено много-много пакетов. Я использую 13 ГБ из 20 ГБ раздела. У меня есть еще один раздел для/home(51GB/90GB ).

Я еще ничего не знал о LVM.

Я сделал несколько вещей, чтобы вещи не занимали слишком много места:

  • Я переместил виртуальную машину Microsoft Windows на внешний -жесткий диск, так как он был самым большим источником использования диска, хотя на нем было установлено всего несколько приложений.

  • Я создал каталог optна /homeи связал его с/opt(и то же самое для /usr/local. Я сделал это, чтобы эти файлы не были стерты при обновлении ОС (, но это также экономит место на /. Некоторый трюк можно проделать с некоторыми другими каталогами.

-2
06.10.2020, 10:19
1 ответ

Предполагая, что вы имели в виду имя файлов, а не их содержимое , должно начинаться с любой из этих строк, вы можете заставить свою оболочку сгенерировать имя файла и передать список в printf '%s\n'или ls -ldнапример:

ls -ld [sStT][hHrReE]*

[...]— это оператор оболочки, поддерживаемый большинством оболочек (, за исключением fish), который соответствует любому одиночному символу (или, возможно, элементу сопоставления в некоторых случаях )в указанный набор. Итак, здесь он хорошо подходит для этого конкретного набора строк. Но для произвольных наборов строк вам нужно переключиться на оболочку с более продвинутыми операторами подстановки, такими как zsh:

set -o extendedglob # needed for (#i) to set case insensitivity
ls -ld (#i)(foo|bar|[st][hre])*
2
18.03.2021, 22:59

Теги

Похожие вопросы