Питання виходу оболонки


0

Який вихід date -u +%W$(uname)|sha256sum|sed 's/\W//g'(на Arch Linux, якщо це має значення)?
Як я це дізнаюся?


Найкращий спосіб з’ясувати, що це запустити. Найкращий спосіб з’ясувати, чому це прочитати документацію трьох команд.
Жиль

4
Хоча, якщо ви справді ще не бачили команди раніше, можливо, буде краще спершу прочитати документацію . Не хочеться впадати в звичку просто виконувати будь-які команди, на які вони стикаються.
Стівен Д

Відповіді:


3
date -u %W

Відображає поточний тиждень року.

uname

Відображає ім'я ядра.

sha256sum

Генерація SHA-256 суми хешу.

sed 's/\W//g'

Вирізає всі несловні символи.

|«S перенаправляють висновок першої команди до додає команді.

Введіть рядок у терміналі, fe gnome-terminalабо xterm:

date -u +%W$(uname)|sha256sum|sed 's/\W//g'

Залежно від дати та встановленої операційної системи, це виводить різні хеші, наприклад, такі:

2aa4cb287b8a9314116f43b5e86d892d76a9589559aa69ed382e8f5dc493d955

2

1. Частина "уніме"

Щоб відповісти на перше питання, найважливішим є те, що unameбез параметра повертається в Arch Linux. Сторінка людей ніяк НЕ визначити, але uname Команда каже , що це еквівалентно uname -s:

-s Відображає ім'я системи. Цей прапор увімкнено за замовчуванням.

Бо -sна сторінці чоловіка написано "надрукувати ім'я ядра". На Arch Linux unameповертається

Linux

тоді як, наприклад, Cygwin uname повертає щось на зразок:

CYGWIN_NT-5.2-WOW64

2. Частина "дати"

date -u +%Wповертає номер тижня. Оскільки остання частина ("Linux") - це фіксована рядок, остаточний вихід залежить від того, на якому тижні буде запущено командний рядок (хеш обчислюється, наприклад, "07Linux"). За допомогою цих знань вихід може бути також обчислений на Cygwin.

3. Приклад

Кількість тижня для 2012-02-18 становить 7 і date -u +%W`uname`повертається (має провідний нуль, але це очікується для завдання, що знаходиться під рукою)

07Linux

а вихід з sha256sum ( хеш SHA-2 ) дорівнює:

4a65f65b40cc2b0a7aaa726e895d72425ede255021e2ce3e935dd2719e4d33b9

Для Cygwin його можна обчислити як:

echo '07Linux'|sha256sum|sed 's/\W//g'

(Це насправді спрацювало, коли я намагався зареєструватися в ArchWiki ...)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.