Revisione traduzione bash [parte 2]

Giuseppe Sacco giuseppe@sguazz.it
Dom 15 Giu 2025 12:07:30 CEST


Ciao Luca,
ecco la revisione della parte restante.

[...]
#: builtins.c:184
msgid "! PIPELINE"
msgstr ""

Questa non è tradotta.

[...]
#: builtins.c:204
msgid "function name { COMMANDS ; } or name () { COMMANDS ; }"
msgstr "function name { COMANDI ; } oppure name () { COMANDI ; }"

qui non hai tradotto «name» che nelle altre parti invece è diventato «nome».

[...]
#: builtins.c:237
msgid ""
"compgen [-V varname] [-abcdefgjksuv] [-o option] [-A action] [-G globpat] [-"
"W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix]"
" [word]"
msgstr ""
"compgen [-V varname] [-abcdefgjksuv] [-o opzione]  [-A azione] [-G modglob] "
"[-W elencoparole]  [-F funzione] [-C comando] [-X modfiltro] [-P prefisso] [-"
"S suffisso] [parola]"

Qui «varname» forse poteva diventare «nomevar», come mi pare tu abbia fatto
altrove.

[...]
#: builtins.c:280
msgid ""
"Remove each NAME from the list of defined aliases.\n"
"    \n"
"    Options:\n"
"      -a\tremove all alias definitions\n"
"    \n"
"    Return success unless a NAME is not an existing alias."
msgstr ""
"Rimuove ogni NOME dall'elenco degli alias definiti.\n"
"    \n"
"    Opzioni:\n"
"      -a\trimuove tutte le definizioni di alias\n"
"    \n"
"    Restituisce successo a meno che NOME non sia un alias esistente."

Io qui specificherei, nell'ultima riga, «un NOME» anziché «NOME», come in inglese.

[...]
#: builtins.c:293
msgid ""
"Set Readline key bindings and variables.\n"
"    \n"
"    Bind a key sequence to a Readline function or a macro, or set a\n"
"    Readline variable.  The non-option argument syntax is equivalent to\n"
"    that found in ~/.inputrc, but must be passed as a single argument:\n"
"    e.g., bind '\"\\C-x\\C-r\": re-read-init-file'.\n"
"    \n"
"    Options:\n"
"      -m  keymap         Use KEYMAP as the keymap for the duration of this\n"
"                         command.  Acceptable keymap names are emacs,\n"
"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,"
"\n"
"                         vi-command, and vi-insert.\n"
"      -l                 List names of functions.\n"
"      -P                 List function names and bindings.\n"
"      -p                 List functions and bindings in a form that can be\n"
"                         reused as input.\n"
"      -S                 List key sequences that invoke macros and their "
"values\n"
"      -s                 List key sequences that invoke macros and their "
"values\n"
"                         in a form that can be reused as input.\n"
"      -V                 List variable names and values\n"
"      -v                 List variable names and values in a form that can\n"
"                         be reused as input.\n"
"      -q  function-name  Query about which keys invoke the named function.\n"
"      -u  function-name  Unbind all keys which are bound to the named "
"function.\n"
"      -r  keyseq         Remove the binding for KEYSEQ.\n"
"      -f  filename       Read key bindings from FILENAME.\n"
"      -x  keyseq:shell-command\tCause SHELL-COMMAND to be executed when\n"
"    \t\t\t\tKEYSEQ is entered.\n"
"      -X                 List key sequences bound with -x and associated "
"commands\n"
"                         in a form that can be reused as input.\n"
"    \n"
"    If arguments remain after option processing, the -p and -P options "
"treat\n"
"    them as readline command names and restrict output to those names.\n"
"    \n"
"    Exit Status:\n"
"    bind returns 0 unless an unrecognized option is given or an error occurs."
msgstr ""
"Imposta le associazioni di tasti e le variabili di Readline.\n"
"    \n"
"    Associa una sequenza di tasti a una funzione o a una macro Readline, "
"oppure imposta una\n"
"    variabile di Readline.  La sintassi di argomento senza opzione è "
"equivalente a quella\n"
"    trovata in ~/.inputrc, ma deve essere passata come singolo argomento:\n"
"    es., bind '\"\\C-x\\C-r\": ri-leggi-file-init'.\n"
"    \n"
"    Opzioni:\n"
"      -m  mappatura      Usa MAPPATURA come la mappatura per la durata di "
"questo\n"
"                         comando.  Nomi accettabili per la mappatura sono "
"emacs,\n"
"                         emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move,"
"\n"
"                         vi-command e vi-insert.\n"
"      -l                 Elenca i nomi delle funzioni.\n"
"      -P                 Elenca i nomi delle funzioni e le associazioni.\n"
"      -p                 Elenca le funzioni e le associazioni in una forma "
"che\n"
"                         possa essere riusata come input.\n"
"      -S                 Elenca le sequenze di tasti che invocano le macro e "
"i loro valori.\n"
"      -s                 Elenca le sequenze di tasti che invocano le macro e "
"i loro valori\n"
"                         in una forma che possa essere riusata come input.\n"
"      -V                 Elenca i nomi e i valori delle variabili.\n"
"      -v                 Elenca i nomi e i valori delle variabili in una "
"forma che possa\n"
"                         essere riusata come input.\n"
"      -q  nome-funzione  Identifica il tasto che invoca la funzione nominata."
"\n"
"      -u  nome-funzione  Rimuove l'associazione tra la funzione nominata e "
"tutti i tasti associati.\n"
"      -r  seqtasti       Rimuove l'associazione per la SEQTASTI.\n"
"      -f  nomefile       Legge le associazioni di tasti da NOMEFILE.\n"
"      -x  seqtasti:comando-shell\tEsegue il COMANDO-SHELL quando viene "
"inserita\n"
"    \t\t\t\t\tla SEQTASTI.\n"
"      -X                 Elenca le sequenze di tasti associate a -x e i\n"
"                         comandi associati, in una forma che può essere\n"
"                         riutilizzata come input.\n"
"                         in a form that can be reused as input.\n"
"    \n"
"    Se rimangono degli argomenti dopo l'elaborazione dell'opzione, le opzioni\n"
"    -p e -P li trattano come nomi di comandi readline e limitano l'output\n"
"    a quei nomi.\n"
"    \n"
"    Stato di uscita:\n"
"    bind restituisce 0 a meno che non sia fornita una opzione non "
"riconosciuta o si riscontri un errore."

In questo caso la traduzione dell'esempio, che diventa «ri-leggi-file-init» non va fatta.
Difatti re-read-init-file è un nome di funzione, come mostrato anche da «bind -l | fgrep read».

Infine, nella parte italiana è rimasto un «in a form that can be reused as input.\n» in inglese.

[...]
#: builtins.c:347
msgid ""
"Resume for, while, or until loops.\n"
"    \n"
"    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.\n"
"    If N is specified, resumes the Nth enclosing loop.\n"
"    \n"
"    Exit Status:\n"
"    The exit status is 0 unless N is not greater than or equal to 1."
msgstr ""
"Riprende cicli for, while o until.\n"
"    \n"
"    Riprende l'iterazione successiva del ciclo chiuso FOR, WHILE o UNTIL.\n"
"    Se è specificato N, riprende l'N-simo ciclo chiuso.\n"
"    \n"
"    Stato di uscita:\n"
"    Lo stato di uscita è 0 a meno che N non sia maggiore o uguale a 1."

Qui non ho capito cosa intendi per «ciclo chiuso». Sarebbe la traduzione di
«enclosing loop»? Se così fosse io lo cambierei in semplice «ciclo». 

[...]
#: builtins.c:495
msgid ""
"Set variable values and attributes.\n"
"    \n"
"    Declare variables and give them attributes.  If no NAMEs are given,\n"
"    display the attributes and values of all variables.\n"
"    \n"
"    Options:\n"
"      -f\trestrict action or display to function names and definitions\n"
"      -F\trestrict display to function names only (plus line number and\n"
"    \t\tsource file when debugging)\n"
"      -g\tcreate global variables when used in a shell function; otherwise\n"
"    \t\tignored\n"
"      -I\tif creating a local variable, inherit the attributes and value\n"
"    \t\tof a variable with the same name at a previous scope\n"
"      -p\tdisplay the attributes and value of each NAME\n"
"    \n"
"    Options which set attributes:\n"
"      -a\tto make NAMEs indexed arrays (if supported)\n"
"      -A\tto make NAMEs associative arrays (if supported)\n"
"      -i\tto make NAMEs have the `integer' attribute\n"
"      -l\tto convert the value of each NAME to lower case on assignment\n"
"      -n\tmake NAME a reference to the variable named by its value\n"
"      -r\tto make NAMEs readonly\n"
"      -t\tto make NAMEs have the `trace' attribute\n"
"      -u\tto convert the value of each NAME to upper case on assignment\n"
"      -x\tto make NAMEs export\n"
"    \n"
"    Using `+' instead of `-' turns off the given attribute, except for a,\n"
"    A, and r.\n"
"    \n"
"    Variables with the integer attribute have arithmetic evaluation (see\n"
"    the `let' command) performed when the variable is assigned a value.\n"
"    \n"
"    When used in a function, `declare' makes NAMEs local, as with the "
"`local'\n"
"    command.  The `-g' option suppresses this behavior.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is supplied or a variable\n"
"    assignment error occurs."
msgstr ""
"Imposta i valori e gli attributi delle variabili.\n"
"    \n"
"    Dichiara le variabili e fornisce loro attributi.  Se non vengono forniti "
"NOMI,\n"
"    visualizza gli attributi e i valori di tutte le variabili.\n"
"    \n"
"    Opzioni:\n"
"      -f\tlimita l'azione o la visualizzazione ai nomi e alle definizioni di "
"funzione\n"
"      -F\tlimita la visualizzazione ai soli nomi di funzione (più numero di "
"riga e\n"
"    \t\tfile sorgente durante il debug)\n"
"      -g\tCrea variabili globali quando usato in una funzione di shell; "
"altrimenti\n"
"    \t\tè ignorato\n"
"      -I\tcreando una variabile locale, eredita attributi e valore\n"
"    \t\tdi una variable con stesso nome in uno scope precedente\n"
"      -p\tvisualizza gli attributi e i valori di ciascun NOME\n"
"    \n"
"    Opzioni che impostano gli attributi:\n"
"      -a\tRende i NOMI array indicizzati (se supportata)\n"
"      -A\tRende i NOMI array associativi (se supportata)\n"
"      -i\tFornisce ai NOMI l'attributo \"integer\"\n"
"      -l\tConverte i valori dei NOMI in lettere minuscole in fase di assegnazione\n"
"      -n\tmake NAME a reference to the variable named by its value\n"
"      -r\tImposta i NOMI in sola lettura\n"
"      -t\tFornisce ai NOMI l'attributo \"trace\"\n"
"      -u\tConverte i valori dei NOMI in lettere maiuscole in fase di assegnazione\n"
"      -x\tImposta i NOMI come esportabili\n"
"    \n"
"    Usando \"+\" al posto di \"-\" disattiva l'attributo fornito, ad\n"
"    eccezione di a, A e r.\n"
"    \n"
"    Le variabili con attributo intero vengono valutate aritmeticamente "
"(vedere\n"
"    il comando \"let\") quando alla variabile è assegnato un valore.\n"
"    \n"
"    Quando viene usato in una funzione, \"declare\" rende locali i NOMI, "
"come con\n"
"    il comando \"local\".\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o "
"si riscontri un errore nell'assegnazione di variabili."

qui c'è un errore di battitura in «di una variable».
Inoltre hai messo con l'iniziale maiuscola la descrizione delle opzioni successive 
al testo «Opzioni che impostano gli attributi:"», mentre in minuscolo le precedenti. 
Poi non hai tradotto la descrizione dell'opzione «-n».
Infine hai usato la parola «integer» nella descrizione dell'opzione «-i», ma nel testo
finale ha scritto «variabili con attributo intero vengono». Non mi è chiarissimo se
andrebbero armonizzate.

[...]
#: builtins.c:566
msgid ""
"Write arguments to the standard output.\n"
"    \n"
"    Display the ARGs, separated by a single space character and followed by "
"a\n"
"    newline, on the standard output.\n"
"    \n"
"    Options:\n"
"      -n\tdo not append a newline\n"
"      -e\tenable interpretation of the following backslash escapes\n"
"      -E\texplicitly suppress interpretation of backslash escapes\n"
"    \n"
"    `echo' interprets the following backslash-escaped characters:\n"
"      \\a\talert (bell)\n"
"      \\b\tbackspace\n"
"      \\c\tsuppress further output\n"
"      \\e\tescape character\n"
"      \\E\tescape character\n"
"      \\f\tform feed\n"
"      \\n\tnew line\n"
"      \\r\tcarriage return\n"
"      \\t\thorizontal tab\n"
"      \\v\tvertical tab\n"
"      \\\\\tbackslash\n"
"      \\0nnn\tthe character whose ASCII code is NNN (octal).  NNN can be\n"
"    \t\t0 to 3 octal digits\n"
"      \\xHH\tthe eight-bit character whose value is HH (hexadecimal).  HH\n"
"    \t\tcan be one or two hex digits\n"
"      \\uHHHH\tthe Unicode character whose value is the hexadecimal value "
"HHHH.\n"
"    \t\tHHHH can be one to four hex digits.\n"
"      \\UHHHHHHHH the Unicode character whose value is the hexadecimal "
"value\n"
"    \t\tHHHHHHHH. HHHHHHHH can be one to eight hex digits.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless a write error occurs."
msgstr ""
"Scrive argomenti sullo standard output.\n"
"    \n"
"    Visualizza gli ARG sullo standard output, separati da un singolo carattere\n"
"    spazio, e seguiti da un ritorno a capo.\n"
"    \n"
"    Opzioni:\n"
"      -n\tNon accoda un carattere di ritorno a capo\n"
"      -e\tAbilita l'interpretazione dei seguenti caratteri backslash di "
"escape\n"
"      -E\tDisabilita esplicitamente l'interpretazione dei caratteri "
"backslash di escape\n"
"    \n"
"    \"echo\" interpreta i seguenti caratteri backslash di escape:\n"
"      \\a\tavviso (campanello)\n"
"      \\b\tbackspace\n"
"      \\c\telimina ulteriore output\n"
"      \\e\tcarattere di escape\n"
"      \\E\tcarattere di escape\n"
"      \\f\tavanzamento pagina\n"
"      \\n\tritorno a capo\n"
"      \\r\tritorno carrello\n"
"      \\t\ttabulazione orizzontale\n"
"      \\v\ttabulazione verticale\n"
"      \\\\\tbackslash\n"
"      \\0nnn\til carattere il cui codice ASCII è NNN (ottale).  NNN può "
"avere\n"
"    \t\tda 0 a 3 cifre ottali\n"
"      \\xHH\til carattere otto bit il cui valore è HH (esadecimale).  HH "
"può\n"
"    \t\tavere una o due cifre esadecimali\n"
"    \t\tHHHH può avere da una a quattro cifre esadecimali.\n"
"      \\UHHHHHHHH il carattere Unicode il cui valore è HHHH (esadecimale).\n"
"    \t\tHHHHHHHH. HHHHHHHH può avere da una a otto cifre esadecimali.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga riscontrato un errore di "
"scrittura."

manca la traduzione della riga:
\\uHHHH\tthe Unicode character whose value is the hexadecimal value HHHH.\n

[...]
#: builtins.c:708
msgid ""
"Replace the shell with the given command.\n"
"    \n"
"    Execute COMMAND, replacing this shell with the specified program.\n"
"    ARGUMENTS become the arguments to COMMAND.  If COMMAND is not specified,"
"\n"
"    any redirections take effect in the current shell.\n"
"    \n"
"    Options:\n"
"      -a name\tpass NAME as the zeroth argument to COMMAND\n"
"      -c\texecute COMMAND with an empty environment\n"
"      -l\tplace a dash in the zeroth argument to COMMAND\n"
"    \n"
"    If the command cannot be executed, a non-interactive shell exits, "
"unless\n"
"    the shell option `execfail' is set.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless COMMAND is not found or a redirection error "
"occurs."
msgstr ""
"Sostituisce la shell con il comando fornito.\n"
"    \n"
"    Esegue il COMANDO, sostituendo questa shell con il programma specificato."
"\n"
"    Gli ARGOMENTI diventano gli argomenti per il COMANDO. Se il COMANDO non "
"è specificato,\n"
"    ogni redirezione avrà effetto nella shell corrente.\n"
"    \n"
"    Opzioni:\n"
"      -a nome\tPassa NOME come l'argomento zero per il COMANDO\n"
"      -c\tEsegue il COMANDO con un ambiente vuoto\n"
"      -l\tPosiziona un trattino nell'argomento zero per il COMANDO\n"
"    \n"
"    Se il comando non può essere eseguito una shell non interattiva esce, a "
"meno che\n"
"    non venga impostata l'opzione di shell \"execfail\".\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia trovato il COMANDO o si "
"riscontri un errore di ridirezione."

Qui hai scritto prima «redirezione» e poi «ridirezione» :-)

[...]
#: builtins.c:780
msgid ""
"Move job to the foreground.\n"
"    \n"
"    Place the job identified by JOB_SPEC in the foreground, making it the\n"
"    current job.  If JOB_SPEC is not present, the shell's notion of the\n"
"    current job is used.\n"
"    \n"
"    Exit Status:\n"
"    Status of command placed in foreground, or failure if an error occurs."
msgstr ""
"Sposta i job in primo piano.\n"
"    \n"
"    Mette il job identificato da SPEC_JOB in primo piano, rendendolo il\n"
"    job corrente.  Se SPEC_JOB non è presente, viene usata la nozione di\n"
"    job corrente della shell.\n"
"    \n"
"    Stato di uscita:\n"
"    Stato del comando messo in primo piano, o insuccesso se si riscontra un "
"errore."

Io cambierei la prima riga dalla forma plurale alla singolare 

#: builtins.c:795
msgid ""
"Move jobs to the background.\n"
"    \n"
"    Place the jobs identified by each JOB_SPEC in the background, as if "
"they\n"
"    had been started with `&'.  If JOB_SPEC is not present, the shell's "
"notion\n"
"    of the current job is used.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless job control is not enabled or an error occurs."
msgstr ""
"Sposta i job in background.\n"
"    \n"
"    Mette il  jobs identificato da ogni SPEC_JOB in background, come se\n"
"    fossero stati avviati con \"&\". Se SPEC_JOB non è presente, viene\n"
"    usata la nozione di job corrente della shell.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che il controllo dei job non sia abilitato o "
"si riscontri un errore."

Qui c'è una svista "Mette il  jobs identificato" dovrebbe essere al singolare e
senza il doppio spazio.

[...]
#: builtins.c:858
msgid ""
"Display or manipulate the history list.\n"
"    \n"
"    Display the history list with line numbers, prefixing each modified\n"
"    entry with a `*'.  An argument of N lists only the last N entries.\n"
"    \n"
"    Options:\n"
"      -c\tclear the history list by deleting all of the entries\n"
"      -d offset\tdelete the history entry at position OFFSET. Negative\n"
"    \t\toffsets count back from the end of the history list\n"
"    \n"
"      -a\tappend history lines from this session to the history file\n"
"      -n\tread all history lines not already read from the history file\n"
"    \t\tand append them to the history list\n"
"      -r\tread the history file and append the contents to the history\n"
"    \t\tlist\n"
"      -w\twrite the current history to the history file\n"
"    \n"
"      -p\tperform history expansion on each ARG and display the result\n"
"    \t\twithout storing it in the history list\n"
"      -s\tappend the ARGs to the history list as a single entry\n"
"    \n"
"    If FILENAME is given, it is used as the history file.  Otherwise,\n"
"    if HISTFILE has a value, that is used. If FILENAME is not supplied\n"
"    and HISTFILE is unset or null, the -a, -n, -r, and -w options have\n"
"    no effect and return success.\n"
"    \n"
"    The fc builtin also operates on the history list.\n"
"    \n"
"    If the HISTTIMEFORMAT variable is set and not null, its value is used\n"
"    as a format string for strftime(3) to print the time stamp associated\n"
"    with each displayed history entry.  No time stamps are printed otherwise."
"\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or an error occurs."
msgstr ""
"Visualizza o manipola l'elenco della cronologia.\n"
"    \n"
"    Visualizza l'elenco della cronologia con i numeri di riga, aggiungendo a "
"ciascuna voce\n"
"    modificata il prefisso \"*\".  Un argomento pari a N elenca solo le "
"ultime N voci.\n"
"    \n"
"    Opzioni:\n"
"      -c\tPulisce la cronologia eliminando tutte le voci\n"
"      -d posiz\tElimina la voce della cronologia alla posizione POSIZ.\n"
"    \t\tPosizioni negative indicano di contare all'indietro dalla fine\n"
"    \t\tdell'elenco della cronologia.\n"
"    \n"
"      -a\tAccoda righe al file della cronologia relative alla sessione "
"attuale\n"
"      -n\tLegge tutte le righe non ancora lette dal file della cronologia\n"
"    \t\te le accodano all'elenco della cronologia\n"
"      -r\tLegge il file della cronologia e ne accoda il contenuto all'elenco\n"
"    \t\tdella cronologia\n"
"      -w\tScrive la cronologia corrente nel file della cronologia\n"
"    \n"
"      -p\tEffettua l'espansione della cronologia su ciascun ARG e visualizza "
"il\n"
"    \t\trisultato senza memorizzarlo nell'elenco della cronologia\n"
"      -s\tAccoda gli ARG all'elenco della cronologia come una voce singola\n"
"    \n"
"    Se viene fornito il NOMEFILE, viene usato come file della cronologia. \n"
"    Altrimenti, se HISTFILE è valorizzato, viene usato quest'ultimo. Se\n\n"
"    NOMEFILE non viene fornito, e HISTFILE non è settato oppure è null, le\n"
"    opzioni -a, -n, -r e -w non hanno effetto e termina con successo.\n"
"    \n"
"    Se la variabile $HISTTIMEFORMAT è impostata e non è nulla, il suo valore "
"viene usato\n"
"    come una stringa di formato per strftime(3) per stampare l'orario "
"associato a ciascuna\n"
"    voce di cronologia visualizzata.  Altrimenti non viene stampato alcun "
"orario.\n"
"    \n"
"    Il comando interno fc opera anche sull'elenco della cronologia.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o "
"si riscontri un errore."

Nella spiegazione del parametro «-n» c'è un «accodano» che credo vada al
singolare.

[...]
#: builtins.c:945
msgid ""
"Send a signal to a job.\n"
"    \n"
"    Send the processes identified by PID or JOBSPEC the signal named by\n"
"    SIGSPEC or SIGNUM.  If neither SIGSPEC nor SIGNUM is present, then\n"
"    SIGTERM is assumed.\n"
"    \n"
"    Options:\n"
"      -s sig\tSIG is a signal name\n"
"      -n sig\tSIG is a signal number\n"
"      -l\tlist the signal names; if arguments follow `-l' they are\n"
"    \t\tassumed to be signal numbers for which names should be listed\n"
"      -L\tsynonym for -l\n"
"    \n"
"    Kill is a shell builtin for two reasons: it allows job IDs to be used\n"
"    instead of process IDs, and allows processes to be killed if the limit\n"
"    on processes that you can create is reached.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or an error occurs."
msgstr ""
"Invia un segnale a un job.\n"
"    \n"
"    Invia il segnale chiamato dallo SPECSEGN o dal NUMSEGN ai processi "
"identificati\n"
"    dal PID o dallo SPECJOB.  Se non è presente né lo SPECSEGN né il NUMSEGN,"
" viene\n"
"    allora considerato SIGTERM.\n"
"    \n"
"    Opzioni:\n"
"      -s segn\tSEGN è il nome di un segnale\n"
"      -n segn\tSEGN è il numero di un segnale\n"
"      -l\telenca i nomi dei segnali; se ci sono argomenti dopo \"-l\"\n"
"    \t\tvengono considerati come numeri di segnale di cui elencare i nomi\n"
"      -L\tsinonimo di -l\n"
"    \n"
"    Kill è un comando interno di shell per due ragioni: permette di usare\n"
"    gli ID dei job invece degli ID dei processi e permette di uccidere quei\n"
"    processi che abbiano raggiunto un numero limite prefissato di processi\n"
"    creabili.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o "
"si riscontri un errore."

il limite di processi non è una caratteristica del processo, ma dell'utente
(o del container, ma quella è un'altra storia). Vale a dire che non può
capitare che un processo abbia raggiunto il limite di processi. Invece capita
che l'utente abbia un limite e lo raggiunga. In questo caso, se kill fosse un
comando esterno, la bash dovrebbe creare un processo per eseguirlo, ma questo
fallirebbe a causa del limite. Invece in quanto comando interno, viene
eseguito dallo stesso processo della bash, senza incappare nel limite di processi.

[...]
#: builtins.c:1064
msgid ""
"Return from a shell function.\n"
"    \n"
"    Causes a function or sourced script to exit with the return value\n"
"    specified by N.  If N is omitted, the return status is that of the\n"
"    last command executed within the function or script.\n"
"    \n"
"    Exit Status:\n"
"    Returns N, or failure if the shell is not executing a function or script."
msgstr ""
"Ritorna da una funzione di shell.\n"
"    \n"
"    Causa l'uscita da una funzione o da uno script sorgente con il valore "
"di\n"
"    ritorno specificato da N.  Se N è omesso, lo stato di ritorno è quello\n"
"    dell'ultimo comando eseguito all'interno della funzione o dello script.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce N, oppure insuccesso se la shell non sta eseguendo una "
"funzione o uno script."

#: builtins.c:1077
msgid ""
"Set or unset values of shell options and positional parameters.\n"
"    \n"
"    Change the value of shell attributes and positional parameters, or\n"
"    display the names and values of shell variables.\n"
"    \n"
"    Options:\n"
"      -a  Mark variables which are modified or created for export.\n"
"      -b  Notify of job termination immediately.\n"
"      -e  Exit immediately if a command exits with a non-zero status.\n"
"      -f  Disable file name generation (globbing).\n"
"      -h  Remember the location of commands as they are looked up.\n"
"      -k  All assignment arguments are placed in the environment for a\n"
"          command, not just those that precede the command name.\n"
"      -m  Job control is enabled.\n"
"      -n  Read commands but do not execute them.\n"
"      -o option-name\n"
"          Set the variable corresponding to option-name:\n"
"              allexport    same as -a\n"
"              braceexpand  same as -B\n"
"              emacs        use an emacs-style line editing interface\n"
"              errexit      same as -e\n"
"              errtrace     same as -E\n"
"              functrace    same as -T\n"
"              hashall      same as -h\n"
"              histexpand   same as -H\n"
"              history      enable command history\n"
"              ignoreeof    the shell will not exit upon reading EOF\n"
"              interactive-comments\n"
"                           allow comments to appear in interactive commands\n"
"              keyword      same as -k\n"
"              monitor      same as -m\n"
"              noclobber    same as -C\n"
"              noexec       same as -n\n"
"              noglob       same as -f\n"
"              nolog        currently accepted but ignored\n"
"              notify       same as -b\n"
"              nounset      same as -u\n"
"              onecmd       same as -t\n"
"              physical     same as -P\n"
"              pipefail     the return value of a pipeline is the status of\n"
"                           the last command to exit with a non-zero status,\n"
"                           or zero if no command exited with a non-zero "
"status\n"
"              posix        change the behavior of bash where the default\n"
"                           operation differs from the Posix standard to\n"
"                           match the standard\n"
"              privileged   same as -p\n"
"              verbose      same as -v\n"
"              vi           use a vi-style line editing interface\n"
"              xtrace       same as -x\n"
"      -p  Turned on whenever the real and effective user ids do not match.\n"
"          Disables processing of the $ENV file and importing of shell\n"
"          functions.  Turning this option off causes the effective uid and\n"
"          gid to be set to the real uid and gid.\n"
"      -t  Exit after reading and executing one command.\n"
"      -u  Treat unset variables as an error when substituting.\n"
"      -v  Print shell input lines as they are read.\n"
"      -x  Print commands and their arguments as they are executed.\n"
"      -B  the shell will perform brace expansion\n"
"      -C  If set, disallow existing regular files to be overwritten\n"
"          by redirection of output.\n"
"      -E  If set, the ERR trap is inherited by shell functions.\n"
"      -H  Enable ! style history substitution.  This flag is on\n"
"          by default when the shell is interactive.\n"
"      -P  If set, do not resolve symbolic links when executing commands\n"
"          such as cd which change the current directory.\n"
"      -T  If set, the DEBUG and RETURN traps are inherited by shell "
"functions.\n"
"      --  Assign any remaining arguments to the positional parameters.\n"
"          If there are no remaining arguments, the positional parameters\n"
"          are unset.\n"
"      -   Assign any remaining arguments to the positional parameters.\n"
"          The -x and -v options are turned off.\n"
"    \n"
"    If -o is supplied with no option-name, set prints the current shell\n"
"    option settings. If +o is supplied with no option-name, set prints a\n"
"    series of set commands to recreate the current option settings.\n"
"    \n"
"    Using + rather than - causes these flags to be turned off.  The\n"
"    flags can also be used upon invocation of the shell.  The current\n"
"    set of flags may be found in $-.  The remaining n ARGs are positional\n"
"    parameters and are assigned, in order, to $1, $2, .. $n.  If no\n"
"    ARGs are given, all shell variables are printed.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given."
msgstr ""
"Imposta o azzera i valori delle opzioni di shell e dei parametri posizionali."
"\n"
"    \n"
"    Cambia il valore degli attributi di shell e dei parametri posizionali,\n"
"    o visualizza i nomi e i valori delle variabili di shell.\n"
"    \n"
"    Opzioni:\n"
"      -a  Marca le variabili che sono modificate o create per l'esportazione."
"\n"
"      -b  Notifica immediatamente della terminazione di un job.\n"
"      -e  Esce immediatamente se un comando esce con uno stato diverso da\n"
"          zero.\n"
"      -f  Disabilita la generazione dei nomi file (globbing).\n"
"      -h  Ricorda la posizione dei comandi quando vengono cercati.\n"
"      -k  Tutte le assegnazioni degli argomenti sono posizionate nell'ambiente\n"
"          per un comando, non solo quelle che precedono il nome del comando\n"
"          stesso.\n"
"      -m  Abilita il controllo dei job.\n"
"      -n  Legge i comandi senza eseguirli.\n"
"      -o nome-opzione\n"
"          Imposta la variabile corrispondente al nome dell'opzione:\n"
"              allexport    Uguale a -a\n"
"              braceexpand  Uguale a -B\n"
"              emacs        Usa una interfaccia di modifica righe di stile\n"
"                           emacs\n"
"              errexit      Uguale a -e\n"
"              errtrace     Uguale a -E\n"
"              functrace    Uguale a -T\n"
"              hashall      Uguale a -h\n"
"              histexpand   Uguale a -H\n"
"              history      Abilita la cronologia comandi\n"
"              ignoreeof    Non esce dalla shell dopo aver raggiunto EOF\n"
"              interactive-comments\n"
"                           Permette ai commenti di comparire nei comandi\n"
"                           interattivi\n"
"              keyword      Uguale a -k\n"
"              monitor      Uguale a -m\n"
"              noclobber    Uguale a -C\n"
"              noexec       Uguale a -n\n"
"              noglob       Uguale a -f\n"
"              nolog        Accettato al momento ma ignorato\n"
"              notify       Uguale a -b\n"
"              nounset      Uguale a -u\n"
"              onecmd       Uguale a -t\n"
"              physical     Uguale a -P\n"
"              pipefail     Il valore restituito da una pipeline è lo stato\n"
"                           dell'ultimo comando che esce con uno stato\n"
"                           diverso da zero, oppure zero se nessun comando\n"
"                           esce con uno stato diverso da zero\n"
"              posix        Modifica il comportamento di bash dove\n"
"                           l'operazione predefinita è diversa dallo standard\n"
"                           Posix per rispettare\n"
"                           lo standard stesso\n"
"              privileged   Uguale a -p\n"
"              verbose      Uguale a -v\n"
"              vi           Usa un'editor di riga stile vi\n"
"              xtrace       Uguale a -x\n"
"      -p  Abilitato ogni qualvolta gli id utente reali non corrispondono a\n"
"          quelli effettivi. Disabilita l'analisi del file $ENV e l'importazione\n"
"          delle funzioni di shell.  Disabilitare questa opzione comporta\n"
"          l'impostazione degli uid e gid effettivi a uid e gid reali.\n"
"      -t  Esce dopo la lettura e l'esecuzione di un comando.\n"
"      -u  Tratta le variabili non impostate come un errore durante la\n"
"          sostituzione.\n"
"      -v  Stampa le righe di input della shell mentre vengono lette.\n"
"      -x  Stampa i comandi e i loro argomenti mentre vengono eseguiti.\n"
"      -B  La shell effettua l'espansione delle parentesi graffe\n"
"      -C  Se impostata, non permette la sovrascrittura dei file regolari\n"
"          esistenti da parte della redirezione dell'output.\n"
"      -E  Se impostata, la trap ERR è ereditata dalle funzioni di shell.\n"
"      -H  Abilita la sostituzione per la cronologia stile !.  Questo flag è\n"
"          abilitato in modo predefinito quando la shell è interattiva.\n"
"      -P  Se impostata, non risolve i link simbolici quando vengono eseguiti\n"
"          dei comandi come cd, che cambiano la directory corrente.\n"
"      -T  Se impostata, le trap DEBUG e RETURN sono ereditate dalle funzioni\n"
"          di shell.\n"
"      --  Assegna tutti gli argomenti rimasti ai parametri posizionali.\n"
"          Se non sono rimasti argomenti, i parametri posizionali\n"
"          vengono azzerati.\n"
"      -   Assegna tutti gli argomenti rimasti ai parametri posizionali.\n"
"          Le opzioni -x e -v sono disabilitate.\n"
"    \n"
"    Se viene passato -o senza nome-opzione, set stampa le impostazioni\n"
"    correnti delle opzioni della shell. Se viene passato +o senza\n"
"    nome-opzione, set stampa una serie di comandi set per ricreare le\n"
"    impostazioni correnti dell'opzione.\n"
"    \n"
"    Usando + al posto di - questi flag vengono disabilitati.  I\n"
"    flag possono anche essere usati subito dopo l'invocazione della shell.\n"
"    Il set corrente dei flag può essere trovato in $-.  I restanti n ARG sono\n"
"    parametri posizionali e vengono assegnati, in ordine, a $1, $2, .. $n.\n"
"    Se non vengono forniti ARG, vengono stampate tutte le variabili di shell.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornita una opzione non valida."

Qui la frase mi pare sbagliata:
      -p  Abilitato ogni qualvolta gli id utente reali non corrispondono a\n
          quelli effettivi. Disabilita l'analisi del file $ENV e l'importazione\n
nel senso che gli id reali ed effettivo sono uno ciascuno. La cambierei così:
      -p  Abilitato ogni qualvolta l'id utente reale non corrisponde a\n
          quello effettivo. Disabilita l'analisi del file $ENV e l'importazione\n

[...]
#: builtins.c:1166
msgid ""
"Unset values and attributes of shell variables and functions.\n"
"    \n"
"    For each NAME, remove the corresponding variable or function.\n"
"    \n"
"    Options:\n"
"      -f\ttreat each NAME as a shell function\n"
"      -v\ttreat each NAME as a shell variable\n"
"      -n\ttreat each NAME as a name reference and unset the variable itself\n"
"    \t\trather than the variable it references\n"
"    \n"
"    Without options, unset first tries to unset a variable, and if that "
"fails,\n"
"    tries to unset a function.\n"
"    \n"
"    Some variables cannot be unset; also see `readonly'.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or a NAME is read-only."
msgstr ""
"Azzera i valori e gli attributi delle variabili e delle funzioni di shell.\n"
"    \n"
"    Per ciascun NOME, rimuove la corrispondente variabile o funzione.\n"
"    \n"
"    Opzioni:\n"
"      -f\tconsidera ciascun NOME come una funzione di shell\n"
"      -v\tconsidera ciascun NOME come una variabile di shell\n"
"      -n\tconsidera ciascun NOME come un riferimento a nome e reimposta la\n"
"    \t\tvariabile stessa piuttosto che la variabile referenziata\n"
"    \n"
"    Senza opzioni, unset prova prima ad azzerare una variabile e, in caso di\n"
"    insuccesso, prova ad azzerare una funzione.\n"
"    \n"
"    Alcune variabili non possono essere azzerate; vedere anche \"readonly\"."
"\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o\n"
"    NOME sia in sola lettura."

Qui non userei «azzera» ma «annulla» o «elimina» in quanto la prima, almeno a me, ricorda
l'assegnamento del valore zero, mentre le altre mi sembrano più complete. 

#: builtins.c:1188
msgid ""
"Set export attribute for shell variables.\n"
"    \n"
"    Marks each NAME for automatic export to the environment of subsequently\n"
"    executed commands.  If VALUE is supplied, assign VALUE before exporting."
"\n"
"    \n"
"    Options:\n"
"      -f\trefer to shell functions\n"
"      -n\tremove the export property from each NAME\n"
"      -p\tdisplay a list of all exported variables and functions\n"
"    \n"
"    An argument of `--' disables further option processing.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or NAME is invalid."
msgstr ""
"Imposta l'attributo di esportazione per le variabili di shell.\n"
"    \n"
"    Marca ciascun NOME per l'esportazione automatica all'ambiente dei\n"
"    comandi eseguiti successivi.  Se è fornito un VALORE, lo assegna prima\n"
"    dell'esportazione.\n"
"    \n"
"    Opzioni:\n"
"      -f\tRimanda alle funzioni di shell\n"
"      -n\tRimuove la proprietà di esportazione da ciascun NOME\n"
"      -p\tVisualizza un elenco di tutte le variabili e funzioni esportate\n"
"    \n"
"    L'argomento \"--\" disabilita l'elaborazione di ulteriori opzioni.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o\n"
"    il NOME non sia valido."

Il parametro «-f» vuole un nome di funzione anziché di variabile, cioè aggiunge
a una funzione l'attributo che la farà vedere a eventuali script shell lanciati
successivamente. Credo che «rimanda» andrebbe cambiato a «si riferisce» o «si
applica» o qualcosa del genere.

[...]
#: builtins.c:1207
msgid ""
"Mark shell variables as unchangeable.\n"
"    \n"
"    Mark each NAME as read-only; the values of these NAMEs may not be\n"
"    changed by subsequent assignment.  If VALUE is supplied, assign VALUE\n"
"    before marking as read-only.\n"
"    \n"
"    Options:\n"
"      -a\trefer to indexed array variables\n"
"      -A\trefer to associative array variables\n"
"      -f\trefer to shell functions\n"
"      -p\tdisplay a list of all readonly variables or functions,\n"
"    \t\tdepending on whether or not the -f option is given\n"
"    \n"
"    An argument of `--' disables further option processing.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or NAME is invalid."
msgstr ""
"Marca la variabili di shell come non modificabili.\n"
"    \n"
"    Marca ciascun NOME in sola lettura; i valori di questi NOMI non possono\n"
"    essere modificati da un assegnamento successivo.  Se viene fornito il\n"
"     VALORE, lo assegna prima di marcarlo in sola lettura.\n"
"    \n"
"    Opzioni:\n"
"      -a\trimanda alle variabili degli array indicizzati\n"
"      -A\trimanda alle variabili degli array associativi\n"
"      -f\trimanda alle funzioni di shell\n"
"      -p\tvisualizza un elenco di tutte le variabili oppure funzioni in sola\n"
"    \t\tlettura, a seconda che venga passata o meno l'opzione -f\n"
"    \n"
"    Un argomento pari a \"--\" disabilita ulteriori analisi delle opzioni.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornita una opzione non valida\n"
"    o NOME non sia valido."

Anche qui, come prima, viene utilizzato «rimanda» che, almeno a me, suona un po' 
strano.

[...]
#: builtins.c:1292
msgid ""
"Evaluate conditional expression.\n"
"    \n"
"    Exits with a status of 0 (true) or 1 (false) depending on\n"
"    the evaluation of EXPR.  Expressions may be unary or binary.  Unary\n"
"    expressions are often used to examine the status of a file.  There\n"
"    are string operators and numeric comparison operators as well.\n"
"    \n"
"    The behavior of test depends on the number of arguments.  Read the\n"
"    bash manual page for the complete specification.\n"
"    \n"
"    File operators:\n"
"    \n"
"      -a FILE        True if file exists.\n"
"      -b FILE        True if file is block special.\n"
"      -c FILE        True if file is character special.\n"
"      -d FILE        True if file is a directory.\n"
"      -e FILE        True if file exists.\n"
"      -f FILE        True if file exists and is a regular file.\n"
"      -g FILE        True if file is set-group-id.\n"
"      -h FILE        True if file is a symbolic link.\n"
"      -L FILE        True if file is a symbolic link.\n"
"      -k FILE        True if file has its `sticky' bit set.\n"
"      -p FILE        True if file is a named pipe.\n"
"      -r FILE        True if file is readable by you.\n"
"      -s FILE        True if file exists and is not empty.\n"
"      -S FILE        True if file is a socket.\n"
"      -t FD          True if FD is opened on a terminal.\n"
"      -u FILE        True if the file is set-user-id.\n"
"      -w FILE        True if the file is writable by you.\n"
"      -x FILE        True if the file is executable by you.\n"
"      -O FILE        True if the file is effectively owned by you.\n"
"      -G FILE        True if the file is effectively owned by your group.\n"
"      -N FILE        True if the file has been modified since it was last "
"read.\n"
"    \n"
"      FILE1 -nt FILE2  True if file1 is newer than file2 (according to\n"
"                       modification date).\n"
"    \n"
"      FILE1 -ot FILE2  True if file1 is older than file2.\n"
"    \n"
"      FILE1 -ef FILE2  True if file1 is a hard link to file2.\n"
"    \n"
"    String operators:\n"
"    \n"
"      -z STRING      True if string is empty.\n"
"    \n"
"      -n STRING\n"
"         STRING      True if string is not empty.\n"
"    \n"
"      STRING1 = STRING2\n"
"                     True if the strings are equal.\n"
"      STRING1 != STRING2\n"
"                     True if the strings are not equal.\n"
"      STRING1 < STRING2\n"
"                     True if STRING1 sorts before STRING2 lexicographically."
"\n"
"      STRING1 > STRING2\n"
"                     True if STRING1 sorts after STRING2 lexicographically.\n"
"    \n"
"    Other operators:\n"
"    \n"
"      -o OPTION      True if the shell option OPTION is enabled.\n"
"      -v VAR         True if the shell variable VAR is set.\n"
"      -R VAR         True if the shell variable VAR is set and is a name\n"
"                     reference.\n"
"      ! EXPR         True if expr is false.\n"
"      EXPR1 -a EXPR2 True if both expr1 AND expr2 are true.\n"
"      EXPR1 -o EXPR2 True if either expr1 OR expr2 is true.\n"
"    \n"
"      arg1 OP arg2   Arithmetic tests.  OP is one of -eq, -ne,\n"
"                     -lt, -le, -gt, or -ge.\n"
"    \n"
"    Arithmetic binary operators return true if ARG1 is equal, not-equal,\n"
"    less-than, less-than-or-equal, greater-than, or greater-than-or-equal\n"
"    than ARG2.\n"
"    \n"
"    Exit Status:\n"
"    Returns success if EXPR evaluates to true; fails if EXPR evaluates to\n"
"    false or an invalid argument is given."
msgstr ""
"Analizza espressioni condizionali.\n"
"    \n"
"    Esce con stato 0 (vero) o 1 (falso) in base all'analisi\n"
"    dell'ESPR.  Le espressioni possono essere unarie o binarie.  Le\n"
"    espressioni unarie sono spesso usate per esaminare lo stato di un file.\n"
"    Esistono anche operatori di stringa e di comparazione numerica.\n"
"    \n"
"    Il comportamento del test dipende dal numero degli argomenti.  Leggere\n"
"    la pagina di manuale di bash per le specifiche complete.\n"
"    \n"
"    Operatori su file:\n"
"    \n"
"      -a FILE        Vero se il file esiste.\n"
"      -b FILE        Vero se è un file speciale a blocchi.\n"
"      -c FILE        Vero se è un file speciale a caratteri.\n"
"      -d FILE        Vero se il file è una directory.\n"
"      -e FILE        Vero se il file esiste.\n"
"      -f FILE        Vero se il file esiste ed è un file regolare.\n"
"      -g FILE        Vero se il file è un set-group-id.\n"
"      -h FILE        Vero se il file è un link simbolico.\n"
"      -L FILE        Vero se il file è un link simbolico.\n"
"      -k FILE        Vero se il file ha il suo bit \"sticky\" impostato.\n"
"      -p FILE        Vero se il file è una pipe con nome.\n"
"      -r FILE        Vero se il file è leggibile dall' utente corrente.\n"
"      -s FILE        Vero se il file esiste e non è vuoto.\n"
"      -S FILE        Vero se il file è un socket.\n"
"      -t FD          Vero se il descrittore di file è aperto su un terminale."
"\n"
"      -u FILE        Vero se il file è un set-user-id.\n"
"      -w FILE        Vero se il file è scrivibile dall'utente corrente.\n"
"      -x FILE        Vero se il file è eseguibile dall'utente corrente.\n"
"      -O FILE        Vero se l'utente corrente è il reale proprietario del\n"
"                     file.\n"
"      -G FILE        Vero se il gruppo dell'utente corrente è il reale\n"
"                     proprietario del file.\n"
"      -N FILE        Vero se il file è stato modificato dall'ultima volta\n"
"                     che è stato letto.\n"
"    \n"
"      FILE1 -nt FILE2  Vero se il file1 è più recente del file2 (in accordo "
"                       con la data di modifica).\n"
"    \n"
"      FILE1 -ot FILE2  Vero se il file1 è più vecchio del file2.\n"
"    \n"
"      FILE1 -ef FILE2  Vero se il file1 è un link hardware al file2.\n"
"    \n"
"    Operatori di stringa:\n"
"    \n"
"      -z STRINGA     Vero se la stringa e vuota.\n"
"    \n"
"      -n STRINGA\n"
"         STRINGA     Vero se la stringa non è vuota.\n"
"    \n"
"      STRINGA1 = STRINGA2\n"
"                     Vero se le stringhe sono uguali.\n"
"      STRINGA1 != STRINGA2\n"
"                     Vero se le stringhe non sono uguali.\n"
"      STRINGA1 < STRINGA2\n"
"                     Vero se la STRINGA1 viene ordinata lessicograficamente\n"
"                     prima della STRINGA2.\n"
"      STRINGA1 > STRINGA2\n"
"                     Vero se la STRINGA1 viene ordinata lessicograficamente\n"
"                     dopo la STRINGA2.\n"
"    \n"
"    Altri operatori:\n"
"    \n"
"      -o OPZIONE     Vero se l'OPZIONE di shell è abilitata.\n"
"      -v VAR         Vero se la variabile di shell VAR è impostata.\n"
"      -R VAR         Vero se la variabile di shell VAR è impostata\n"
"                     ed è un riferimento a nome.\n"
"      ! ESPR         Vero se l'ESPR è falsa.\n"
"      ESPR1 -a ESPR2 Vero se entrambe le espressioni espr1 E espr2 sono vere."
"\n"
"      ESPR1 -o ESPR2 Vero se sono vere le espressioni espr1 O espr2.\n"
"    \n"
"      arg1 OP arg2   Test aritmetici.  OP è uno tra -eq, -ne,\n"
"                     -lt, -le, -gt oppure -ge.\n"
"    \n"
"    Gli operatori aritmetici binari restituiscono vero se ARG1 è uguale, non\n"
"    uguale, più piccolo di, più piccolo o uguale, più grande di o più grande\n"
"    o uguale ad ARG2.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo se l'ESPR viene valutata vera; insuccesso se l'ESPR\n"
"    viene valutata falsa o viene fornito un argomento non valido."

Mah, secondo me c'è un errore nella parte inglese, ripetuto in quella italiana, per
l'operatore «-n». Non capisco perché sia scritto STRING due volte. Tu lo sai?

Poi, questa traduzione mi pare ambigua o sbagliata:
      ESPR1 -o ESPR2 Vero se sono vere le espressioni espr1 O espr2.\n
io la tradurrei così:
      ESPR1 -o ESPR2 Vero se è vera almeno una delle due espressioni.\n

#: builtins.c:1374
msgid ""
"Evaluate conditional expression.\n"
"    \n"
"    This is a synonym for the \"test\" builtin, but the last argument must\n"
"    be a literal `]', to match the opening `['."
msgstr ""
"Valuta l'espressione condizionale.\n"
"    \n"
"    Questo è un sinonimo del comando interno \"test\", ma l'ultimo argomento\n"
"    deve essere un \"]\" letterale per corrispondere al \"[\" di apertura."

Qui hai tradotto l'«evaluate» iniziale come «Valuta», mentre nella stringa precedente
hai fatto una scelta diversa. Io preferisco questa traduzione, ma in ogni caso le
farei eguali.

[...]
#: builtins.c:1395
msgid ""
"Trap signals and other events.\n"
"    \n"
"    Defines and activates handlers to be run when the shell receives "
"signals\n"
"    or other conditions.\n"
"    \n"
"    ACTION is a command to be read and executed when the shell receives the\n"
"    signal(s) SIGNAL_SPEC.  If ACTION is absent (and a single SIGNAL_SPEC\n"
"    is supplied) or `-', each specified signal is reset to its original\n"
"    value.  If ACTION is the null string each SIGNAL_SPEC is ignored by the\n"
"    shell and by the commands it invokes.\n"
"    \n"
"    If a SIGNAL_SPEC is EXIT (0) ACTION is executed on exit from the shell.\n"
"    If a SIGNAL_SPEC is DEBUG, ACTION is executed before every simple "
"command\n"
"    and selected other commands. If a SIGNAL_SPEC is RETURN, ACTION is\n"
"    executed each time a shell function or a script run by the . or source\n"
"    builtins finishes executing.  A SIGNAL_SPEC of ERR means to execute "
"ACTION\n"
"    each time a command's failure would cause the shell to exit when the -e\n"
"    option is enabled.\n"
"    \n"
"    If no arguments are supplied, trap prints the list of commands "
"associated\n"
"    with each trapped signal in a form that may be reused as shell input to\n"
"    restore the same signal dispositions.\n"
"    \n"
"    Options:\n"
"      -l\tprint a list of signal names and their corresponding numbers\n"
"      -p\tdisplay the trap commands associated with each SIGNAL_SPEC in a\n"
"    \t\tform that may be reused as shell input; or for all trapped\n"
"    \t\tsignals if no arguments are supplied\n"
"      -P\tdisplay the trap commands associated with each SIGNAL_SPEC. At "
"least\n"
"    \t\tone SIGNAL_SPEC must be supplied. -P and -p cannot be used\n"
"    \t\ttogether.\n"
"    \n"
"    Each SIGNAL_SPEC is either a signal name in <signal.h> or a signal "
"number.\n"
"    Signal names are case insensitive and the SIG prefix is optional.  A\n"
"    signal may be sent to the shell with \"kill -signal $$\".\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless a SIGSPEC is invalid or an invalid option is "
"given."
msgstr ""
"Cattura segnali e altri eventi.\n"
"    \n"
"    Definisce e attiva i gestori da eseguire quando la shell riceve segnali\n"
"    o altre condizioni.\n"
"    \n"
"    AZIONE è un comando da leggere ed eseguire quando la shell riceve il o i\n"
"    segnali SPEC_SEGNALE. Se AZIONE o \"-\" non sono presenti (e viene fornito\n"
"    un singolo SPEC_SEGNALE), ciascun segnale specificato è riportato\n"
"    al suo valore originario.  Se AZIONE è pari a null, ogni SPEC_SEGNALE è\n"
"    ignorato dalla shell e dai comandi che invoca.\n"
"    \n"
"    Se uno SPEC_SEGNALE è EXIT (0) AZIONE viene eseguita all'uscita dalla shell.\n"
"    Se uno SPEC_SEGNALE è DEBUG, AZIONE viene eseguita prima di ogni comando\n"
"    semplice e altri comandi selezionati. Se uno SPEC_SEGNALE è RETURN, AZIONE\n"
"    viene eseguita al termine di ogni esecuzione di una funzione di shell o di\n"
"    uno script avviato dai comandi interni \".\" o source.\n"
"    Uno SPEC_SEGNALE di ERR indica di eseguire AZIONE ogni volta che un errore\n"
"    di comando causerebbe l'uscita della shell quando è abilitata l'opzione -e.\n"
"    \n"
"    Se non vengono forniti argomenti, trap stampa l'elenco di comandi\n"
"    associati a ciascun segnale catturato, in un formato che può essere\n"
"    riutilizzato come input di shell per ricreare le stesse impostazioni\n"
"    sulla cattura dei segnali.\n"
"    \n"
"    Ozioni:\n"
"      -l\tstampa un elenco di nomi di segnale e i loro corrispondenti numeri\n"
"      -p\tvisualizza i comandi trap associati a ciascun SPEC_SEGNALE in un\n"
"    \t\tformato che può essere riutilizzato come input di shell; oppure per\n"
"    \t\ttutti i signali catturati, se non vengono passati argomenti\n"
"      -P\tmostra i comandi trap associati a ciascun SPEC_SEGNALE. Deve essere\n "
"    \t\tfornito almeno un SPEC_SEGNALE. -P e -p non possono essere usate\n"
"    \t\tinsieme.\n"
"    \n"
"    \n"
"    Ciascun SPEC_SEGNALE è un nome di segnale in <signal.h> oppure un numero\n"
"    di segnale.\n"
"    I nomi di segnale sono case insensitive e il prefisso SIG è opzionale.\n"
"    Per inviare un segnale alla shell usare \"kill -signal $$\".\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che SPEC_SEGNALE non sia valido o si fornisca\n"
"    una opzione non valida."

Non saprei bene cosa sia null, genericamente. Direi invece stringa nulla nella
frase che segue:
    al suo valore originario.  Se AZIONE è pari a null, ogni SPEC_SEGNALE è\n

#: builtins.c:1438
msgid ""
"Display information about command type.\n"
"    \n"
"    For each NAME, indicate how it would be interpreted if used as a\n"
"    command name.\n"
"    \n"
"    Options:\n"
"      -a\tdisplay all locations containing an executable named NAME;\n"
"    \t\tincludes aliases, builtins, and functions, if and only if\n"
"    \t\tthe `-p' option is not also used\n"
"      -f\tsuppress shell function lookup\n"
"      -P\tforce a PATH search for each NAME, even if it is an alias,\n"
"    \t\tbuiltin, or function, and returns the name of the disk file\n"
"    \t\tthat would be executed\n"
"      -p\treturns either the name of the disk file that would be executed,\n"
"    \t\tor nothing if `type -t NAME' would not return `file'\n"
"      -t\toutput a single word which is one of `alias', `keyword',\n"
"    \t\t`function', `builtin', `file' or `', if NAME is an alias,\n"
"    \t\tshell reserved word, shell function, shell builtin, disk file,\n"
"    \t\tor not found, respectively\n"
"    \n"
"    Arguments:\n"
"      NAME\tCommand name to be interpreted.\n"
"    \n"
"    Exit Status:\n"
"    Returns success if all of the NAMEs are found; fails if any are not "
"found."
msgstr ""
"Visualizza informazioni sul tipo di comando.\n"
"    \n"
"    Per ciascun NOME, indica come sarebbe interpretato se fosse usato come\n"
"    un nome di comando.\n"
"    \n"
"    Opzioni:\n"
"      -a\tVisualizza tutte le posizioni contenenti un eseguibile chiamato "
"NOME,\n"
"    \t\tincludendo alias, comandi interni e funzioni se e solo se\n"
"    \t\tnon viene usata anche l'opzione \"-p\"\n"
"      -f\tnon esegue la ricerca delle funzioni di shell\n"
"      -P\tforza una ricerca del PERCORSO per ciascun NOME anche se è un "
"alias,\n"
"    \t\tun comando interno o una funzione, e restituisce il nome del file su "
"disco\n"
"    \t\tche sarebbe eseguito\n"
"      -p\trestituisce o il nome del file su disco che sarebbe eseguito,\n"
"    \t\toppure niente se \"type -t NOME\" non restituisce \"file\".\n"
"      -t\tvisualizza una singola parola che è una tra \"alias\", \"keyword\","
"\n"
"    \t\t\"function\", \"builtin\", \"file\" or \"\", se il NOME è\n"
"    \t\trispettivamente un alias, una parola riservata di shell, una\n"
"    \t\tfunzione di shell, un comando interno di shell,\n"
"    \t\tun file su disco oppure non trovato\n"
"    \n"
"    Argomenti:\n"
"      NOME\tIl nome del comando da interpretare.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo se tutti i NOMI vengono trovati; insuccesso in caso\n"
"    contrario."

nelle descrizioni degli argomenti, nei comandi precedenti, hai sempre usato la
maiuscola iniziale, qui invece solo per l'opzione -a, dove «Visualizza» è maiuscolo.
Io, per uniformità, li metterei tutti in maiuscolo.

[...]
#: builtins.c:1469
msgid ""
"Modify shell resource limits.\n"
"    \n"
"    Provides control over the resources available to the shell and "
"processes\n"
"    it creates, on systems that allow such control.\n"
"    \n"
"    Options:\n"
"      -S\tuse the `soft' resource limit\n"
"      -H\tuse the `hard' resource limit\n"
"      -a\tall current limits are reported\n"
"      -b\tthe socket buffer size\n"
"      -c\tthe maximum size of core files created\n"
"      -d\tthe maximum size of a process's data segment\n"
"      -e\tthe maximum scheduling priority (`nice')\n"
"      -f\tthe maximum size of files written by the shell and its children\n"
"      -i\tthe maximum number of pending signals\n"
"      -k\tthe maximum number of kqueues allocated for this process\n"
"      -l\tthe maximum size a process may lock into memory\n"
"      -m\tthe maximum resident set size\n"
"      -n\tthe maximum number of open file descriptors\n"
"      -p\tthe pipe buffer size\n"
"      -q\tthe maximum number of bytes in POSIX message queues\n"
"      -r\tthe maximum real-time scheduling priority\n"
"      -s\tthe maximum stack size\n"
"      -t\tthe maximum amount of cpu time in seconds\n"
"      -u\tthe maximum number of user processes\n"
"      -v\tthe size of virtual memory\n"
"      -x\tthe maximum number of file locks\n"
"      -P\tthe maximum number of pseudoterminals\n"
"      -R\tthe maximum time a real-time process can run before blocking\n"
"      -T\tthe maximum number of threads\n"
"    \n"
"    Not all options are available on all platforms.\n"
"    \n"
"    If LIMIT is given, it is the new value of the specified resource; the\n"
"    special LIMIT values `soft', `hard', and `unlimited' stand for the\n"
"    current soft limit, the current hard limit, and no limit, respectively.\n"
"    Otherwise, the current value of the specified resource is printed.  If\n"
"    no option is given, then -f is assumed.\n"
"    \n"
"    Values are in 1024-byte increments, except for -t, which is in seconds;\n"
"    -p, which is in increments of 512 bytes; -R, which is in microseconds;\n"
"    -b, which is in bytes; and -e, -i, -k, -n, -q, -r, -u, -x, and -P,\n"
"    which accept unscaled values.\n"
"    \n"
"    When in posix mode, values supplied with -c and -f are in 512-byte\n"
"    increments.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is supplied or an error occurs."
msgstr ""
"Modifica i limiti delle risorse di shell.\n"
"    \n"
"    Fornisce il controllo sulle risorse disponibili per la shell e per i "
"processi\n"
"    che crea, sui sistemi che permettono tale controllo.\n"
"    \n"
"    Opzioni:\n"
"      -S\tusa il limite di risorse \"leggero\"\n"
"      -H\tusa il limite di risorse \"pesante\"\n"
"      -a\triporta tutti i limiti correnti\n"
"      -b\tla dimensione del buffer del socket\n"
"      -c\tla dimensione massima dei file di core creati\n"
"      -d\tla dimensione massima di un segmento di dati di processo\n"
"      -e\tla priorità massima di scheduling (\"nice\")\n"
"      -f\tla dimensione massima dei file scritti dalla shell e dai suoi "
"figli\n"
"      -i\til numero massimo di segnali pendenti\n"
"      -l\tla dimensione massima di memoria che un processo può impegnare\n"
"      -m\til numero massimo di set residenti\n"
"      -n\til numero massimo di descrittori di file aperti\n"
"      -p\tla dimensione del buffer della pipe\n"
"      -q\til numero massimo di byte nelle code messaggi POSIX\n"
"      -r\tla priorità massima di scheduling in tempo reale\n"
"      -s\tla dimensione massima dello stack\n"
"      -t\tla quantità massima di tempo CPU in secondi\n"
"      -u\til numero massimo di processi utente\n"
"      -v\tla dimensione della memoria virtuale\n"
"      -x\til numero massimo di lock dei file\n"
"      -P\til numero massimo di pseudoterminali\n"
"      -R\til tempo massimo per cui un processo in tempo reale può eseguire\n"
"    \t\tprima di venire bloccato\n"
"      -T\til numero massimo di thread\n"
"    \n"
"    Non tutte le opzioni sono disponibili su tutte le piattaforme.\n"
"    \n"
"    Se viene fornito un LIMITE, questo sarà il nuovo valore della risorsa\n"
"    specificata; i valori LIMITE speciali \"soft\", \"hard\" e \"unlimited\"\n"
"    corrispondono rispettivamente al limite leggero corrente, al limite pesante\n"
"    corrente, e a nessun  limite.\n"
"    Altrimenti viene stampato il valore attuale della risorsa specificata.\n"
"    Se non viene fornita alcuna opzione, si assume -f.\n"
"    \n"
"    I valori sono ad incrementi di 1024-byte, ad eccezione di -t che è in\n"
"    secondi; -p che è ad incrementi di 512 byte; -R che è in microsecondi;\n"
"    -b che è in byte; e -e, -i, -k, -n, -q, -r, -u, -x e -P che accettano\n"
"    valori senza scala.\n"
"    \n"
"    In modalità POSIX i valori forniti a -c e -f sono ad incrementi di 512 byte.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornita una opzione non valida\n"
"    o venga riscontrato un errore."

nella traduzione non hai messo il parametro -k con la sua descrizione. Inoltre,
tradurrei diversamente questi due:
      -l\tla dimensione massima di memoria che un processo può impegnare\n
      -m\til numero massimo di set residenti\n
in
      -l\tla dimensione massima di memoria che un processo può bloccare\n
      -m\tla dimensione massima di memoria utilizzabile\n

[...]
#: builtins.c:1544
msgid ""
"Wait for job completion and return exit status.\n"
"    \n"
"    Waits for each process identified by an ID, which may be a process ID or "
"a\n"
"    job specification, and reports its termination status.  If ID is not\n"
"    given, waits for all currently active child processes, and the return\n"
"    status is zero.  If ID is a job specification, waits for all processes\n"
"    in that job's pipeline.\n"
"    \n"
"    If the -n option is supplied, waits for a single job from the list of "
"IDs,\n"
"    or, if no IDs are supplied, for the next job to complete and returns "
"its\n"
"    exit status.\n"
"    \n"
"    If the -p option is supplied, the process or job identifier of the job\n"
"    for which the exit status is returned is assigned to the variable VAR\n"
"    named by the option argument. The variable will be unset initially, "
"before\n"
"    any assignment. This is useful only when the -n option is supplied.\n"
"    \n"
"    If the -f option is supplied, and job control is enabled, waits for the\n"
"    specified ID to terminate, instead of waiting for it to change status.\n"
"    \n"
"    Exit Status:\n"
"    Returns the status of the last ID; fails if ID is invalid or an invalid\n"
"    option is given, or if -n is supplied and the shell has no unwaited-for\n"
"    children."
msgstr ""
"Attende il completamento del job e lo stato di uscita.\n"
"\n"
"    Attende ogni processo identificato da ID, che può essere un ID di "
"processo\n"
"    oppure una specifica di job, e riporta lo stato di uscita. Se non è "
"fornito ID,\n"
"    attende tutti i processi figli attualmente attivi, e restituisce\n"
"    stato zero. Se ID è una specifica di job, attende tutti i processi "
"nella\n"
"    pipeline di quel job.\n"
"\n"
"    Se viene fornita l'opzione -n, attende un singolo job dalla lista degli "
"ID,\n"
"    oppure, se nessun ID viene fornito, il prossimo job che si completi, e\n"
"    restituisce il suo stato d'uscita.\n"
"\n"
"    Se viene fornita l'opzione -p, l'identificativo del processo o job  di "
"cui\n"
"    viene restituito lo stato d'uscita viene assegnato alla variabile VAR\n"
"    indicata dall'argomento dell'opzione. La variabile sarà inizialmente\n"
"    azzerata, prima di qualsiasi assegnazione. Questo è utile solo quando\n"
"    viene fornita l'opzione -n.\n"
"\n"
"    Se viene fornita l'opzione -f, e il controllo del job è abilitato, "
"attende\n"
"    che l'ID specificato termini, invece di aspettare che cambi stato.\n"
"\n"
"    Stato di uscita:\n"
"    Restituisce lo stato dell'ultimo ID; fallisce se ID non è valido o se\n"
"    viene passata un'opzione non valida, o se viene passato -n e la shell\n"
"    non ha figli da attendere.\n"
" "

Non ho capito se ci sia una riga vuota aggiuntiva alla fine del testo italiano.

[...]
#: builtins.c:1632
msgid ""
"Select words from a list and execute commands.\n"
"    \n"
"    The WORDS are expanded, generating a list of words.  The\n"
"    set of expanded words is printed on the standard error, each\n"
"    preceded by a number.  If `in WORDS' is not present, `in \"$@\"'\n"
"    is assumed.  The PS3 prompt is then displayed and a line read\n"
"    from the standard input.  If the line consists of the number\n"
"    corresponding to one of the displayed words, then NAME is set\n"
"    to that word.  If the line is empty, WORDS and the prompt are\n"
"    redisplayed.  If EOF is read, the command completes.  Any other\n"
"    value read causes NAME to be set to null.  The line read is saved\n"
"    in the variable REPLY.  COMMANDS are executed after each selection\n"
"    until a break command is executed.\n"
"    \n"
"    Exit Status:\n"
"    Returns the status of the last command executed."
msgstr ""
"Seleziona le parole da un elenco ed esegue i comandi.\n"
"    \n"
"    Le PAROLE vengono estese, generando un elenco di parole.  L'insieme\n"
"    di parole estese viene stampato sullo standard error, ognuna delle\n"
"    quali preceduta da un numero.  Se non è presente \"in PAROLE\", viene\n"
"    assunto `in \"$@\".  Viene poi visualizzato il prompt PS3 e viene letta\n"
"    una riga dallo standard input.  Se la riga è composta dal numero che\n"
"    corrisponde a una delle parole visualizzate, NOME è impostato a quella\n"
"    parola.  Se la riga è vuota, Le PAROLE e il prompt vengono\n"
"    rivisualizzati.  Se viene letto EOF, il comando termina.  Se vengono\n"
"    letti altri valori NOME viene impostato a null.  La riga letta viene\n"
"    salvata nella variabile REPLY.  I COMANDI vengono eseguiti dopo ogni\n"
"    selezione finché non viene eseguito un comando di interruzione.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce lo stato di uscita dell'ultimo comando eseguito."

manca la chiusura dell'apice singolo in:
    assunto `in \"$@\".
dovrebbe essere
    assunto `in \"$@\"'.

nella riga che segue c'è una maiuscola di troppo:
    parola.  Se la riga è vuota, Le PAROLE e il prompt vengono\n

[...]
#: builtins.c:1653
msgid ""
"Report time consumed by pipeline's execution.\n"
"    \n"
"    Execute PIPELINE and print a summary of the real time, user CPU time,\n"
"    and system CPU time spent executing PIPELINE when it terminates.\n"
"    \n"
"    Options:\n"
"      -p\tprint the timing summary in the portable Posix format\n"
"    \n"
"    The value of the TIMEFORMAT variable is used as the output format.\n"
"    \n"
"    Exit Status:\n"
"    The return status is the return status of PIPELINE."
msgstr ""
"Riporta il tempo speso nell'esecuzione della pipeline.\n"
"    \n"
"    Esegue la PIPELINE e stampa, quando termina, un sommario del tempo reale,"
" tempo utente della CPU\n"
"    e tempo di sistema della CPU dedicato all'esecuzione della PIPELINE.\n"
"    \n"
"    Opzioni:\n"
"      -p\tStampa il riepilogo dei tempi nel formato portabile Posix format\n"
"    \n"
"    Il valore della variabile TIMEFORMAT è usato come formato di output.\n"
"    \n"
"    Stato di uscita:\n"
"    Viene restituito lo stato della PIPELINE."

credo che «formato» sia ripetuto nella spiegazione dell'opzione -p: toglierei
l'ultima parola.

[...]
#: builtins.c:1699
msgid ""
"Execute commands as long as a test succeeds.\n"
"    \n"
"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS "
"has\n"
"    an exit status of zero.\n"
"    \n"
"    Exit Status:\n"
"    Returns the status of the last command executed."
msgstr ""
"Esegue i comandi finché un test ha successo.\n"
"    \n"
"    Espande ed esegue i COMANDI-2 fino a quando il comando finale nei\n"
"    COMANDI \"while\" ha uno stato di uscita pari a zero.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce lo stato dell'ultimo comando eseguito."

nella parte italiana c'è un \"while\" di troppo, credo.

#: builtins.c:1711
msgid ""
"Execute commands as long as a test does not succeed.\n"
"    \n"
"    Expand and execute COMMANDS-2 as long as the final command in COMMANDS "
"has\n"
"    an exit status which is not zero.\n"
"    \n"
"    Exit Status:\n"
"    Returns the status of the last command executed."
msgstr ""
"Esegue i comandi finché un test non ha successo.\n"
"    \n"
"    Espande ed esegue i COMANDI-2 fino a quando il comando finale nei\n"
"    COMANDI \"until\" ha uno stato di uscita diverso da zero.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce lo stato dell'ultimo comando eseguito."

analogo al precedente: c'è un \"until\" di troppo, credo.

[...]
#: builtins.c:1737
msgid ""
"Define shell function.\n"
"    \n"
"    Create a shell function named NAME.  When invoked as a simple command,\n"
"    NAME runs COMMANDs in the calling shell's context.  When NAME is invoked,"
"\n"
"    the arguments are passed to the function as $1...$n, and the function's\n"
"    name is in $FUNCNAME.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless NAME is readonly."
msgstr ""
"Definisce una funzione di shell.\n"
"    \n"
"    Crea una funzione di shell chiamata NOME.  Quando invocato come un\n"
"    semplice comando, NOME esegue i COMANDI nel contesto delle chiamate di\n"
"    shell.  Quando viene invocato NOME, gli argomenti sono passati alla\n"
"    funzione come $1...$n e il nome della funzione si trova in $FUNCNAME.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che il NOME non sia in sola lettura."

Non è chiaro «nel contesto delle chiamate di shell». Se ho capito bene il significato,
credo sarebbe più chiaro «nel contesto della shell chiamante»

#: builtins.c:1751
msgid ""
"Group commands as a unit.\n"
"    \n"
"    Run a set of commands in a group.  This is one way to redirect an\n"
"    entire set of commands.\n"
"    \n"
"    Exit Status:\n"
"    Returns the status of the last command executed."
msgstr ""
"Raggruppa i comandi come un'unità.\n"
"    \n"
"    Esegue un set di comandi in un gruppo.  Questo è un modo per\n"
"    reindirizzare un intero set di comandi.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce lo stato dell'ultimo comando eseguito."

tradurrei anche «set» con «insieme» o «elenco» o «lista» 

[...]
#: builtins.c:1907
msgid ""
"Remove directories from stack.\n"
"    \n"
"    Removes entries from the directory stack.  With no arguments, removes\n"
"    the top directory from the stack, and changes to the new top directory.\n"
"    \n"
"    Options:\n"
"      -n\tSuppresses the normal change of directory when removing\n"
"    \t\tdirectories from the stack, so only the stack is manipulated.\n"
"    \n"
"    Arguments:\n"
"      +N\tRemoves the Nth entry counting from the left of the list\n"
"    \t\tshown by `dirs', starting with zero.  For example: `popd +0'\n"
"    \t\tremoves the first directory, `popd +1' the second.\n"
"    \n"
"      -N\tRemoves the Nth entry counting from the right of the list\n"
"    \t\tshown by `dirs', starting with zero.  For example: `popd -0'\n"
"    \t\tremoves the last directory, `popd -1' the next to last.\n"
"    \n"
"    The `dirs' builtin displays the directory stack.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid argument is supplied or the directory\n"
"    change fails."
msgstr ""
"Rimuove directory dallo stack.\n"
"    \n"
"    Rimuove voci dallo stack delle directory. Senza argomenti, rimuove\n"
"     la directory in cima allo stack e cambia alla nuova prima directory.\n"
"    \n"
"    Opzioni:\n"
"      -n\tEvita il normale cambio di directory quando vengono rimosse\n"
"    \t\tdirectory dallo stack, così da manipolare solo lo stack stesso.\n"
"    \n"
"    Argomenti:\n"
"      +N\tRimuove l'N-sima voce contando a partire da sinistra dell'elenco\n"
"    \t\tmostrato da \"dirs\", iniziando da zero. Per esempio: \"popd +0\"\n"
"    \t\trimuove la prima directory, \"popd +1\" la seconda.\n"
"    \n"
"      -N\tRimuove l'N-sima voce contando a partire da destra dell'elenco\n"
"    \t\tmostrato da \"dirs\", iniziando da zero. Per esempio: \"popd -0\"\n"
"    \t\trimuove l'ultima directory, \"popd -1\" la penultima.\n"
"    \n"
"    Il comando interno \"dirs\" mostra lo stack delle directory.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornito un argomento non "
"valido o non\n"
"    abbia successo il cambio di directory."

la traduzione della prima frase mi pare troppo letterale: «cambia alla nuova».
Credo che si potrebbe mettere «e si sposta alla nuova» o qualcosa del genere.

[...]
#: builtins.c:1989
msgid ""
"Formats and prints ARGUMENTS under control of the FORMAT.\n"
"    \n"
"    Options:\n"
"      -v var\tassign the output to shell variable VAR rather than\n"
"    \t\tdisplay it on the standard output\n"
"    \n"
"    FORMAT is a character string which contains three types of objects: "
"plain\n"
"    characters, which are simply copied to standard output; character "
"escape\n"
"    sequences, which are converted and copied to the standard output; and\n"
"    format specifications, each of which causes printing of the next "
"successive\n"
"    argument.\n"
"    \n"
"    In addition to the standard format characters csndiouxXeEfFgGaA "
"described\n"
"    in printf(3), printf interprets:\n"
"    \n"
"      %b\texpand backslash escape sequences in the corresponding argument\n"
"      %q\tquote the argument in a way that can be reused as shell input\n"
"      %Q\tlike %q, but apply any precision to the unquoted argument before\n"
"    \t\tquoting\n"
"      %(fmt)T\toutput the date-time string resulting from using FMT as a "
"format\n"
"    \t        string for strftime(3)\n"
"    \n"
"    The format is re-used as necessary to consume all of the arguments.  If\n"
"    there are fewer arguments than the format requires,  extra format\n"
"    specifications behave as if a zero value or null string, as appropriate,"
"\n"
"    had been supplied.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or a write or "
"assignment\n"
"    error occurs."
msgstr ""
"Formatta e stampa gli ARGOMENTI come indicato dal FORMATO.\n"
"    \n"
"    Opzioni:\n"
"      -v var\tAssegna l'output alla variabile di shell VAR invece\n"
"    \t\tdi visualizzarlo sullo standard output\n"
"    \n"
"    FORMATO è una stringa di caratteri che contiene tre tipi di oggetto: "
"caratteri\n"
"    semplici, che sono semplicemente copiati sullo standard output; sequenze "
"di escape\n"
"    dei caratteri, che sono convertite e copiate sullo standard output;\n"
"    specifiche di formato, ognuna delle quali provoca la stampa del "
"successivo argomento\n"
"    consecutivo.\n"
"    \n"
"    In aggiunta alle specifiche di formato standard csndiouxXeEfFgGaA\n"
"    descritte in printf(1) e printf(3), printf interpreta:\n"
"    \n"
"      %b\tEspande le sequenze di escape di backslash nell'argomento "
"corrispondente\n"
"      %q\tQuota l'argomento in modo che possa essere riusato come input per "
"la shell\n"
"      %Q\tcome %q, ma applica una precisione qualsiasi all'argomento\n"
"    \t\tnon quotato prima di quotarlo\n"
"      %(fmt)T\tVisualizza la stringa della data/ora risultante dall'uso di\n"
"    \t\tFMT come stringa di formato per strftime(3)\n"
"    \n"
"    Il formato è riutilizzato quanto necessario per consumare tutti gli\n"
"    argomenti. Se ci sono meno argomenti di quanti ne richieda il formato,\n"
"    le specifiche di formato di troppo si comportano come se venisse fornito\n"
"    un valore zero oppure una stringa null, come pertinente.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornita una opzione non valida "
"o si riscontri\n"
"    un errore di scrittura o assegnazione."

nella traduzione qui sotto c'è il riferimento ad una pagina di manuale aggiuntiva.
È fatto apposta?
"    descritte in printf(1) e printf(3), printf interpreta:\n"

[...]
#: builtins.c:2055
msgid ""
"Display possible completions depending on the options.\n"
"    \n"
"    Intended to be used from within a shell function generating possible\n"
"    completions.  If the optional WORD argument is present, generate "
"matches\n"
"    against WORD.\n"
"    \n"
"    If the -V option is supplied, store the possible completions in the "
"indexed\n"
"    array VARNAME instead of printing them to the standard output.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is supplied or an error occurs."
msgstr ""
"Visualizza i possibili completamenti a seconda delle opzioni.\n"
"    \n"
"    È pensata per essere usata all'interno di una funzione di shell per\n"
"    generare dei possibili completamenti.  Se è presente l'argomento\n"
"    opzionale PAROLA, genera le corrispondenze relative a PAROLA.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non sia fornita una opzione non valida o\n"
"    si riscontri un errore."

Qui manca la traduzione dell'argomento -V

[...]
#: builtins.c:2104
msgid ""
"Read lines from the standard input into an indexed array variable.\n"
"    \n"
"    Read lines from the standard input into the indexed array variable ARRAY,"
" or\n"
"    from file descriptor FD if the -u option is supplied.  The variable "
"MAPFILE\n"
"    is the default ARRAY.\n"
"    \n"
"    Options:\n"
"      -d delim\tUse DELIM to terminate lines, instead of newline\n"
"      -n count\tCopy at most COUNT lines.  If COUNT is 0, all lines are "
"copied\n"
"      -O origin\tBegin assigning to ARRAY at index ORIGIN.  The default "
"index is 0\n"
"      -s count\tDiscard the first COUNT lines read\n"
"      -t\tRemove a trailing DELIM from each line read (default newline)\n"
"      -u fd\tRead lines from file descriptor FD instead of the standard "
"input\n"
"      -C callback\tEvaluate CALLBACK each time QUANTUM lines are read\n"
"      -c quantum\tSpecify the number of lines read between each call to\n"
"    \t\t\tCALLBACK\n"
"    \n"
"    Arguments:\n"
"      ARRAY\tArray variable name to use for file data\n"
"    \n"
"    If -C is supplied without -c, the default quantum is 5000.  When\n"
"    CALLBACK is evaluated, it is supplied the index of the next array\n"
"    element to be assigned and the line to be assigned to that element\n"
"    as additional arguments.\n"
"    \n"
"    If not supplied with an explicit origin, mapfile will clear ARRAY "
"before\n"
"    assigning to it.\n"
"    \n"
"    Exit Status:\n"
"    Returns success unless an invalid option is given or ARRAY is readonly "
"or\n"
"    not an indexed array."
msgstr ""
"Legge righe dallo standard input in una variabile di array indicizzato.\n"
"    \n"
"    Legge righe dallo standard input nella variabile di ARRAY indicizzato,\n"
"    oppure dal descrittore di file FD se viene fornita l'opzione -u.\n"
"    La variabile MAPFILE è l'ARRAY predefinito.\n"
"    \n"
"    Opzioni:\n"
"      -d delim\tUsa DELIM per terminare le righe, al posto di \"a capo\"\n"
"      -n numero\t\tCopia al massimo NUMERO righe.  Se NUMERO è 0, vengono\n"
"    \t\tcopiate tutte\n"
"      -O origine\tInizia assegnando all'ARRAY all'indice ORIGINE.  L'indice\n"
"    \t\tpredefinito è 0\n"
"      -s numero \tScarta le prime NUMERO righe lette\n"
"      -t\t\tRimuove un ritorno a capo finale da ciascuna riga letta\n"
"      -u fd\t\tLegge le righe da un descrittore di file FD invece che dallo\n"
"    \t\tstandard input\n"
"      -C callback\tEsamina CALLBACK ogni volta che vengono lette un numero\n"
"    \t\tQUANTO di righe\n"
"      -c quantità\tSpecifica il numero di righe lette tra ciascuna chiamata\n"
"    \t\ta CALLBACK\n"
"    \n"
"    Argomenti:\n"
"      ARRAY\t\tNome della variabile di array da usare per i dati dei file.\n"
"    \n"
"    Se viene fornito -C senza -c, il quanto predefinito è 5000.  Quando\n"
"    viene analizzata CALLBACK, viene fornito l'indice dell'elemento di\n"
"    array successivo da assegnare e la riga da attribuire a quell'elemento\n"
"    come argomenti aggiuntivi.\n"
"    \n"
"    Se non viene fornito con una origine esplicita, il file di mappa azzererà\n"
"    l'ARRAY prima della relativa assegnazione.\n"
"    \n"
"    Stato di uscita:\n"
"    Restituisce successo a meno che non venga fornita una opzione non valida,\n"
"    ARRAY sia in sola lettura oppure non indicizzato."

la traduzione dell'opzione -t non è aggiornata, credo.
Inoltre nella spiegazione di -C e -c usi una volta QUANTO e l'altra QUANITÀ




Maggiori informazioni sulla lista tp