ho bisogno di glob ./../path/to/files/**/*.txt
ma invece di ricevere le partite in questo modo:glob in Node.js e restituire solo la partita (nessun percorso che conduce)
./../path/to/files/subdir/file.txt
ho bisogno la radice tolto:
subdir/file.txt
Attualmente, ho:
oldwd = process.cwd()
process.chdir(__dirname + "/../path/to/files")
glob.glob("**/*.txt", function (err, matches) {
process.chdir(oldwd)
});
Ma è un po 'brutto e sembra anche avere una condizione di competizione: a volte il glob si verifica su oldwd. Quindi deve andare.
Sto valutando semplicemente la mappatura su matches
e lo stripping del percorso iniziale con operazioni su stringa. Dal momento che glob restituisce le corrispondenze con i punti risolti, dovrei fare lo stesso con la mia stringa di ricerca e sostituzione, suppongo. Questo è abbastanza disordinato da chiedermi se c'è un modo migliore (built-in o libreria?) Per gestirlo.
Quindi, qual è un modo piacevole, pulito e corretto per glob in Node.js e solo ottenere la parte "corrispondente"? Javascript e CoffeeScript sono entrambi bene con me
oh buona path.relative ho intenzione di provarlo subito – Rebe
hmm purtroppo io sono sul nodo 0.4.xe path.relative sembra essere un'aggiunta successiva – Rebe
@Rebe: Si potrebbe snip 'relativa 'fuori dalla sorgente di [' path'] (https://github.com/joyent/node/blob/master/lib/path.js). (o rinominare l'intero modulo e inserire tutto, che è probabilmente un'idea migliore) – icktoofay