HTML 파일에서 항목을 찾아 다음 줄의 값을 바꿉니다.

HTML 파일에서 항목을 찾아 다음 줄의 값을 바꿉니다.

나는 HTML 파일을 가지고 있고 아래는 파일의 일부입니다.

<tr>
  <th width='25%'><div class="detail"><b>VM Capacity</b></div></th>
  <td width='75%'>455</td>
  </tr>

sed를 사용하여 파일을 편집하고 값을 455에서 64로 변경해 보세요. 다음 명령을 사용하십시오.

sed -i '/<th width='25%'><div class="detail"><b>VM Capacity<\/b><\/div><\/th>/!b;n;c<td width='75%'>64</td>/g' cluster_report.html

그러나 파일은 변경되지 않습니다.

답변1

sed가 스크립트를 구문 분석하기 전에 쉘이 작은따옴표를 엉망으로 만들 것입니다. 스크립트를 에코하여 어떤 일이 일어나는지 확인하세요.

.이러한 경우에는 일치하는 패턴에서 따옴표를 로 바꾸는 것을 선호합니다. 이는 실제 사례에 적용됩니다.

/g그렇다면 당신의 후행이 무엇을 해야할지 잘 모르겠습니다 . 이는 귀하가 원하지 않는 교체의 일부가 될 것입니다. 그냥 하면 안되는 이유

sed -i '/<th width=.25%.><div class="detail"><b>VM Capacity<\/b><\/div><\/th>/!b;n;s/455/64/' cluster_report.html

관련 정보