Vraag & Antwoord
Verschillen uit 2 bestanden halen op FC4
10 antwoorden
- In bestandA staan een aantal ipadressen, in bestandB staan ook ipadressen, sommige hiervan staan ook in bestandA. Ik wil een nieuw bestand maken waar alleen de unieke ipadressen instaan die bestandA heeft. Met "comm" en met "diff" lukt het mij niet, wie kan mij op weg helpen met de syntax?
- [quote:a1f65aaa7e="Venzent"]In bestandA staan een aantal ipadressen, in bestandB staan ook ipadressen, sommige hiervan staan ook in bestandA. Ik wil een nieuw bestand maken waar alleen de unieke ipadressen instaan die bestandA heeft. Met "comm" en met "diff" lukt het mij niet, wie kan mij op weg helpen met de syntax?[/quote:a1f65aaa7e]
ik dacht dat er wel iets moest kunnen gedaan worden met cat en grep… maar ik weet niet juist wat (of awk ipv grep) - [quote:2323e8dce8="tafelpoot"][quote:2323e8dce8="Venzent"]In bestandA staan een aantal ipadressen, in bestandB staan ook ipadressen, sommige hiervan staan ook in bestandA. Ik wil een nieuw bestand maken waar alleen de unieke ipadressen instaan die bestandA heeft. Met "comm" en met "diff" lukt het mij niet, wie kan mij op weg helpen met de syntax?[/quote:2323e8dce8]
ik dacht dat er wel iets moest kunnen gedaan worden met cat en grep… maar ik weet niet juist wat (of awk ipv grep)[/quote:2323e8dce8]
[code:1:2323e8dce8]
gawk - pattern scanning and processing language
[/code:1:2323e8dce8]
zeker weten???? Zie niet direct hoe je dat zou moeten doen met awk….. - Je kunt dit simpel aanpakken door de 2 bestanden te emrgen om vervolgens uniek te sorteren.
Dus :
[code:1:89eab47e1d]
Bestanden samenvoegen :
sort -m de_bewuste_file_1.txt de_bewuste_file_2.txt
Nieuwe bestand sorteren en filteren :
sort -u de_bewuste_file.txt
Of in 1 keer :
sort -m input_file_1.txt input_file_2.txt | sort -u > output.txt
[/code:1:89eab47e1d]
Kijk eens naar de mogelijkheden van stdin en out, dat is heel handig zoals je hier al ziet. - [quote:17bc56cfd8="Venzent"][quote:17bc56cfd8="tafelpoot"]
ik dacht dat er wel iets moest kunnen gedaan worden met cat en grep… maar ik weet niet juist wat (of awk ipv grep)[/quote:17bc56cfd8]
[code:1:17bc56cfd8]
gawk - pattern scanning and processing language
[/code:1:17bc56cfd8]
zeker weten???? Zie niet direct hoe je dat zou moeten doen met awk…..[/quote:17bc56cfd8]
ik weet allesinds dat het mogelijk is om met awk dingen niet te laten zien
[code:1:17bc56cfd8]cat bestand.txt|awk {en dan iets dat ik niet weet}[/code:1:17bc56cfd8]
mja waarschijnlijk lukt dit met grep ook wel
(ik dacht trouwens dat grep kwam van gawk -r -e -p maar ik kan mij vergissen)
update: de gegeven oplossign lijkt me heel handig!!! - [quote:1ebaec3174="tafelpoot"]
mja waarschijnlijk lukt dit met grep ook wel
[/quote:1ebaec3174]
Met grep moet je inderdaad middels -v de hits kunnen laten zie die NIET matchen, echter de output is anders :cry:
dit staat in var_ips: (alle online ipadressen)
[code:1:1ebaec3174]
[root@FC3 softw_read]# cat var_ips
192.168.0.0
192.168.0.18
192.168.0.19
192.168.0.24
192.168.0.25
192.168.0.26
192.168.0.27
192.168.0.28
192.168.0.29
192.168.0.30
192.168.0.31
192.168.0.33
192.168.0.34
192.168.0.35
192.168.0.38
192.168.0.40
192.168.0.41
192.168.0.42
192.168.0.43
192.168.0.46
192.168.0.47
192.168.0.48
192.168.0.49
192.168.0.50
192.168.0.52
192.168.0.53
192.168.0.54
192.168.0.56
192.168.0.58
192.168.0.60
192.168.0.61
192.168.0.63
192.168.0.64
192.168.0.66
192.168.0.67
192.168.0.68
192.168.0.69
192.168.0.71
192.168.0.72
192.168.0.73
192.168.0.75
192.168.0.78
192.168.0.81
192.168.0.82
192.168.0.83
192.168.0.85
192.168.0.86
192.168.0.87
192.168.0.88
192.168.0.89
192.168.0.90
192.168.0.91
192.168.0.94
192.168.0.96
192.168.0.99
192.168.0.101
192.168.0.102
192.168.0.103
192.168.0.105
192.168.0.106
192.168.0.107
192.168.0.109
192.168.0.111
192.168.0.112
192.168.0.113
192.168.0.114
192.168.0.116
192.168.0.117
192.168.0.118
192.168.0.120
192.168.0.125
192.168.0.127
192.168.0.128
192.168.0.129
192.168.0.131
192.168.0.133
192.168.0.135
192.168.0.136
192.168.0.138
192.168.0.140
192.168.0.144
192.168.0.145
192.168.0.146
192.168.0.147
192.168.0.149
192.168.0.150
192.168.0.151
192.168.0.152
192.168.0.153
192.168.0.156
192.168.0.157
192.168.0.159
192.168.0.162
192.168.0.163
192.168.0.168
192.168.0.169
192.168.0.171
192.168.0.175
192.168.0.178
192.168.0.182
192.168.0.184
192.168.0.187
192.168.0.189
192.168.0.190
192.168.0.194
192.168.0.195
192.168.0.208
192.168.0.214
192.168.1.0
192.168.1.1
192.168.1.2
192.168.1.4
192.168.1.5
192.168.1.6
192.168.1.7
192.168.1.8
192.168.1.9
192.168.1.10
192.168.1.11
192.168.1.13
192.168.1.16
192.168.1.17
192.168.1.18
192.168.1.19
192.168.1.20
192.168.1.22
192.168.1.23
192.168.1.24
192.168.1.25
192.168.1.28
192.168.1.29
192.168.1.32
192.168.1.33
192.168.1.34
192.168.1.35
192.168.1.37
192.168.1.38
192.168.1.39
192.168.1.41
192.168.1.42
192.168.1.43
192.168.1.45
192.168.1.46
192.168.1.47
192.168.1.48
192.168.1.49
192.168.1.51
192.168.1.54
192.168.1.55
192.168.1.57
192.168.1.58
192.168.1.61
192.168.1.62
192.168.1.65
192.168.1.66
192.168.1.68
192.168.1.70
192.168.1.75
192.168.1.100
192.168.1.115
192.168.1.150
192.168.1.199
192.168.1.200
192.168.1.207
192.168.1.208
192.168.1.209
192.168.1.210
192.168.1.212
192.168.1.213
192.168.1.215
192.168.1.216
192.168.1.221
192.168.1.222
192.168.1.223
192.168.1.224
192.168.1.225
192.168.1.226
192.168.1.230
192.168.1.231
192.168.1.232
192.168.1.235
192.168.1.240
192.168.1.241
192.168.1.244
192.168.1.245
192.168.1.247
192.168.1.248
192.168.1.249
192.168.1.250
192.168.1.251
192.168.1.253
192.168.1.254
192.168.1.255
[root@FC3 softw_read]#
[/code:1:1ebaec3174]
Dits staat er in exclusions: (ipadressen die NIET uitgelezen moeten worden)
[code:1:1ebaec3174]
192.168.0.0
192.168.0.1
192.168.0.2
192.168.0.3
192.168.0.4
192.168.0.5
192.168.0.6
192.168.0.7
192.168.0.8
192.168.0.9
192.168.0.10
192.168.0.11
192.168.0.12
192.168.0.13
192.168.0.14
192.168.0.15
192.168.0.16
192.168.0.17
192.168.0.241
192.168.0.242
192.168.0.243
192.168.0.244
192.168.0.245
192.168.0.246
192.168.0.247
192.168.0.248
192.168.0.249
192.168.0.250
192.168.0.251
192.168.0.252
192.168.0.253
192.168.0.254
192.168.0.255
192.168.1.0
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5
192.168.1.6
192.168.1.7
192.168.1.8
192.168.1.9
192.168.1.10
192.168.1.11
192.168.1.12
192.168.1.13
192.168.1.14
192.168.1.15
192.168.1.16
192.168.1.17
192.168.1.18
192.168.1.19
192.168.1.20
192.168.1.21
192.168.1.22
192.168.1.23
etc etc etc (tot 192.168.1.255)
[/code:1:1ebaec3174]
echter als ik de grep doe met -v (, –invert-match
Invert the sense of matching, to select non-matching lines.)
[code:1:1ebaec3174]
[root@FC3 softw_read]# cat var_ips | grep -v -f exclusions
[root@FC3 softw_read]#
[/code:1:1ebaec3174]
niks dus :cry: - cat var_ips | grep -f exclusions geeft wel alle matchen.
[code:1:17d015ba70]
cat var_ips | grep -f exclusions
192.168.0.0
192.168.0.18
192.168.0.19
192.168.0.24
192.168.0.25
192.168.0.26
192.168.0.27
192.168.0.28
192.168.0.29
192.168.0.30
192.168.0.31
192.168.0.33
192.168.0.34
192.168.0.35
192.168.0.38
192.168.0.40
192.168.0.41
192.168.0.42
192.168.0.43
192.168.0.46
192.168.0.47
192.168.0.48
192.168.0.49
192.168.0.50
192.168.0.52
192.168.0.53
192.168.0.54
192.168.0.56
192.168.0.58
192.168.0.60
192.168.0.61
192.168.0.63
192.168.0.64
192.168.0.66
192.168.0.67
192.168.0.68
192.168.0.69
192.168.0.71
192.168.0.72
192.168.0.73
192.168.0.75
192.168.0.78
192.168.0.81
192.168.0.82
192.168.0.83
192.168.0.85
192.168.0.86
192.168.0.87
192.168.0.88
192.168.0.89
192.168.0.90
192.168.0.91
192.168.0.94
192.168.0.96
192.168.0.99
192.168.0.101
192.168.0.102
192.168.0.103
192.168.0.105
192.168.0.106
192.168.0.107
192.168.0.109
192.168.0.111
192.168.0.112
192.168.0.113
192.168.0.114
192.168.0.116
192.168.0.117
192.168.0.118
192.168.0.120
192.168.0.125
192.168.0.127
192.168.0.128
192.168.0.129
192.168.0.131
192.168.0.133
192.168.0.135
192.168.0.136
192.168.0.138
192.168.0.140
192.168.0.144
192.168.0.145
192.168.0.146
192.168.0.147
192.168.0.149
192.168.0.150
192.168.0.151
192.168.0.152
192.168.0.153
192.168.0.156
192.168.0.157
192.168.0.159
192.168.0.162
192.168.0.163
192.168.0.168
192.168.0.169
192.168.0.171
192.168.0.175
192.168.0.178
192.168.0.182
192.168.0.184
192.168.0.187
192.168.0.189
192.168.0.190
192.168.0.194
192.168.0.195
192.168.0.208
192.168.0.214
192.168.1.0
192.168.1.1
192.168.1.2
192.168.1.4
192.168.1.5
192.168.1.6
192.168.1.7
192.168.1.8
192.168.1.9
192.168.1.10
192.168.1.11
192.168.1.13
192.168.1.16
192.168.1.17
192.168.1.18
192.168.1.19
192.168.1.20
192.168.1.22
192.168.1.23
192.168.1.24
192.168.1.25
192.168.1.28
192.168.1.29
192.168.1.32
192.168.1.33
192.168.1.34
192.168.1.35
192.168.1.37
192.168.1.38
192.168.1.39
192.168.1.41
192.168.1.42
192.168.1.43
192.168.1.45
192.168.1.46
192.168.1.47
192.168.1.48
192.168.1.49
192.168.1.51
192.168.1.54
192.168.1.55
192.168.1.57
192.168.1.58
192.168.1.61
192.168.1.62
192.168.1.65
192.168.1.66
192.168.1.68
192.168.1.70
192.168.1.75
192.168.1.100
192.168.1.115
192.168.1.150
192.168.1.199
192.168.1.200
192.168.1.207
192.168.1.208
192.168.1.209
192.168.1.210
192.168.1.212
192.168.1.213
192.168.1.215
192.168.1.216
192.168.1.221
192.168.1.222
192.168.1.223
192.168.1.224
192.168.1.225
192.168.1.226
192.168.1.230
192.168.1.231
192.168.1.232
192.168.1.235
192.168.1.240
192.168.1.241
192.168.1.244
192.168.1.245
192.168.1.247
192.168.1.248
192.168.1.249
192.168.1.250
192.168.1.251
192.168.1.253
192.168.1.254
192.168.1.255
[/code:1:17d015ba70] - Als je 2 lijsten wil samenvoegen en daar de duplicaten wilt uit halen dan heeft Yohanman toch al een oplossing aangedragen ?
- [quote:0018176684="Pinky & The Brain"]Als je 2 lijsten wil samenvoegen en daar de duplicaten wilt uit halen dan heeft Yohanman toch al een oplossing aangedragen ?[/quote:0018176684]
Ja, maar daar komen dan ook de adressen in die in exclusions voorkomen die niet in de var_ips staan, en dat moet dus niet.
Ik wil dus [b:0018176684]alleen[/b:0018176684] de adressen die in var_ips voorkomen die [b:0018176684]niet[/b:0018176684] in exclusions staan. - [quote:eabe2cde6d="Venzent"][quote:eabe2cde6d="Pinky & The Brain"]Als je 2 lijsten wil samenvoegen en daar de duplicaten wilt uit halen dan heeft Yohanman toch al een oplossing aangedragen ?[/quote:eabe2cde6d]
Ja, maar daar komen dan ook de adressen in die in exclusions voorkomen die niet in de var_ips staan, en dat moet dus niet.
Ik wil dus [b:eabe2cde6d]alleen[/b:eabe2cde6d] de adressen die in var_ips voorkomen die [b:eabe2cde6d]niet[/b:eabe2cde6d] in exclusions staan.[/quote:eabe2cde6d]
dus 2 lijsten samen voegen en als er een 2 gelijke ips zijn, ze allebei verwijderen
Beantwoord deze vraag
Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.
Gerelateerde vragen
- URL zonder extensie wil niet helemaal lukken
- https verbinding met ssl in owncloud
- afspelen met audacity werkt niet goed
- Computer!Totaal-forum maakt plaats voor v&a-module
- computer start soms niet op
- Pro show gold 4 overgangen tussen tekstdia's
- wie kan mij meer vertellen over een Gigabyte GA-B85M-HD3
- Windows Tijdelijke bestanden