El uso del disco es un informe generado por el sistema Linux sobre diferentes discos disponibles o creados en la memoria secundaria. Estos discos también se conocen como particiones, tienen su sistema de archivos aislado. Esta facilidad nos proporciona las medidas de diferentes etiquetas o características como Espacio usado, Espacio libre, Sistema de archivos del disco, etc. Para ver todas estas etiquetas Linux tiene algún comando interno que nos ayuda a visualizarlas, pero son comandos de terminal, y nosotros necesita crear un script de shell para el usuario que usa esos comandos.
Ahora tenemos que iniciar el script preparando una interfaz para el usuario, esta interfaz tomará la entrada del usuario para los diferentes tipos de opciones de informe de uso de disco dadas. Esto podría lograrse mediante la funcionalidad de eco y lectura presente para el shell.
Por ahora, hemos tomado la entrada del usuario de acuerdo con las opciones disponibles presentes para el usuario. Ahora tenemos que preparar el script adicional para todas las opciones presentes y compararlo con la opción solicitada por el usuario. Usaremos condiciones if-else para esta funcionalidad. La CLI de Linux nos proporciona un comando para obtener el uso del disco, «df» tiene diferentes opciones que ayudan a recuperar características particulares del informe. Tiene una opción de «salida» que se puede usar para imprimir campos específicos como: ‘fuente’, ‘fstype’, ‘itotal’, ‘iused’, ‘iavail’, ‘ipcent’, ‘size’, ‘used’, ‘disponible’, ‘porcentaje’, ‘archivo’ y ‘objetivo’.
Código:
#!/bin/bash echo -e "Select the Option From below:\n" # -e option in echo command is used to # enable interpretation of backslash escapes. echo -e "\n [ 1 ] For Only the Disk-Name and Used-Space \n [ 2 ] For Only the Disk-Name and its Size \n [ 3 ] To print Disk-Name and File-System \n [ 4 ] To see all fields in DiskUsage \n" # to take the user input read userInput # if to check the user input. if [ $userInput == 1 ]; then # -h is used for producing human readable and # --output is used to specify field. df -h --output = source,used elif [ $userInput == 2 ]; then df -h --output=source,size elif [ $userInput == 3 ]; then # "source" argument is for listing name of the source directory, # "fstype" shows the file system type like ext4. df -h --output=source,fstype elif [ $userInput == 4 ]; then # -a is used for all the fields. df -ha else # if any wrong input is given. echo "!!!!!!!!Wrong Output!!!!!!!!" fi
Otorgue los permisos ejecutables al script desde la terminal. Este permiso se otorga a los archivos para que sean legibles, escribibles y, lo que es más importante, ejecutables para ejecutarlos a través del shell. El comando «chmod» se usa para otorgar este tipo de permisos, la opción «777» significa rwx (ReadWriteExecutable).
# chmod 777 DiskUsageScript.sh
Producción:
Si la entrada es 1. Esto solo imprime el nombre del disco y el espacio utilizado por ese disco.
Si Entrada es 4. Esto imprimirá todos los campos disponibles.
Publicación traducida automáticamente
Artículo escrito por hemusharma196 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA