Вы можете использовать инструмент командной строки tasksel
для добавления и удаления различных наборов программного обеспечения и конфигураций, связанных с каждой разновидностью Ubuntu, эффективно «изменив вкус» вашей установки вместе с другими общими системными задачами. (Сервер OpenSSH., почтовый стек и т. д. ).
Установите его с помощью sudo apt install tasksel
.
Обязательно прочтите man tasksel
и обновите свои резервные копии до начала процедуры.
Чтобы получить первый файл в текущем каталоге, вы можете поместить расширение в массив и получить первый элемент:
files=(*)
echo "${files[0]}"
# OR
echo "$files" # since we are only concerned with the first element
Предполагая, что ваш текущий каталог содержит несколько каталогов, вы можете пройтись по циклу и получить первый файл вот так:
for dir in *; do
files=($dir/*)
echo "${files[0]}"
done
Вы можете просто использоватьhead
:
ls -1 | head -n1
foo.txt
Примечание :чтение Почему не разборls
(и что делать вместо )?
Почти это это ответь:
shopt -s nullglob
set -- *
printf "%s\n" "$1"
Чтобы получить имя обычного файла, который сортируется первым в каталоге, вы можете использовать
shopt -s nullglob dotglob
unset name
for name in some/path/*; do
[[ -f $name ]] && break
unset name
done
После этого цикла $name
будет либо именем обычного файла, который сортируется первым, либо пустой строкой, если в каталоге нет обычных файлов some/path
.
Используемые здесь параметры оболочки гарантируют, что цикл вообще не запустится, если шаблон не соответствует (nullglob
), и что мы также сопоставляем скрытые имена(dotglob
).
Вы получите первое имя, поскольку шаблоны подстановки имен файлов расширяются до лексикографически отсортированных списков.
Вы можете использовать printf для вывода только первого аргумента.
Внешний printf, который распознает \c
.
/bin/printf '%s\n\c' dir/*
Для отображения первого отсортированного (файла/каталога )в каталоге dir
. Если требуется pwd
, используйте ./*
.
Может быть полезно также установить параметры bash:
shopt -s nullglob dotglob
Чтобы избежать печати глобуса, когда нет совпадения файлов, и избежать файлов с точками -.