¿Ventajas de usar guiones bajos en convenciones de nomenclatura de archivos ArcGIS?

11

En un curso introductorio de SIG, se insistió en que todos los espacios dentro de los nombres de archivos y carpetas se reemplazaran con guiones bajos.

¿Por qué se enseña esto?

¿Existe un beneficio claro de hacerlo?

pecado
fuente
3
¡El consejo no debe limitarse a espacios! Para obtener información, considere que partes de ArcGIS contienen código que se remonta a la década de 1980 (si no antes). En aquel entonces, había limitaciones severas en los nombres de directorios y archivos: el software asumía que los nombres eran cortos (generalmente 13 caracteres o menos), no contenían caracteres especiales aparte de los espacios y no comenzaban con un dígito numérico. (Incluso esta descripción no es exactamente correcta, pero está cerca.) La gente todavía se encuentra con misteriosos problemas que se pueden rastrear hasta este antiguo código.
whuber
@whuber está golpeando. Sin embargo, no solo los espacios, los guiones, -también causan problemas porque a veces están bien y otras no. ¿Ves un método de arcgisscripting para desinfectar un nombre de archivo?
Matt Wilkie

Respuestas:

13

Una razón es porque los espacios tienen un significado especial en varios lenguajes de programación / scripting.

Acostumbrarse a nombrar archivos y carpetas con guiones bajos es una buena práctica porque entonces "" (espacios) no serán tratados como una nueva línea por algunos idiomas.

Ejemplo: una carpeta llamada "Datos SIG" es un nombre de carpeta incorrecto. Esto se debe a que si intento acceder a él con un script o algún lenguaje de programación, tengo que tratar los espacios con especial cuidado.

Si no le digo que los espacios son espacios y no líneas nuevas, intentará acceder a "SIG" y "Datos" como carpetas separadas, pero no lo son.

En Unix bash desde la línea de comandos, puedo usar el comando ls para enumerar los archivos y carpetas en un directorio dado.

ls GIS Data

Resultado:

ls: GIS: No such file or directory
ls: Data: No such file or directory

¡Error!

¡Ahora tengo que usar barras invertidas '\' o comillas '' para evitar que los espacios se traten como líneas nuevas!

ls '1 2 3' or ls 1\ 2\ 3

Los dos comandos anteriores ahora tratan los espacios como espacios.

A varias herramientas de geoprocesamiento de ArcGIS no les gustan los espacios en los nombres de archivos o carpetas en CUALQUIER parte de la ruta a la fuente de datos. Por lo general, simplemente fallarán con algún tipo de error genérico 99999.

SaultDon
fuente
11

Hay algunas herramientas de geoprocesamiento que fallarán si hay espacios en los nombres de archivo. Por lo tanto, es mejor evitarlos todos juntos.

Jeff Berry
fuente
3
Dentro del software Esri, las coberturas y los archivos ráster nunca toleraron espacios en los nombres. Colocar conjuntos de datos en un escritorio de Windows era / es problemático porque la carpeta se basa realmente en "Documentos y configuraciones" (introduciendo espacios en el nombre completo de la ruta). Los shapefiles son mucho más indulgentes y los espacios son posibles, y creo que las clases de entidad ahora pueden tener un espacio y no colapsar, pero los viejos hábitos mueren con dificultad. Estoy de acuerdo con Jeff Berry, mejor evitarlos.
dianamaps
2

En pocas palabras, es porque los espacios en las líneas de comando se tratan en delimitadores. Entonces:

delete C:\directory\file number 1.shp

no funcionará en la mayoría de las líneas de comando del sistema operativo sin agregar comillas:

delete "C:\directory\file number 1.shp"

Muchas herramientas SIG se basan en la línea de comandos, por lo que es más simple usar puntuaciones bajas si se encuentra en un entorno donde la línea de comandos es común. Si solo eres un usuario de Windows, probablemente puedas salirte con solo dejar espacios adentro.

GIS-Jonathan
fuente