vedo che è possibile visualizzare un elenco di proprietà impostate su ogni directory all'interno di un repository SVN utilizzando proplist e la bandiera -R (ricorsiva) e la bandiera -v (verbose):Come visualizzare tutti i pattern ignorati impostati con svn: ignori ricorsivamente in un repository SVN?
svn proplist -Rv
Questo mi mostra tutto proprietà, come svn: mime-type o svn: eseguibile. Sto cercando di filtrare questo solo per le proprietà svn:ignore
. Sono sicuro che c'è un modo per convogliare il risultato di questo comando attraverso un comando di shell che mi mostrerebbe solo le linee a cui sono interessato, ma non riesco a capire come farlo. Come esempio del tipo di cosa che sarebbe più utile è un tipo di comando come questo (ma questo non funziona!).
svn proplist -Rv | grep "^ svn:ignore" | awk "{print \$1}"
solo che non so abbastanza di comandi shell come grep e awk per fare questo lavoro per me. Questo mostra semplicemente "svn: ignora" più e più volte, ma non stampa il percorso della directory o il contenuto della proprietà svn:ignore
. Ecco un esempio dell'output di "svn proplist -Rv" che vorrei prelevare, dove 'cache' è il percorso e '*' è il valore della proprietà.
Properties on 'cache':
svn:ignore
*
Come può il comando precedente essere fatto per lavorare e/o c'è un modo migliore per visualizzare tutte le svn:ignore
immobili a mio repository?
Un paio di suggerimenti su awk: è comune utilizzare le virgolette singole per lo script inline, quindi non è necessario sfuggire a $, e può effettivamente fare anche l'espressione regolare corrispondente a te: 'awk '/ pattern/{print $ 1} '. Non so svn: i dati che stai cercando di vedere sulla stessa riga di "svn: ignore"? In caso contrario, il tuo problema è un po 'più complicato. Se è così, vuoi solo il secondo campo? – Cascabel
I dati che sto cercando di visualizzare sfortunatamente * non * sono sulla stessa riga di svn: ignorare. È il contenuto direttamente sopra e direttamente sotto di esso. Nell'esempio della mia domanda, mi piacerebbe prendere il percorso "cache" e anche il "*", poiché * significa che tutto in "cache" viene ignorato. Grazie per i tuoi suggerimenti su awk. – stereoscott
Il mio male: stavo cercando l'output di esempio e in qualche modo lo ho passato direttamente sopra. – Cascabel