Provided by: util-linux-locales_2.41-4ubuntu3_all bug

NUME

       script - face o transcriere a sesiunii de terminal

REZUMAT

       script [opțiuni] [fișier]

DESCRIERE

       script face o transcriere a tot ceea ce se află în sesiunea de terminal. Datele terminalului sunt stocate
       în formă brută în fișierul jurnal, iar informațiile despre sincronizare(datele de timp) într-un alt
       fișier jurnal structurat (opțional). Fișierul jurnal de cronometrare este necesar pentru a reda sesiunea
       ulterior prin scriptreplay(1) și pentru a stoca informații suplimentare despre sesiune.

       Începând cu versiunea 2.35, script suportă fluxuri multiple și permite înregistrarea intrărilor și
       ieșirilor în fișiere separate sau într-un singur fișier. Această versiune acceptă, de asemenea, un nou
       fișier de sincronizare care înregistrează informații suplimentare. Comanda scriptreplay --summary oferă
       apoi toate informațiile.

       Dacă este dat argumentul fișier sau opțiunea --log-out fișier, script salvează dialogul în acest fișier.
       Dacă nu se dă un nume de fișier, dialogul este salvat în fișierul typescript.

       Rețineți că înregistrarea datelor de intrare în jurnal utilizând --log-in sau --log-io poate înregistra
       informații sensibile din punct de vedere al securității, deoarece fișierul jurnal conține toate datele de
       intrare în sesiunea terminalului (de exemplu, parolele), indiferent de valoarea fanionului ECHO al
       terminalului.

OPȚIUNI

       Mai jos, argumentul dimensiune poate fi urmat de sufixele multiplicative KiB (=1024), MiB (=1024*1024),
       și așa mai departe pentru GiB, TiB, PiB, EiB, ZiB și YiB („iB” este opțional, de exemplu, „K” are aceeași
       semnificație ca și „KiB”), sau sufixele KB (=1000), MB (=1000*1000) și așa mai departe pentru GB, TB, PB,
       EB, ZB și YB.

       -a, --append
           Adaugă rezultatul la fișier sau la transcriere, păstrând conținutul anterior.

       -c, --command comanda
           Rulează comanda mai degrabă decât un shell interactiv. Acest lucru facilitează capturarea de către un
           script a ieșirii unui program care se comportă diferit atunci când ieșirea standard a acestuia nu
           este un terminal tty.

       -E, --echo când
           Această opțiune controlează fanionul ECHO pentru capătul sclav al pseudo-terminalului sesiunii.
           Modurile acceptate sunt always (întotdeauna), never (niciodată) sau auto.

           Valoarea implicită este auto - în acest caz, ECHO este activat pentru pseudo-terminalul sclav; dacă
           intrarea standard curentă este un terminal, ECHO este dezactivat pentru acesta pentru a preveni
           „ecoul” dublu; dacă intrarea standard curentă nu este un terminal (de exemplu conductă: echo date |
           script), atunci menținerea activării ECHO pentru pseudo-terminalul sclav permite vizualizarea pe
           ecran a datelor de intrare standard și înregistrarea simultană în jurnalul sesiunii.

           Rețineți că modul „never” (niciodată) afectează conținutul jurnalului de ieșire al sesiunii, deoarece
           datele introduse de utilizatori nu se repetă la ieșire.

       -e, --return
           Returnează starea de ieșire a procesului-copil. Folosește același format ca și terminarea bash la
           primirea semnalului de terminare (adică, starea de ieșire este 128 + numărul semnalului). Starea de
           ieșire a procesului-copil este întotdeauna stocată și în fișierul de transcriere (typescript).

       -f, --flush
           Curăță ieșirea după fiecare scriere. Acest lucru este util pentru telecooperare: o persoană face
           mkfifo foo; script -f foo, iar alta poate supraveghea în timp real ce se face folosind cat foo.
           Rețineți că „-flush” (curățarea/golirea) are un impact asupra performanțelor; este posibil să se
           utilizeze SIGUSR1 pentru a curăța/goli jurnalele la cerere.

       --force
           Permite ca fișierul de ieșire implicit transcrierea (typescript) să fie o legătură dură sau
           simbolică. Comanda va urma o legătură simbolică.

       -B, --log-io fișier
           Înregistrează datele de intrare și de ieșire în același fișier. Rețineți că această opțiune are sens
           numai dacă este specificat și --log-timing, altfel este imposibil să se separe fluxurile de ieșire și
           de intrare din fișierul de jurnal.

       -I, --log-in fișier
           Înregistrează datele de intrare în fișier. Ieșirea de jurnal este dezactivată dacă se specifică doar
           --log-in.

           Folosiți cu atenție această funcționalitate de înregistrare, deoarece înregistrează toate intrările,
           inclusiv intrările în cazul în care terminalul a dezactivat fanionul ECHO (de exemplu, intrările de
           parole).

       -O, --log-out fișier
           Înregistrează ieșirea în fișier. Valoarea implicită este de a înregistra ieșirea în fișierul cu
           numele typescript dacă nu se dă opțiunea --log-out sau --log-in. Ieșirea jurnalului este dezactivată
           dacă se specifică doar --log-in.

       -T, --log-timing fișier
           Înregistrează informațiile de sincronizare (de timp) în fișierul fișier. Acum sunt acceptate două
           formate de fișiere de cronometrare. Formatul clasic este utilizat atunci când este activată
           înregistrarea unui singur flux (intrare sau ieșire). Formatul multi-flux este utilizat la --log-io
           sau atunci când --log-in și --log-out sunt utilizate împreună. A se vedea, de asemenea,
           --logging-format.

       -m, --logging-format format
           Forțează utilizarea formatului de jurnal de cronometrare avansat sau clasic. În mod implicit, se
           folosește formatul clasic pentru a înregistra numai ieșirile și formatul avansat atunci când se
           solicită înregistrarea atât a intrărilor, cât și a ieșirilor.

           Formatul clasic
               Jurnalul de cronometrare conține două câmpuri, separate prin câte un spațiu. Primul câmp indică
               cât timp a trecut de la ieșirea anterioară. Al doilea câmp indică numărul de caractere care au
               fost emise de această dată.

           *Formatul avansat (multi-flux)
               Primul câmp este un identificator al tipului de intrare („I’nput” (intrarea), „O’utput”
               (ieșirea), „H’eader” (antetul, titlul), „S’ignal” (semnal)). Al doilea câmp reprezintă timpul
               care a trecut de la intrarea anterioară, iar restul câmpului este format din date specifice
               tipului de intrare.

       -o, --output-limit dimensiunea
           Limitează dimensiunea fișierelor de transcriere(typescript) și de sincronizare la dimensiunea și
           oprește procesul-copil după ce această dimensiune este depășită. Dimensiunea calculată a fișierului
           nu include mesajele de start și de sfârșit pe care comanda script le preia și le adaugă la ieșirea
           procesului-copil. Din cauza utilizării memoriei tampon, este posibil ca fișierul de ieșire rezultat
           să fie mai mare decât valoarea specificată.

       -q, --quiet
           Stă liniștit (nu scrie mesajele de început și sfârșit la ieșirea standard).

       -t[fișier], --timing[=fișier]
           Emite datele de sincronizare către ieșirea de eroare standard sau către fișier, dacă este cazul.
           Această opțiune este depășită în favoarea --log-timing, unde argumentul fișier nu este opțional.

       -h, --help
           Afișează acest mesaj de ajutor și iese.

       -V, --version
           Afișează versiunea și iese.

SEMNALE

       La primirea semnalului SIGUSR1, script golește imediat fișierele de ieșire.

MEDIU

       Următoarea variabilă de mediu este utilizată de script:

       SHELL
           Dacă variabila SHELL există, shell-ul bifurcat de script va fi acel shell. Dacă variabila SHELL nu
           este definită, se va folosi shell-ul Bourne. (Majoritatea shell-urilor definesc automat această
           variabilă).

NOTE

       Scriptul se termină atunci când shell-ul bifurcat iese (un control-D pentru shell-ul Bourne (sh(1p)), și
       exit, logout sau control-d (dacă ignoreeof nu este activat) pentru C-shell, csh(1)).

       Anumite comenzi interactive, cum ar fi vi(1), generează deșeuri în fișierul de transcriere(typescript).
       script funcționează cel mai bine cu comenzi care nu manipulează ecranul, rezultatele sunt menite să
       emuleze o copie exactă a unui terminal.

       Nu se recomandă rularea de script în shell-uri non-interactive. Shell-ul interior al script este
       întotdeauna interactiv, ceea ce ar putea duce la rezultate neașteptate. Dacă utilizați script în fișierul
       de inițializare a shell-ului, trebuie să evitați intrarea într-o buclă infinită. Puteți utiliza, de
       exemplu, fișierul .profile, care este citit numai de shell-urile de autentificare:

           if test -t 0 ; then
               script
               exit
           fi

       De asemenea, ar trebui să evitați utilizarea lui script în conductele de comandă, deoarece script poate
       citi mai multe date de intrare decât v-ați aștepta.

ISTORIC

       Comanda script a apărut în 3.0BSD.

ERORI

       script plasează totul în fișierul jurnal, inclusiv salturile de linie și spațiile înapoi.. Nu este ceea
       ce se așteaptă un utilizator naiv.

       script este conceput în primul rând pentru sesiuni interactive de terminal. Atunci când intrarea standard
       nu este un terminal (de exemplu: echo foo | script), atunci sesiunea se poate bloca, deoarece shell-ului
       interactiv din cadrul sesiunii de script îi lipsește EOF, iar script nu știe când să închidă sesiunea.
       Pentru mai multe informații, consultați secțiunea NOTE.

CONSULTAȚI ȘI

       csh(1) (pentru mecanismul istoric), scriptreplay(1), scriptlive(1)

RAPORTAREA ERORILOR

       Pentru rapoarte de eroare, folosiți sistemul de urmărire al erorilor
       <https://github.com/util-linux/util-linux/issues>.

DISPONIBILITATE

       Comanda script face parte din pachetul util-linux care poate fi descărcat de la Linux Kernel Archive
       <https://www.kernel.org/pub/linux/utils/util-linux/>.

util-linux 2.41                                    2025-07-02                                          SCRIPT(1)