파일에 새 데이터를 어떻게 추가합니까?

파일에 새 데이터를 어떻게 추가합니까?

그래서! 출력을 파일에 저장하는 nmap 스캔이 있습니다.nmapscan.txt:

sudo nmap -sP 192.168.1* > nmapscan.txt

원하는 모든 출력을 정리하고 파일에 저장하는 다른 명령이 있습니다.라이브호스트.txt:

cat ./temp/nmapscan.txt | grep -o -E '([[:xdigit:]]{1,2}:){5}[[:xdigit:]]{1,2}' > ./temp/macaddresses.txt

Mac 주소가 저장됩니다. 그리고:

grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' ./temp/nmapscan.txt > ./temp/ipaddresses.txt

IP 주소가 여기에 저장됩니다. 그리고:

cat ./temp/nmapscan.txt | grep -o -P '(?<=for).*(?=.attlocal)' > ./temp/hostnames1.txt

그러면 호스트 이름이 저장됩니다. 그리고:

cut -d' ' -f 2 ./temp/hostnames1.txt > ./temp/hostnames2.txt

호스트 이름을 정리하기 위해 이 작업을 수행했습니다(죄송합니다. 원래 게시물에 포함시키는 것을 잊어버렸습니다)...그리고:

cut -d' ' -f 1 ./temp/hostnames2.txt | paste ./temp/macaddresses.txt ./temp/ipaddresses.txt - > ./temp/livehosts.txt

..이것은 필요한 데이터를 결합하고 다음과 같이 표시되는 최종 제품입니다.

xx:xx:xx:xx:xx:xx   192.168.1.1     Netgear
xx:xx:xx:xx:xx:xx   192.168.1.111   John's Toilet Cam

스캔해서 다시 쓰고 싶고라이브호스트.txt파일이 어느 정도 업데이트되었습니다. 그대로 스캔한 후 다시 작성하여 파일을 덮어쓰세요. 그리고 모든 장치가 서로 다른 시간에 연결되는 것은 아닙니다.

나는 시도했다:

>>

그러나 이는 이미 파일에 있는 데이터를 두 배로 늘릴 뿐입니다.

데이터를 두 배로 늘리고 중복을 제거한 다음 새 파일에 쓰는 것이 최선의 접근 방식입니까?

당신은 무엇을 하시겠습니까? 감사해요!

답변1

불필요한 작업이 너무 많습니다.

먼저 -oG옵션(grepable 형식)을 사용합니다. 이렇게 하면 작업이 더 쉬워질 것입니다. 원천:Nmap 참조 가이드 - 출력. 그리고 > nmapscan.txtnmap에는 이미 옵션이 있으므로 파일 리디렉션( )을 수행할 필요가 없습니다 -oN. 파일에 기록할 수 있지만 여전히 콘솔에 출력을 얻을 수 있습니다.

귀하의 대상 사양이 합법적인지 확실하지 않습니다.

nmap -sP 192.168.1*

아마도 nmap내가 아는 한 그것은 유효한 구문이 아니라는 것을 올바르게 해석하려고 노력할 것입니다.

대신 192.168.1.0/24또는를 사용하십시오 192.168.1.1-255(주소가 192.168.1.0에서 192.168.1.255인 소규모 네트워크를 검색한다고 가정).

바라보다:Nmap 참조 가이드 - 대상 사양

관련 정보