FORTUNE(6)

NUME
fortune - afișează un adagiu aleatoriu, sperăm că interesant

SINOPSIS

  fortune [-acefilosw]
     [-n lungime]
     [-m model]
     [[n%] fișier/director/toate]

DESCRIERE

Atunci când fortune este rulat fără argumente, acesta afișează o epigramă aleatorie. Epigramele sunt împărțite în mai multe categorii, fiecare categorie fiind subîmpărțită în cele care sunt potențial ofensatoare și cele care nu sunt.

  Opțiuni

Opțiunile sunt următoarele:

-a
    Alegeți din toate listele de maxime, atât jignitoare, cât și nejignitoare. ( A se vedea opțiunea -o pentru mai multe informații despre răvașele ofensatoare).

-c
    Afișează fișierul fursec din care a provenit răvașul.

-e
    Consideră că toate fișierele răvaș au dimensiuni egale (a se vedea discuția de mai jos privind fișierele multiple).

-f
    Afișează lista fișierelor care vor fi căutate, dar nu afișează un răvaș.

-l
    Doar dictate lungi. A se vedea -n pentru a afla cum se definește lung, „long” în acest sens.

-m model
    Afișează toate răvașele care se potrivesc cu expresia regulată de bază model. Sintaxa acestor expresii depinde de modul în care sistemul dumneavoastră definește re_comp(3) sau regcomp(3), dar ar trebui totuși să fie similară cu sintaxa utilizată în grep(1). Răvașele sunt afișate la ieșirea standard, în timp ce numele fișierului din care provine fiecare răvaș sunt afișate la ieșirea de eroare standard. Oricare dintre ele sau ambele pot fi redirecționate; dacă ieșirea standard este redirecționată către un fișier, rezultatul este un fișier valid de bază de date cu răvașe. Dacă ieșirea de eroare standard este de asemenea redirecționată către acest fișier, rezultatul este încă valid, dar vor exista „false” răvașe, adică, numele fișierelor în sine, între paranteze. Acest lucru poate fi util în cazul în care doriți să eliminați potrivirile adunate din fișierele lor originale, deoarece fiecare înregistrare cu nume de fișier va preceda înregistrările din fișierul pe care îl numește.

-n lungime
    Stabilește cea mai mare lungime a răvașului (în caractere) considerată a fi „short”, scurtă (valoarea implicită este 160). Toate răvașele mai lungi decât aceasta sunt considerate „long”. Fiți atenți! Dacă stabiliți lungimea prea scurtă și cereți răvașe scurte, sau prea lungi și cereți răvașe lungi, răvașul intră într-o buclă de ciocnire nesfârșită.

Alege doar din aforismele potențial ofensatoare. Opțiunea „-o” este ignorată dacă este specificat un director de răvașe.
    Vă rog, vă rog, vă rog, vă rog să solicitați un răvaș potențial ofensator dacă și numai dacă credeți, în adâncul inimii voastre, că sunteți dispus să fiți ofensat; (și că veți renunța la utilizarea opțiunii „-o” mai degrabă decât să ne faceți reproșuri în legătură cu asta, ok?) ... să ne amintim de filozofia de bază a Frăției, rezumată frumos în aceste cuvinte: noi credem în râsul sănătos și copios - pe seama întregii rase umane, dacă este nevoie. La nevoie. --H. Allen Smith, „Glume nesărate”

-s
    Doar apoftegme (maxime) scurte. A se vedea -n pe care răvașele sunt considerate „short”.

-i
    Ignoră diferențele între majuscule și minuscule pentru modelele -m.

-w
    Așteaptă înainte de terminare o perioadă de timp calculată în funcție de numărul de caractere din mesaj. Acest lucru este util în cazul în care este executat ca parte a procedurii de deconectare pentru a garanta că mesajul poate fi citit înainte ca ecranul să fie golit.

Utilizatorul poate preciza alte zicale. Se poate specifica un fișier specific, un director care conține unul sau mai multe fișiere sau cuvântul special all care spune să se utilizeze toate bazele de date standard. Oricare dintre acestea poate fi precedat de un procent, care este un număr n între 0 și 100 inclusiv, urmat de un %. Dacă este, va exista o probabilitate de n la sută ca un adagiu să fie ales din acel fișier sau director. În cazul în care procentele nu ajung la 100 și există specificații fără procente, procentul rămas se va aplica acelor fișiere și/sau directoare, caz în care probabilitatea de a selecta dintr-unul dintre ele se va baza pe dimensiunile lor relative.

Ca exemplu, date fiind două baze de date funny (amuzantă) și not-funny (neamuzantă), cu funny de două ori mai mare (ca număr de răvașe, nu ca dimensiune brută a fișierului), spunând

fortune funny not-funny

vă va scoate răvașe din funny două treimi din timp. Comanda

fortune 90% funny 10% not-funny

va extrage 90% din răvașele sale de la funny („10% non-funny” nu este necesar, deoarece 10% este tot ceea ce rămâne).

Opțiunea -e spune să se considere toate fișierele ca fiind egale; astfel

