Вывести «голливудскую хакерскую сцену» из оболочки


36

Это может показаться странным вопросом, но что бы вы использовали для создания типичной голливудской хакерской сцены?

Я получил этот запрос от друга, и мой мозг был пустым. Все, что я мог придумать, это все nmap-сцены из таких фильмов, как «Матрица» и так далее.

Но это должно быть сделано на Mac с OSX по умолчанию, который, я думаю, является разновидностью * nix, верно? У них нет доступа в интернет, поэтому о подготовке с использованием внешних инструментов не может быть и речи.

Я думал о том, чтобы записать на экран эквивалент / var / log / messages, возможно ...


21
Возьми любой пакет и сделай./configure && make
Алекс Б

Я думаю, что Алекс прав. Протестируйте несколько разных пакетов, так как вы, вероятно, не хотите, чтобы что-то компилировалось в течение нескольких минут
Джонни

8
Имейте ОГРОМНЫЙ баннер с надписью «DECODING», а затем под ним двенадцать барабанов в стиле игровых автоматов с различными персонажами, вращающимися вокруг и останавливающимися по одному за раз, оставляя вас со словарным словом в нижнем регистре.
DanBeale

2
Установите (если возможно) FSN или FSV. «Это система Unix. Я знаю это!»
DanBeale

Если никто не предложил, вы можете попробовать запустить cmatrixв окне терминала.
Боллован

Ответы:


34

Если вы спрашиваете, как выводить по одному символу на экран за один раз (обычно это «хакерский» стиль в голливудских фильмах), вам будет достаточно следующего сценария (он требует ввода от stdin ).

В bash:

#!/bin/bash

while IFS= read -r line; do
    length="${#line}"
    bol=1
    for (( offset = 0 ; offset < length ; offset++ )); do
        char="${line:offset:1}"
        printf '%s' "$char"
        if (( bol )) && [[ "$char" == " " ]]; then
            continue
        fi
        bol=0
        sleep 0.05
    done

    if (( length == 0 )); then
        sleep 0.$(( RANDOM % 3 + 2 ))
    else
        sleep 0.$(( RANDOM % 7 + 3 ))
    fi

    printf '\n'
done

Или более простая версия на C:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main(void) {
    char buf[1];
    int len;

    while ((len = read(STDIN_FILENO, buf, sizeof(buf))) > 0) {
        if (write(STDOUT_FILENO, buf, len) != len) {
            perror("write");
            return EXIT_FAILURE;
        }
        usleep(50000);
    }
    if (len != 0) {
        perror("read");
        return EXIT_FAILURE;
    }
    return EXIT_SUCCESS;
}

Если вы хотите использовать в dmesgкачестве ввода, например:

dmesg | hollywood

2
Добавление некоторых $RANDOMзадержек во времени также может быть забавным :-)
Стефан Гименес

1
Добавление шума модемной линии было бы еще лучше. Это может стать самым редактируемым постом на UL.
Тим Пост

1
Понятия не имею, что Тим подразумевает под шумом строки, но я бы реализовал это как изменение первого printfна printf '\b%s%c' "${_line:_offset:1}" $RANDOMи добавление printf '\b \b'перед вторым sleep.
manatwork

1
Хахахах Я только что запустил это с dmesg и чертовски смеялся! Пожалуйста, продолжайте обновлять это, это эпично.
n0pe

2
Это смешно. Определенно победитель за "хакерский" вывод ...
rmckenzie

14
export GREP_COLOR='1;32'; cat /dev/urandom | hexdump -C | grep --color=auto "ca fe"

