Vantaggi nell'uso delle sottolineature nelle convenzioni di denominazione dei file ArcGIS?


11

In un corso introduttivo GIS, si è insistito sul fatto che tutti gli spazi all'interno dei nomi di file e cartelle vengano sostituiti con caratteri di sottolineatura.

Perché questo viene insegnato?

C'è un chiaro vantaggio nel farlo?


3
Il consiglio non dovrebbe essere limitato agli spazi! Per approfondimento, considera che parti di ArcGIS contengono codice che risale agli anni '80 (se non prima). All'epoca c'erano gravi limitazioni sui nomi di directory e file: il software presupponeva che i nomi fossero brevi (di solito 13 caratteri o meno), non conteneva caratteri speciali diversi dagli spazi e non iniziava con una cifra numerica. (Anche questa descrizione non è esattamente corretta, ma è vicina.) Le persone incontrano ancora problemi misteriosi riconducibili a questo vecchio codice.
whuber

@whuber è eccitato. Tuttavia, non sono solo gli spazi, i trattini, a -causare problemi perché a volte vanno bene e a volte no. Vedi un metodo arcgisscripting per sanificare un nome file?
Matt Wilson

Risposte:


13

Uno dei motivi è che gli spazi hanno un significato speciale in diversi linguaggi di programmazione / scripting.

Prendere l'abitudine di nominare file e cartelle con caratteri di sottolineatura è una buona pratica perché "" (spazi) non sarà trattato come una nuova riga da alcune lingue.

Esempio: una cartella denominata "Dati GIS" ha un nome cartella errato. Questo perché se provo ad accedervi con uno script o un linguaggio di programmazione devo trattare gli spazi con particolare cura.

Se non gli dico che gli spazi sono davvero spazi e non nuove righe, allora proverà ad accedere a "GIS" e "Dati" come cartelle separate, ma non lo sono.

In Unix bash dalla riga di comando posso usare il comando ls per elencare i file e le cartelle in una determinata directory.

ls GIS Data

Risultato:

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

Errore!

Ora devo usare le barre rovesciate '\' o le virgolette '' per evitare che gli spazi vengano trattati come nuove righe!

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

I due comandi precedenti ora trattano gli spazi come spazi.

A diversi strumenti di geoprocessing di ArcGIS non piacciono gli spazi nei nomi di file o cartelle in QUALSIASI parte del percorso dell'origine dati. Di solito falliranno con un errore generico 99999.


11

Ci sono alcuni strumenti di geoprocessing che falliranno se ci sono spazi nei nomi dei file. Pertanto, è meglio evitarli tutti insieme.


3
All'interno del software Esri, copertine e file raster non tolleravano mai spazi nei nomi. Il posizionamento di set di dati su un desktop Windows era / è problematico perché la cartella si basa effettivamente su "Documents and Settings" (introducendo così spazi nell'intero percorso). Gli Shapefile sono molto più tolleranti e gli spazi sono possibili, e credo che le classi di funzionalità ora possano avere uno spazio e non schiantarsi, ma le vecchie abitudini sono dure a morire. Sono d'accordo con Jeff Berry - meglio evitarli.
dianamaps,

2

In poche parole, è perché gli spazi nelle righe di comando sono trattati dai delimitatori. Così:

delete C:\directory\file number 1.shp

non funzionerà sulla maggior parte delle righe di comando del sistema operativo senza aggiungere virgolette:

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

Molti strumenti GIS sono basati sulla riga di comando, quindi è più semplice utilizzare i punteggi inferiori se ci si trova in un ambiente in cui la riga di comando è comune. Se sei solo un utente di Windows, puoi probabilmente scappare lasciando solo degli spazi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.