Bir Terminal penceresinde sabit çıktı nasıl üretilir?


5

Mesela ne zaman istersem brew install wgetveya mysqld restartbazı satırların sürekli terminal penceremden geçmesini istiyorum. Belki izleyebileceğim bir şey veya atlayabileceğim herhangi bir bilgi akışı var mı? Terminalde faaliyet izleme süreçlerini izlemek mümkün olabilir mi?

Neden buna sahip olmak isteyeyim? Çünkü, monitörünüz üzerinde çalışan Matrix benzeri bir kod varken süper havalı görünüyor. Ve bazı ev sinema sahneleri için buna ihtiyacım olabilir.


Matris benzeri (yukarıdan aşağıya) veya demlemeye benzer (yatay olarak) iki farklı şeydir, tam olarak ne arıyorsunuz? Peki zaten güçlü Google’dan bir cevap istemiştiniz mi?
nohillside

Oldukça farklı, haklısın! Şimdi tekrar baktım, Matrix gibi çalışan bir üretken araçtan çok bir oyuncak veya ekran koruyucu gibi görünüyor. Homebrew benzeri çok daha iyi olurdu. Bazı çocukların youtube'da, terminalden rasgele sayıların geçmesine izin verilmesine ilişkin dersler buldum, ancak bu pek profesyonel görünmüyor.
leymannx

Büyük bir programın kaynak kodunu indirin ve terminalinizde derleyin, ki bu " profesyonel görünecektir" , bazı günlükleri izlemek gibi yararlı bir çıktı olmadıkça (@Matteo'nun önerdiği gibi) başka bir şey hemen hemen hiç ses çıkarmaz. Tabii ki, derleme de önemli kaynaklar gerektirir.
nerdwaller


Yanıtlar:


7

Bu unix.stackexchange.com Q & A'dan "hollywood" tarzı terminal çıktısı oluşturma hakkında fikir edinmek .

Yavaş Tip

Bu senaryo, filmlerde gördüğünüz gecikmeli yazma efektini oluşturur. Bilgisayarın terminaldeki şeyleri gerçekten çok kötü ve yavaş bir hızda yazdırdığı yer.

Aşağıdakileri bir dosyaya kaydedin hollywood:

#!/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

Dosya üzerinde yürütme izinlerini ayarla hollywood:

chmod +x hollywood

Daha sonra dmesg, ekrana yavaşça basması için geniş bir şık görünümlü metin parçası vermek için çıktısını alın :

dmesg | hollywood

Hex Dump

Bu, hex verilerini ekrana aktarır. Etkileyici görünüyor ama kitleler için büyük ölçüde anlaşılmaz.

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

Matris

Sayılar. Her yerde sayılar.

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

Maalesef, bununla hızı kontrol etmenin iyi bir yolu yok.

Homebrew adlı cmatrix adındaki bu mevcut görüntünün daha iyi bir sürümü var . Yükleyebilir ve çalıştırabilirsiniz:

brew install cmatrix
cmatrix

Harika çözüm Hex Dump çizgisi bitmeli '. Düzenlemeyi denedim, ancak Stackexchange en az 6 karakterin değiştirilmesini bekliyor. Niye ya? - Maalesef "tr -c" [: digit:] "" "</ dev / urandom", OS X 10.11.6'da benim için "tr: ​​Yasadışı bayt dizisi" hatası veriyor.
Alex Ixeras

@AlexIxeras iyi yakalamak. sabit.
Ian C.

Teşekkürler. "Tr -c" [: digit:] "" "</ dev / urandom" un "tr: ​​Yasadışı bayt dizisi" hatasıyla sonuçlandığına dair bir fikrin var mı?
Alex Ixeras

@AlexIxeras ah, evet. /dev/urandomASCII olmayan karakterler çıkarıyor. Örnek satırı düzelttim, böylece trsadece ASCII olmayan karakterleri yok sayar ve şikayet etmez.
Ian C.

5

Büyüyen bazı dosyalarınız varsa kullanabilirsiniz tail -f. Örneğin

 $ tail -f /var/log/system.log

Aktivite izleyiciye benzer birkaç terminal aracı vardır, örneğin üst (OS X ile birlikte verilir) ve htop (MacPorts veya Homebrew ile birlikte kurmanız gerekir).

Ayrıca büyük bir yazılım paketinin kaynaklarını da (örneğin, gcc, OpenOffice) indirebilir ve sonra derleyebilirsiniz. Bu genellikle konsolda çok fazla çıktı üretecektir.

Ayrıca büyük dizin listeleri de oluşturabilirsiniz.

$ ls -lRt

veya find(ikincisi, her satırı bir saniye geciktirir)

$ find .
$ find . -print -exec sleep 1 \;

topoldukça güzel, bazı karakterler sürekli değişiyor. Ancak ekranın üzerinden geçen hiçbir çizgi yoktur. Kaynakları indirirken, sadece eğlence için çok fazla veri buluyorum.
leymannx

1
cat /var/log/system.logAşağıdaki yavaş yazım komut dosyasına a ile bir boruyu birleştirin; güzel ve sürekli bir Terminal çıkışı akışı elde edersiniz.
Ian C.

3

matrix command:

od -c /dev/random

Dikkatlice okuyunuz, belirli bir zamanda gizli anahtarı göreceksiniz.


2

Gibi bir şey

while sleep 1; do
    t=$(( RANDOM % 80 ))
    for ((i=0; i < $t; i++)); do
        echo -n '*'
        sleep 1
    done
    echo
done

hile yapabilir. Uyku hızının uzunluğunu farklı hızlar için değiştirin ve *istediğinizi ile değiştirin ( $(( RANDOM % 10 ))değişen sayılar için bile ).


0

tcpdumpTerminal'de deneyebilirsiniz . Bilgisayarınızın aktif ağ arayüzleri üzerinden yaptığı bağlantıları listeler. Herhangi bir ağ etkinliğinde, ekranda çalışan veriler gösterilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.