Linux/Unix Shell Scripting - No funciona Scrip, Ayuda

 
Vista:

No funciona Scrip, Ayuda

Publicado por Jose (4 intervenciones) el 02/12/2013 17:04:21
Saludos,

estoy realizando un shell script y no consigo solucionarlo.

Este es el shell que necesito:

para cada usuario que hay registrado en el sistema el número de objetos (directorios, archivos, …) que le pertenecen, cuál es el objeto más antiguo y el más reciente, el más grande y el más pequeño, el número total de bytes que ocupan los objetos, etc.

Esto es lo que he realizado y no funciona:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#!/bin/bash
 
#obtiene el usuario root y lo guardo en el archivo "listadoUsuarios"
cut -d: -f 1,6 /etc/passwd | grep ^'root:' >listadoUsuarios
 
#obtiene los usuarios con id igual o superior a 1000 y los guarda en el archivo "listadoUsuarios"
 
cut -d: -f 1,3,6 /etc/passwd | awk -F: '{if($2>=1000) print $1 ":"$3}' >>listadoUsuarios
 
#recorre todos los usuarios
cat listadoUsuarios | while read usuario;
do
 
username='echo $usuario | cut -d: -f1'
	path='echo $usuario | cut -d: -f2'
 
#inicializo las variables
 
discoUsado=0
 
archivoPequeno=""
 
archivoGrande=""
 
#si el path de usuario existe	
 
		if [ -d "$path" ]; then
 
#obtengo el tamaño del mismo
 
discoUsado='du -sh $path | awk '{print $1}''
 
 
#obtengo el archivo mas pequeno
 
archivoPequeno=' find $path -type f -printf "%s %P\n" | sort -n | head -1'
 
 
 
#obtengo el archivo mas grande
 
	archivoGrande=' find $path -type f -printf "%s %P\n" | sort -n | tail -1'
 
 
		else
 
 
discoUsado="No existe directorio"
 
 
fin
 
 
 
#muestro el resultado
 
	echo $username
 
	echo '\tpath:\t\t\t' $path
 
	echo '\tutiliacion de disco:\t' $discoUsado
 
	echo '\tarchivo mas pequeno:\t' $archivoPequeno
 
	echo '\tarchivo mas grande:\t' $archivoGrande
 
 
done


Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 104
Oro
Ha mantenido su posición en Linux/Unix Shell Scripting (en relación al último mes)
Gráfica de Linux/Unix Shell Scripting

No funciona Scrip, Ayuda

Publicado por xve (309 intervenciones) el 02/12/2013 17:18:26
Hola Jose, que error te da, o que es lo que tendría que hacer y no hace?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No funciona Scrip, Ayuda

Publicado por Jose (4 intervenciones) el 02/12/2013 17:24:53
Esta es la información que tengo que mostrar por pantalla, y lo único que consigo es que me coja los directorios home de los usuarios registrados en el sistema, y no se cómo conseguir lo que me piden, que es lo que a continuación escribo.

"Para cada usuario que hay registrado en el sistema el número de objetos (directorios, archivos, …) que le pertenecen, cuál es el objeto más antiguo y el más reciente, el más grande y el más pequeño, el número total de bytes que ocupan los objetos, etc."

Toda esa información debería mostrarse por pantalla

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar