Насколько я понимаю этот вопрос, вы хотели бы создать вывод в формате CSV со списком файлов. Другую интерпретацию см. в конце этого ответа.
Вот сценарий оболочки, который сделает это. Он использует версию stat
для Linux, чтобы получить метку времени последней модификации.
#!/bin/sh
echo "PATHNAME,TIMESTAMP"
stat -c '"%n",%y' "$@"
После вывода заголовка этот сценарий просто вызывает stat
с путями, указанными в командной строке, чтобы получить метку времени последней модификации (см. руководство для stat
в вашей системе, чтобы выяснить, как изменить это ). Он печатает путь (в кавычках )и отметку времени.
Вы могли бы использовать это как
sh script.sh PATTERN >outputfile
Например:
$ sh script.sh *.log* *.tar >file.cvs
$ cat file.cvs
PATHNAME,TIMESTAMP
"dsmerror.log",2018-07-17 13:00:02.911711652 +0200
"dsminstr.log",2018-07-17 13:00:04.079726608 +0200
"dsminstr.log.bak",2018-05-13 18:00:03.231791181 +0200
"dsminstr.log.lock",2018-07-17 13:00:04.079726608 +0200
"archive_20170823-old.tar",2017-08-22 16:44:23.037803149 +0200
"archive_20170823.tar",2017-08-23 09:35:28.956158119 +0200
"archive_20180409.tar",2018-04-09 09:47:29.472374428 +0200
"archive-chr22.tar",2018-06-19 14:50:45.896447161 +0200
"gene_cache.tar",2018-04-25 09:44:15.518486626 +0200
Так как сценарий очень короткий, его команды могут быть написаны непосредственно в командной строке. Эквивалентная командная строка для приведенного выше примера будет
$ { echo "PATHNAME.TIMESTAMP"; stat -c '"%n",%y' *.log* *.tar; } >file.cvs
Теперь, когда у нас есть этот файл, мы можем захотеть отформатировать его для отчетов:
$ column -s, -t file.csv
PATHNAME TIMESTAMP
"dsmerror.log" 2018-07-17 13:00:02.911711652 +0200
"dsminstr.log" 2018-07-17 13:00:04.079726608 +0200
"dsminstr.log.bak" 2018-05-13 18:00:03.231791181 +0200
"dsminstr.log.lock" 2018-07-17 13:00:04.079726608 +0200
"archive_20170823-old.tar" 2017-08-22 16:44:23.037803149 +0200
"archive_20170823.tar" 2017-08-23 09:35:28.956158119 +0200
"archive_20180409.tar" 2018-04-09 09:47:29.472374428 +0200
"archive-chr22.tar" 2018-06-19 14:50:45.896447161 +0200
"gene_cache.tar" 2018-04-25 09:44:15.518486626 +0200
Это работает, если ни один из путей не содержит запятую.
Чтобы правильно отформатировать это с помощью парсера CSV, который также справится с путями, содержащими запятые:
$ csvlook file.csv
| PATHNAME | TIMESTAMP |
| ------------------------ | ----------------------------------- |
| dsmerror.log | 2018-07-17 13:00:02.911711652 +0200 |
| dsminstr.log | 2018-07-17 13:00:04.079726608 +0200 |
| dsminstr.log.bak | 2018-05-13 18:00:03.231791181 +0200 |
| dsminstr.log.lock | 2018-07-17 13:00:04.079726608 +0200 |
| archive_20170823-old.tar | 2017-08-22 16:44:23.037803149 +0200 |
| archive_20170823.tar | 2017-08-23 09:35:28.956158119 +0200 |
| archive_20180409.tar | 2018-04-09 09:47:29.472374428 +0200 |
| archive-chr22.tar | 2018-06-19 14:50:45.896447161 +0200 |
| gene_cache.tar | 2018-04-25 09:44:15.518486626 +0200 |
csvlook
является частью csvkit
, набора инструментов Python для работы с CSV-файлами.
Не может быть дополнительного загрузчика (или менеджера загрузки )с UEFI, так как сама прошивка играет роль загрузчика (по крайней мере для запуска какого-то другого загрузчика/менеджера загрузки ); большинство из тех, что я видел до сих пор, не имеют загрузочного менеджера («меню загрузки :...» )роль --или играют плохо.
Загрузочный загрузчик может загружать и запускать исполняемый файл следующего -этапа (другого загрузчика, менеджера загрузки, ядра или, например,. мемтест86 ); в случае UEFI SecureBoot он также несет ответственность за запуск перехватчиков проверки подписи двоичного файла в прошивке.
Менеджер загрузки может читать некоторые предварительно настроенные меню или сканировать доступные файловые системы и объекты загрузки (или делать и то, и другое, как refind делает ), чтобы представить пользователю меню на выбор из тех.
В «тривиальном» случае можно запустить ядро Linux, скомпилированное с CONFIG_EFI_STUB=y
и помещенное как \EFI\BOOT\bootx64.efi
в системный раздел FAT32 EFI системы x86 _64 непосредственно с помощью прошивки UEFI, хотя дистрибутивы, похоже, не поддерживают что вместо этого склоняюсь к grub2.
Артем дал вам почти правильную ссылку, та, которая вам действительно нужна, это отличная книга Рода Управление загрузчиками EFI для Linux :Основные принципы
PS :возможно, пригодится ALT Rescue:)