fortune -e funny not-funny

este echivalent cu

fortune 50% funny 50% not-funny

Acest program «fortune» suportă, de asemenea, metoda BSD de a adăuga „-o” la numele bazelor de date pentru a specifica răvașe ofensatoare. Cu toate acestea, «fortune» nu le stochează în acest mod: răvașele ofensatoare sunt stocate într-un director separat, fără infixul „-o”. Un nume simplu (adică nu o rută către un fișier sau un director) care se termină în „-o” va fi considerat a fi o bază de date ofensatoare, iar sufixul va fi eliminat și va fi căutat în directorul ofensator (chiar dacă nu a fost specificată niciuna dintre opțiunile -a sau -o). Această caracteristică nu este doar pentru compatibilitatea cu trecutul, ci și pentru a permite utilizatorilor să facă distincția între bazele de date neofensatoare și ofensatoare cu același nume.

De exemplu, presupunând că există o bază de date numită definitions atât în colecțiile neofensatoare, cât și în cele potențial ofensatoare, următoarea comandă va selecta o definiție neofensatoare în 90% din cazuri și o definiție potențial ofensatoare pentru restul de 10%:

fortune 90% definitions definitions-o

FIȘIERE

Notă: acestea sunt valorile implicite, așa cum sunt definite în momentul compilării.

/usr/share/fortune Director pentru răvașe neofensatoare.

/usr/share/fortunes/off Director pentru răvașe ofensatoare.

Dacă un anumit set de răvașe este deosebit de nedorit, există o soluție simplă: ștergeți fișierul asociat .dat. Acest lucru lasă datele intacte, în cazul în care fișierul este dorit mai târziu, dar, deoarece fortune nu mai găsește fișierul de indicatoare, ignoră fișierul text.

ERORI

Împărțirea răvașelor în ofensatoare și neofensatoare în funcție de director, mai degrabă decât prin intermediul infixului de fișier „-o”, nu este 100% compatibilă cu răvașele BSD originale. Deși infixul „-o” este recunoscut ca făcând referire la o bază de date ofensivă, fișierele bazei de date ofensatoare trebuie să fie în continuare într-un director separat. Soluția, desigur, este de a muta fișierele „-o” în directorul ofensator (cu sau fără redenumire) și de a folosi opțiunea -a.

Bazele de date furnizate de «fortune» au fost atacate, pentru a corecta erorile ortografice și gramaticale și, în special, pentru a reduce redundanța și repetițiile și redundanța. Dar mai ales pentru a evita repetițiile. Acest lucru nu a fost un succes deplin. În acest proces, este posibil să se fi pierdut și unele răvașe.

Bazele de date «fortune» sunt acum împărțite într-un număr mai mare de fișiere mai mici, unele organizate în funcție de format (poezie, definiții), iar altele în funcție de conținut (religie, politică). Există fișiere paralele în directorul principal și în directorul de fișiere ofensatoare (de exemplu, „fortunes/definitions” și „fortunes/off/definitions”). Nu toate răvașele potențial ofensatoare se află în fișierele de răvașe ofensatoare și nici toate răvașele din fișierele ofensatoare nu sunt potențial ofensatoare, probabil, deși s-a încercat cu tărie să se obțină o mai mare coerență. De asemenea, ar putea fi făcută o împărțire mai bună.

ISTORIC

Această versiune de «fortune» se bazează pe NetBSD fortune 1.4, dar cu o serie de corecturi de erori și îmbunătățiri.

Formatul original fortune/strfile folosea un singur fișier; strfile citea fișierul text și îl convertea în șiruri de caractere delimitate prin zero, care erau stocate după tabelul de indicatori în fișierul .dat. Până la NetBSD fortune 1.4, de aici s-au schimbat lucrurile, acesta folosește două fișiere separate: fișierul .dat era doar antetul (tabelul de indicatori, plus fanioanele; vezi strfile.h), iar șirurile de text au fost lăsate în propriul lor fișier. Problema potențială este că fișierul text și fișierul de antet se pot desincroniza, dar avantajul este că fișierele text pot fi editate cu ușurință fără a recurge la unstr și există o economie potențială de spațiu pe disc (presupunând că administratorul de sistem a păstrat atât fișierul .dat cu șiruri de caractere, cât și fișierul text).

Multe dintre îmbunătățirile aduse versiunii NetBSD au presupus un sistem Linux și, prin urmare, au dus la eșecul acesteia pe alte platforme, inclusiv BSD. De atunci, codul sursă a devenit mai generic și, în prezent, funcționează pe SunOS 4.x, precum și pe Linux, iar în viitor se așteaptă suport pentru mai multe platforme. Rețineți că unele erori au fost descoperite și corectate din greșeală în timpul acestui proces.

După părerea mea, un număr mare de oameni au lucrat la acest program, mulți dintre ei fără să-și părăsească atribuțiile.

CONSULTAȚI ȘI

re_comp(3), regcomp(3), strfile(1), unstr(1)

TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 (https://www.gnu.org/licenses/gpl-3.0.html) sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.