일부 텍스트 앞뒤에 텍스트를 추가해 보세요.

일부 텍스트 앞뒤에 텍스트를 추가해 보세요.

다음 명령을 시도했습니다.

  1. 아래 줄을 실행하면 언급된 출력 텍스트가 제공됩니다.

    cat $tmp_list_address | sort | uniq | sed 's/^/address=\//;s/$/\/192.168.1.1/' > $tmp_list_final
    
  2. 아래 줄을 실행하면 언급된 출력 텍스트가 제공됩니다.

    sed -i 's/.*/address=&\/192.168.1.1/' $tmp_list_address
    
  3. 일도 따로 하려고 노력해요. 아래에 이 부분을 추가해 보겠습니다 address=. 그런데 마지막에 IP를 추가하려고 하면 아래와 같은 출력 텍스트로 변경됩니다.

    sed -i 's/^/address=/' $tmp_list_address
    sed -i 's/$/$pixelserv_ip/' $tmp_list_ip
    

원래 목록은 내가 얻고 싶은 목록이며 여기에는 공백과 공백도 저장되어 있으며 텍스트를 추가하기 전에 제거했습니다.

curl -s http://www.malwaredomainlist.com/hostslist/hosts.txt | grep -v "#" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $3}' | grep -v '^\\' | grep -v '\\$' | sort >> $tmp_list

sed -i 's/^ *//; s/ *$//; /^$/d' $tmp_list

원하는 출력:

address=/0koryu0.easter.ne.jp/0.0.0.0
address=/109-204-26-16.netconnexion.managedbroadband.co.uk/0.0.0.0
address=/11.lamarianella.info/0.0.0.0

참고: 0.0.0.0다른 IP 주소일 수도 있습니다(예: ) 192.168.1.1.

텍스트 입력:

0koryu0.easter.ne.jp
109-204-26-16.netconnexion.managedbroadband.co.uk
11.lamarianella.info
1866809.securefastserver.com
2amsports.com
3.bluepointmortgage.com

출력 텍스트:

/10.0.0.1109-204-26-16.netconnexion.managedbroadband.co.uk
/10.0.0.111.lamarianella.info
/10.0.0.11866809.securefastserver.com
/10.0.0.12amsports.com
/10.0.0.13.bluepointmortgage.com

답변1

sed를 사용하여 그룹화하십시오.

curl -s http://www.malwaredomainlist.com/hostslist/hosts.txt | sed 's#^\([0-9.]*\)  \([a-z0-9.]*\)#address=/\2/0.0.0.0#'

관련 정보