Ho più di 500 indirizzi MAC e sto cercando di trovare un modo semplice per inserire due punti tra due caratteri.Inserimento di due punti in un elenco di indirizzi MAC
risposta
Se si tratta di una cosa sola, perché non utilizzare emacs con una macro della tastiera?
Si potrebbe ottenere Notepad ++ e fare una ricerca e sostituzione con espressioni regolari come ricerca di (..) e sostituirlo con \ 1:
'forse eccessivo, ma vorrei usare Excel. Incollare il indirizzi MAC in colonna A e questa formula nella colonna B:
=LEFT(A1,2)&":"&MID(A1,3,2)&":"&MID(A1,5,2)&":"&MID(A1,7,2)&":"&MID(A1,9,2)&":"&RIGHT(A1,2)
Quindi, è possibile copy
colonna B, e sia paste special...values
nella colonna C o semplicemente incollare nel blocco note.
Si potrebbe utilizzare un comando sed come questo:
sed 's/\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)/\1:\2:\3:\4:\5:\6/g' filename
Questo sarà solo tirare fuori 12 caratteri in gruppi di due, e li sputare sul retro con i due punti in mezzo. Puoi anche provare un pattern più semplice come s/(\ w \ w)/\ 1:/g, anche se questo ti lascerà con due punti in più alla fine di ogni indirizzo.
Mi picchia! In riferimento alla tua ultima sentanza, potresti quindi utilizzare un altro comando sed per rimuovere i due punti finali e potrebbe ancora essere più breve. – SingleNegationElimination
Non tutte le versioni di "sed" supportano "\ w" per indicare un carattere di parola. Maggiore precisione nella corrispondenza ('[0-9a-fA-F]') renderebbe preferibile la soluzione iterativa. –
Personalmente, probabilmente lo farò in Perl, ma devo forzare il modo decente e semplice di farlo con Regex. perl -e "while (<>) {$ _ = ~ s/(\ w {2})/$ 1:/g; s /: $/$ /;}" .. Penso che lo si farebbe . –
= CONCATENATE (MID (A2; 1; 2); ":"; MID (A2; 3; 2); ":"; MID (A2; 5; 2); ":"; MID (A2; 7; 2); ":"; MID (A2; 9; 2))
Questo dovrebbe aiutare a OpenOffice
= CONCATENA (MID (A7,1,2), ":", MID (A7 , 3,2), ":", MID (A7,5,2), ":", MID (A7,7,2), ":", MID (A7,9,2), ":", MID (A7,11,2))
Qui è in excel, ho usato la tua risposta sopra e costruito fuori di esso, grazie
Linux, UNIX - Bash
Given a address like MACstr="cc0deca96acf"
MACfiexd=$(sed -e 's/.\{2\}/&:/g;s/.$//' <<<$MACstr)
echo "$MACfixed"
cc:0d:ec:a9:6a:cf
Ecco un esempio di PowerShell rapida:
$macs = Get-Content C:\temp\MAC.txt
$output = foreach ($mac in $macs){
$mac.insert(2,":").insert(5,":").insert(8,":").insert(11,":").insert(14,":")
}
$output | Out-File c:\temp\newmac.txt
$macs = Get-Content C:\temp\MAC.txt
$output = foreach ($mac in $macs){
$mac.insert(2,":").insert(5,":").insert(8,":").insert(11,":").insert(14,":")
}
$output | Out-File c:\temp\newmac.txt
Grazie Jonathan Walz! Ha funzionato come un FASCINO!
ho usato il seguente per aggiungere indirizzo MAC due punti a una tabella HTML esistente in vim:
:%s/<td> \([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\) <\/td>/<td> \1:\2:\3:\4:\5:\6 <\/td>/g
soluzione di Matt con Notepad ++, ma messo a punto per le linee di cambiamento solo che (solo) contengono un indirizzo MAC:
TROVA: ^(..)(..)(..)(..)(..)(..)$
SOSTITUIRE: \1:\2:\3:\4:\5:\6
- 1. Come si rimuovono i due punti da un elenco di indirizzi MAC?
- 2. Collegamento di due punti in un grafico
- 3. Inserimento di un ellissoide in punti dati 3D
- 4. Inserimento di un carattere a intervalli regolari in un elenco
- 5. Inserimento ed estensione simultanea di un elenco?
- 6. Google App Engine: elenco di indirizzi IP?
- 7. ClojureScript: due punti di espressione
- 8. Bash elenco completo di indirizzi IP per un dominio
- 9. SQL: elenco dei punti di rettangolo
- 10. Inserimento una matrice di punti in postgres pitone
- 11. logback su un mac restituisce punti interrogativi invece di parole
- 12. Alternativa a due punti in un formato di tempo
- 13. Ottenere gdb per salvare un elenco di punti di interruzione?
- 14. operatore due punti in PHP
- 15. Due campi di inserimento all'interno un'etichetta
- 16. Inserimento in un elenco in una posizione specifica tramite obiettivi
- 17. Inserimento di HTML arbitrario in un DocumentFragment
- 18. Aggiungere punti elenco di testo a un modulo C#
- 19. Geolocazione di punti di accesso 802.11 tramite indirizzo MAC utilizzando l'API di geolocalizzazione di Google
- 20. timezone di analisi con due punti
- 21. Punti più vicini di due poligoni
- 22. Che cosa significano i due punti (:) e il trattino (-) in un numero di versione di dpkg?
- 23. NS_DESIGNATED_INITIALIZER prevede: (due punti)
- 24. Come trovare modelli (linee, cerchi, ...) da un elenco di punti?
- 25. Regex e due punti (:)
- 26. Inserimento in un elenco <modeltype> MVC3
- 27. Inserimento ordinato in un elenco piccolo (255 elementi)
- 28. Come posso creare un elenco di tutte le coppie uniche di punti dati in R?
- 29. Ricostruzione di un punto 3D da due punti 2D?
- 30. Selezione di un oggetto JSON con due punti nella chiave
Perché sarebbe '\ 1-' inserire i due punti? –
Woops mi dispiace dovrebbe essere \ 1: – Matt