Entradas etiquetadas con GNU/Linux
Aceptando parametros desde la linea de comandos
5Bienvenidos a la ya 4ª parte de esta serie de tutoriales, les recuerdo que en los tres anteriores tutoriales creamos tres funciones, las cuales nos permitían ocultar y desolcultar archivos además de una tercera que nos permitía obtener el estado en que se encontraba dicho archivo. En esta oportunidad les mostrare usando a PyHide (Pueden encontrar mas información sobre este proyecto aquí http://wiki.codigopython.com.ar/pyhide) como interactuar con el usuario a través de la linea de comandos aceptando el uso de argumentos, un ejemplo de esto es el uso del comando ‘cd‘ (este comando nos permite cambiar el directorio de trabajo que estamos utilizando) en Linux este acepta un argumento que es el directorio con el que deseamos trabajar, algo similar deberemos de implementar en nuestra aplicación para facilitar su uso pero para esto planteemos cuales serán lo pasos que tendremos que tener en cuenta para conseguirlo
1 – El usuario ejecuta nuestra aplicación con un argumento
2 – Se analizan los argumentos ingresados
3 – Se ejecuta la función ‘hide‘, ‘show‘ o ‘check‘ según corresponda
Eso es una breve descripción de la meta que nos proponemos a lo largo del tutorial, ahora si empecemos por el principio de esto. El primer inciso que nos planteamos implica que nuestra aplicación soporte el uso de argumentos para funcionar, en un principio nuestras funciones ya toman un argumento que es el archivo que se utilizara pero nuestra aplicación va a necesitar dos argumentos uno para indicar el archivo y el otro para indicar la acción ha realizar, es decir si se llama a ‘hide‘ o a ‘show‘, pero veamoslo con un ejemplo. (más…)
Analizando el estado de los archivos
5En las primeras dos partes de esta serie de tutoriales estuvimos viendo como ocultar archivos y como revertir esto utilizando dos funciones una era ‘hide‘ y la otra ‘show‘, con estas dos podemos hacer lo que necesitamos pero quizás nos guste poder obtener el estado en que se encuentre un archivo para por ejemplo poder utilizarlo dentro de nuestra aplicación para informarle al usuario el estado del archivo sin realizar ninguna acción sobre el mismo, para esto crearemos a ‘check‘ una función que se encargara de esto. La creación de ‘check‘ sera algo que no nos llevara mucho tiempo ni esfuerzo porque su construcción se basa en lo que ya vimos, hasta ahora tenemos dos funciones como estas:
def hide(file):
import os
if not os.path.exists(file):
return
archive = os.path.basename(file)
directorio = os.path.dirname(file)
if archive[0] == '.':
return
else:
newfile = directorio+'/''.'+archive
os.rename(file, newfile)
def show(file):
import os
if not os.path.exists(file):
return
archive = os.path.basename(file)
directorio = os.path.dirname(file)
if archive[0] != '.':
return
else:
while archive[0] is '.':
archive = archive[1:]
newfile = directorio+'/'+archive
os.rename(file, newfile)
Antes de comenzar a escribir nuestra función debemos plantear que es lo que deseamos conseguir y como lo venimos haciendo pasemos a enumerar las cosas que haremos para conseguir desarrollar esta pequeña pero útil función.
1 – Entra como parámetro un archivo
2 – Se verifica si el archivo se encuentra oculto (más…)
Mostrando archivos ocultos en GNU/Linux
4En la primera parte de esta serie de tutoriales “Ocultando archivos en GNU/Linux“, les había mostrado una pequeña pero funcional aplicación para ocultar archivos en Linux pero en esta parte vamos a ampliar un poco sus funciones agregando una nueva función que realice todo lo contrario a lo que logramos hasta ahora, con esto me refiero a que en vez de ocultar archivos podamos mostrar archivos ocultos, lo cual seria en nuestro caso una herramienta para revertir las acciones realizadas por nuestra función ‘hide‘.
Antes de ponernos a jugar con Python debemos dejar en claro que es lo que queremos lograr tal cual lo hicimos en la primer parte del tutorial, empecemos enumerando las principales funciones que deberá de cumplir nuestro script:
- Entra como parámetro un archivo
- Si no esta oculto no se realizaría ninguna acción
- Si esta oculto quitamos el punto que tiene en el nombre
Como nos daremos cuenta la primera parte se mantiene, la segunda es muy similar a la de la función ‘hide‘ ya creada solamente que esta otra función tiene la diferencia de que verifica que el archivo no se encuentre oculto. Hasta acá es todo muy similar pero la perspectiva nos cambia cuando llegamos al punto 3 de nuestra lista, pero lo mejor es ir un paso a la ves así que lo mejor va a ser empezar por ir a la primer parte de esta lista.
(más…)
Ocultando archivos en GNU/Linux
2Una de las facilidades que nos ofrece lo sistemas basado en Unix es su facilidad para configurarlo sin tener que tocar un gran y sobrecargado registro (haciendo referencia a Microsoft Windows) sino que modificando simple archivos de texto podemos ajustar las preferencias de nuestros programas o de nuestro sistema, un ejemplo de esto es la forma como se oculta un archivo y/o carpeta en los sistemas basado en Unix porque simplemente anteponiendoles un punto al nombre del archivo este se vuelve un archivo oculto para el sistema. Viendo esta facilidad para ocultar un archivo en nuestra distribución Linux, practiquemos un poco con Python creando un pequeño pero funcional script que oculte un archivo.
Comencemos planteando como llevar nuestra necesidad de ocultar un archivo en GNU/Linux con Python, por ahora tenemos dos cosas como para comenzar una es que nuestra función tiene que tomar un archivo como parámetro para funcionar y la otra es como se oculta un archivo, llevándolo al papel nos quedaría algo así como para orientarnos en la construcción de la función:
- Entra como parámetro un archivo
- Si ya esta oculto no se realizaría ninguna acción
- Si no esta oculto colocamos como primer carácter en el nombre un punto
Habiéndolo planteado empecemos por el punto numero 1, nuestro Linux no discrimina si se trata de un archivo o de una directorio utiliza el mismo método para ocultarlos así que comprobar con que estamos trabajando podemos dejarlo de lado por un momento, algo que si es importante es que obviamente el archivo debe existir. Para comprobar la existencia del archivo podemos tomar como referencia lo visto en “Tres formas de comprobar la existencia de un archivo” utilizando la primer forma, ya que como mencione no estamos discriminando si se trata de un archivo o una carpeta y no tendría ningún sentido utilizar la segunda forma. La primer forma para comprobar la existencia de un archivo que vimos fue esta: