Script de Linux para extraer nombres de usuario del archivo de texto -- mmand-line campo con bash campo con permissions campo con scripts campo con extract camp askubuntu Relacionados El problema

Linux script to extract usernames from text file


2
vote

problema

Español

Soy un principiante en Scripting, pero creé un archivo de texto llamado Text.DAT, que solo contiene nombres de usuario en la ubicación de archivo /Home/Daniel/Text.dat y estoy tratando de ejecutar un script (llamado Addusers.sh) que muestra los nombres de ese archivo de texto y creará una nueva cuenta de usuario en el sistema para cada nueva cuenta de usuario especificada en el archivo Text.dat. Para cada cuenta de usuario que se crea, agrega una entrada de línea al archivo /Home/Daniel/Logs/UserAccounts.log. La entrada de línea contendrá la siguiente información: ABCDEFGHIJKLMNABCDEFGHIJKLMN0 .

Esto es lo que tengo hasta ahora:

  #!/bin/bash echo "cat text.dat"  newuser= grep /home/daniel/text.dat sudo adduser $newuser   
Original en ingles

I am a beginner at scripting but I created a text file called text.dat which contains only usernames in the file location /home/daniel/text.dat and Ixe2x80x99m trying to run a script(called addusers.sh) that displays the names from that text file and will create a new user account on the system for each new user account specified in the text.dat file. For each user account that is created, append a line entry to the /home/daniel/logs/useraccounts.log file. xc2xa0The line entry will contain the following information: xc2xa0added | <user account name> | <day and time of creation>.

This is what I have so far:

#!/bin/bash echo xe2x80x9ccat text.datxe2x80x9d newuser= grep /home/daniel/text.dat sudo adduser $newuser 
              
   
   

Lista de respuestas

1
 
vote
  #!/bin/bash LANG=C myuser="/home/george/text.dat"  # create logs directory mkdir -p ~/logs  # create log file touch ~/logs/useraccounts.log  # make sure admin is running the script [ "$(whoami)" != "root" ] && exec sudo -- "$0" "$@"   # check if log file is empty, if not don't add a new header file="~/logs/useraccounts.log"  # Add header in logs file if one isn't already there. if [[ -s $file ]] then     # log file header      printf "%s %12s %s %18s %s %32s %s " "|" "Added" "|" "User Account Name" "|" "Day and Time of Creation" "|" >> ~/logs/useraccounts.log      printf "%50s " "========================================================================" >> ~/logs/useraccounts.log  fi   # remove any whitespaces and blank lines from file input # before passing it to 'while command' sed '/^[  ]*$/d' $myuser | while read -r line do         name="$line"          adduser --disabled-login --gecos "" $name           # check if user was successfully added         isthere=$(cut -d: -f1 /etc/passwd | grep "$name")           # if user was added then make insert record into log file         if [[ "$isthere" == "$name" ]]         then                   printf "%s %10s   %s %17s  %s %33s %s "  "|" "Yes" "|" "$name"  "|" "$(date)" "|"  >> ~/logs/useraccounts.log           else                   printf "%s %10s   %s %17s  %s %33s %s "  "|" "No" "|" "$name"  "|" "$(date)" "|"  >> ~/logs/useraccounts.log            fi        done   

Varias cosas a tener en cuenta aquí:

  • Los usuarios creados no pueden iniciar sesión hasta que se haya establecido una contraseña para cada uno de ellos.
  • El printf tendrá que ser alterado para adaptarse a su propio estilo.
 
#!/bin/bash LANG=C myuser="/home/george/text.dat"  # create logs directory mkdir -p ~/logs  # create log file touch ~/logs/useraccounts.log  # make sure admin is running the script [ "$(whoami)" != "root" ] && exec sudo -- "$0" "$@"   # check if log file is empty, if not don't add a new header file="~/logs/useraccounts.log"  # Add header in logs file if one isn't already there. if [[ -s $file ]] then     # log file header      printf "%s %12s %s %18s %s %32s %s\n" "|" "Added" "|" "User Account Name" "|" "Day and Time of Creation" "|" >> ~/logs/useraccounts.log      printf "%50s\n" "========================================================================" >> ~/logs/useraccounts.log  fi   # remove any whitespaces and blank lines from file input # before passing it to 'while command' sed '/^[ \t]*$/d' $myuser | while read -r line do         name="$line"          adduser --disabled-login --gecos "" $name           # check if user was successfully added         isthere=$(cut -d: -f1 /etc/passwd | grep "$name")           # if user was added then make insert record into log file         if [[ "$isthere" == "$name" ]]         then                   printf "%s %10s   %s %17s  %s %33s %s\n"  "|" "Yes" "|" "$name"  "|" "$(date)" "|"  >> ~/logs/useraccounts.log           else                   printf "%s %10s   %s %17s  %s %33s %s\n"  "|" "No" "|" "$name"  "|" "$(date)" "|"  >> ~/logs/useraccounts.log            fi        done 

Several things to note here:

  • Created users can't log in until a password has been set for each of them.
  • The printf will have to be altered to suit your own style.
 
 

Relacionados problema

4  ¿Dónde está la diferencia entre usar 'PDFImages` de Poppler-Utils y usando el proporcionado por XPDF-utils para la extracción de imágenes?  ( Where is the difference between using pdfimages from poppler utils and using t ) 
Necesito extraer un montón de imágenes de un archivo PDF. ABCDEFGHIJKLMNABCDEFGHIJKLMN14 debe hacer el trabajo. Al intentar instalar, obtuve dos alternativa...

23  Comprimiendo una carpeta (tar) sin su directorio que contiene en el nombre de la carpeta  ( Compressing a folder tar without its containing directory in the folder name ) 
Estoy tratando de comprimir una carpeta con el comando tar . Cuando estoy tratando de comprimirlo, funciona bien. El problema es con el nombre del archivo....

932  ¿Qué comando necesito para descomprimir / extraer un archivo .tar.gz?  ( What command do i need to unzip extract a tar gz file ) 
Recibí un archivo enorme .Tar.gz de un cliente que contiene aproximadamente 800 MB de archivos de imagen (cuando se puede comprimir). El FTP de nuestra compañ...

3  ¿Cómo extraer objetos a granel de archivos SWF (Adobe Flash) con SWFextract?  ( How to bulk extract objects from swf adobe flash files with swfextract ) 
ABCDEFGHIJKLMNABCDEFGHIJKLMN2 son un conjunto único de herramientas, pero carece de una buena amabilidad de los usuarios. Ni siquiera pueden iterar los obje...

0  Extraiga los accesorios de correo y el cuerpo de un archivo .msg  ( Extract mail attachments and body from a msg file ) 
Estoy desarrollando un complemento para un DMS bajo Ubuntu 10.04. Existe la necesidad de extraer los archivos adjuntos de correo y el cuerpo de los archivos ....

30  Cómo extraer y unir archivos xxx.zip, xxx.z01 y xxx.z02  ( How to extract and join files xxx zip xxx z01 and xxx z02 ) 
Tengo tres archivos 1.Zip, 1.Z01 1.Z02. Me gustaría extraer y unirme a ellos en un archivo, haciendo clic derecho en 1.ZIP y seleccionando "Extracto aquí". Pe...

3  Mostrar contenido del archivo enorme TXT / JSON sin extraer un archivo zip enorme  ( Show content of huge txt json file without extracting huge zip file ) 
Tengo un archivo zip de ~ 400 MB y dentro de él hay ciertos archivos TXT / JSON aproximadamente en el rango de 400 MB - 1 GB de tamaño. Simplemente quiero v...

2  ¿Cómo abro / abre el archivo .xdi en (x) ubuntu?  ( How do i open extract xdi file on xubuntu ) 
descargó un montón de libros que se comprimieron en un archivo .xdi. ¿Cómo abro / abre los datos / archivos internos? Voy a abrir, y Ubuntu no reconoce / tamp...

1  Módulo no libre para P7ZIP (P7ZIP-RAR)  ( Non free module for p7zip p7zip rar ) 
He instalado P7ZIP desde el centro de software de Ubuntu. En "Add-Ons opcionales", veo un módulo RAR no libre. ¿Es este complemento solo un ensayo? Si es así,...

0  Problema con la extracción de archivos tar.gz  ( Problem with extracting tar gz files ) 
Estaba descargando algo hoy y cuando intenté extraerlo, una ventana sale diciendo: An error ocurred while extracting files. Error setting owner: operation ...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos