Это вернет информацию о файле, которую вы можете получить из заголовка:
curl --head http://speedtest.newark.linode.com/100MB-newark.bin
Он вернется:
HTTP/1.1 200 OK
Server: nginx
Date: Sat, 28 Sep 2019 12:47:03 GMT
Content-Type: application/octet-stream
Content-Length: 104857600
Last-Modified: Thu, 01 Aug 2019 16:35:25 GMT
Connection: keep-alive
ETag: "5d4314cd-6400000"
Accept-Ranges: bytes
Если это то, что вам нужно, вы можете написать сценарий bash для создания файла таблицы/html с этой информацией.
Вы можете использовать это в таком скрипте:
#!/bin/sh
cat << EOF
<table>
<thead>
<tr>
<th>ver</th>
<th>link</th>
<th>modified</th>
<th>size</th>
</tr>
</thead>
<tbody>
EOF
$i=1
cat urls.list | while read url
do
file_info=$(curl -s --head "$url")
last_modified=$(echo "$file_info" | grep Last-Modified | cut -c16- | tr -d '\r\n')
content_length=$(echo "$file_info" | grep Content-Length | cut -c17- | tr -d '\r\n')
cat << EOF
<tr>
<td>1.0.$i</td>
<td><a href="$url">download</a></td>
<td>$last_modified</td>
<td>$content_length</td>
</tr>
EOF
let "i++"
done
cat << EOF
</tbody>
</table>
EOF
Вам необходимо создать файл с именем urls.list
, который должен содержать по одному URL-адресу в каждой строке. Вот так:
http://speedtest.newark.linode.com/100MB-newark.bin
http://speedtest.tokyo2.linode.com/100MB-tokyo2.bin
Запуск сценария приведет к такому результату:
<table>
<thead>
<tr>
<th>ver</th>
<th>link</th>
<th>modified</th>
<th>size</th>
</tr>
</thead>
<tbody>
<tr>
<td>1.0.1</td>
<td><a href="http://speedtest.newark.linode.com/100MB-newark.bin">download</a></td>
<td>Thu, 01 Aug 2019 16:35:25 GMT</td>
<td>104857600</td>
</tr>
</tbody>
</table>
Если вам нужно конкретное имя версии, вы можете сохранить его в файле списка с разделителем (, например.:version name|url
). И нужно будет немного изменить код. Теперь он просто следует порядку списка URL-адресов.
В алгоритме crypt
ограничение соли составляет 12 бит . Другие алгоритмы поддерживают более длинные соли; с openssl passwd
вы должны использовать -5
или -6
.
См. также Как найти алгоритм хеширования, используемый для хеширования паролей?
Алгоритм -crypt
для openssl passwd
является устаревшим алгоритмом, который больше не следует использовать. Это может быть грубо -принуждено при умеренных затратах . Это традиционный DES -основанный crypt()
алгоритм хеширования паролей , который был представлен в Seventh Edition Unix в 1979 году. 8 печатных символов ASCII. Это не имеет никакой практической ценности, кроме исторических целей или крайне устаревших (и небезопасных )систем.
Любой, кто использует его в примере кода, либо не понимает, о чем говорит, либо не заботится о том, чтобы дать хороший совет. Если вы видите openssl passwd -crypt
в примере чего-либо, кроме очень старого, унаследованного использования, бегите прочь.
Для хеширования пароля используйте в порядке предпочтения:
OpenSSL реализует только алгоритмы Unix(openssl passwd -5
или openssl passwd -6
, причем -5
немного быстрее на 32 -битных машинах, а -6
— на 64 -битных машинах ).
Ни в одном из них не используется смехотворно маленькая (по сегодняшним меркам )соль.
См. также В 2018 году какой хэш рекомендуется для хранения паролей :bcrypt, scrypt, Argon2?и Как безопасно хэшировать пароли? .