Это (и другие команды от http://www.commandlinefu.com/commands/view/6663/pretend-to-be-busy-in-office-to-enjoy-a-cup-of-coffee ) также кажется очень взломать '' и сбить с толку большинство людей, которые смотрят на терминал в данный момент;)


6
Нет необходимости экспортировать GREP_COLOR, и вам не нужно использовать cat. Просто используйтеhexdump -C /dev/urandom | GREP_COLOR='1;32' grep --color=auto 'ca fe'
Крис Даун

+1000 Это отличный ответ!

6
  1. Используйте Compiz с такими вещами, как Wall, Expose, частично прозрачные окна и т. Д.
  2. Используйте tcpdump как минимум на одном экране.
  3. Используйте IRC и Irssi, чтобы поговорить с другими «хакерами» на другом экране.
  4. Скомпилируйте ядро. Вам не нужно устанавливать его, просто скомпилируйте его, создайте модули, а затем начните заново, очистив скомпилированные объекты и перезапустив компиляцию. используйте цвет GCC для усиления эффекта.
  5. Загрузите OpenBSD на одном экране, для этого вы можете использовать виртуальную машину, если у вас нет запасной машины.
  6. Построчная печать dmesg .
  7. Откройте несколько файлов исходного кода в Gvim и используйте цветовую схему Кобальда или мою .
  8. Измените xscreensaver «люминофор» и запустите его в окне. Он может печатать вещи символ за символом. Я использовал это пару раз для визуального эффекта.
  9. Используйте mplayer с aalib или cacalib. Существует матричный фильтр, но это может показаться дешевым грабежом.
  10. Я предлагаю использовать zsh с цветным выводом ls (dircolor), а также красивую оболочку.

4

Как насчет этой установки для голливудской хакерской установки?

  • Не используйте менеджер окон, который выглядит как Windows или Mac, все остальные выглядят хакерскими, так как нормальный парень не знает, что это такое.
  • Выберите некоторые действительно серые цвета для терминала, такие как «янтарь на черном» или «зеленый на черном».
  • Имейте hexdump от случайного (как Веслав Герр описал ) работает в окне на заднем плане.
  • Есть что-то, похожее на журнал, запущенное в другом окне, может быть, tcpdump, который почти удобен для чтения человеком.
  • и т. д.

Это должно быть хорошим поддельным началом.


4

Я должен был сделать это несколько месяцев назад. Я просто выстрелил "найти /", и этого было достаточно.


3

Вы можете использовать

pv /var/log/messages -qL 100

Запуск man pvдает следующие определения qи Lфлаги.

-q, --quiet - Нет вывода. Полезно, если опция -L используется сама по себе, чтобы просто ограничить скорость передачи канала.

-L RATE, --rate-limit RATE - Ограничить передачу максимумом байтов RATE в секунду. Для обозначения килобайт (* 1024), мегабайт и т. Д. Можно добавить суффикс «k», «m», «g» или «t».

100это число байт / сек

PS отличная защита малышей (убедитесь, что вы не в оконном режиме ALT+ CTRL+ F2лучше работает таким образом)

РЕДАКТИРОВАТЬ


Почему вы используете lessвообще? Просто перенаправьте файл в pv.
Крис Даун

Упс, слишком часто, я использую, man rsyncя смоделировал это для вопроса. Исправление ..
Whoami

Некоторые специалисты pvпо поиску в Google предполагают, что это не доступно по умолчанию на Mac (хотя доступно через HomeBrew и Ports).
Крис Даун

Это не здесь, на моей установке 10.6 ...
serverhorror

Я работал с Ubuntu и Fedora, я никогда не использовал macs, поэтому я не уверен, каковы требования для этого, но я уверен, что вы можете установить его. Я не уверен, где можно было бы скачать пакет
whoami

3

Это может показаться странным вопросом, но что бы вы использовали для создания типичной голливудской хакерской сцены?

Голливудская технодрама , должно быть достаточно вдохновения для того, что вы ищете. Он доступен в виде пакета для Linux, также на github , должен иметь возможность выбирать нужные вам фрагменты и что-то упаковывать в OS X.

В системе Debian / Ubuntu вы можете установить так:

sudo apt-get install hollywood

Или, если это не сработает:

sudo apt-add-repository ppa:hollywood/ppa
sudo apt-get update
sudo apt-get install hollywood

2

из командной строки:

tr -c "[:digit:]" " " < /dev/urandom | dd cbs=$COLUMNS conv=unblock | GREP_COLOR="1;32" grep --color "[^ ]"

или

echo "You can simulate on-screen typing just like in the movies" | pv -qL 10


1

Я понимаю, что nmap - это стандартное хакерское голливудское приложение, и вот страница от парня, который работал над тем, чтобы сделать голливудский взлом Трона более реальным.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.