2014-10-28 4 views
-1

У меня есть HTML-документ, в котором я хочу, чтобы автоматически вставить изображение сразу после тега тела:Как добавить строки с помощью командной строки

HTML-:

<body> 
    <div class="indexHeader"><a href="allclasses-frame.html" target="packageFrame">All Classes</a> 
</div> 
.... 

И только после <body> тега Я хочу добавить в командной строке изображение, и это будет выглядеть следующим образом:

<body> 
    <img src="resources/logo_small.png" alt="My image" height="80" /> 
    <div class="indexHeader"><a href="allclasses-frame.html" target="packageFrame">All Classes</a></div> 

Как я могу достичь этого в командной строке? Примечание: Я использую Windows.

Это мои попытки: Сначала попробуйте:

awk -v image='<img src="resources/logo_small.png" alt="My image" height="80" />' '1; /<body>/ {print image}' overview-frame.html 

В результате: Система не может найти указанный файл.

Вторая попытка:

sed 's?<body>?<body>\n\t<img src="resources/logo_small.png" alt="My image" height="80" />?g' overview-frame.html 

В результате: Система не может найти указанный файл.

+0

вы пытались достичь? Мы хотели бы видеть вашу попытку. (во всяком случае, проверить awk и sed) –

+0

Да, но никто из них не приблизил меня к решению. Вот почему я не отправлял свои попытки. – Sonhja

ответ

1

Для этой конкретной цели, вы можете использовать sed таким образом:

sed 's?<body>?<body>\n\t<img src="resources/logo_small.png" alt="My image" height="80" />?g' filename 

где filename это файл, содержащий HTML-код. В предыдущей строке будет напечатан обновленный файл на экране, но он не сохранит изменения в файле: используйте -i вариант sed.

Это решение очень специфично для проблемы, с которой вы столкнулись, если вы хотите более сложную модификацию, прочитайте man sed или Google для примеров sed.

+0

Не работает ... В нем написано: sed 's? src = "resources/logo_small.png" alt = "My image" height = "80"/0 ? g ' Система не может найти указанный файл. Может быть такой же, как указано выше? Открытые и закрытые теги? – Sonhja

+0

Вы правильно заменили 'filename' именем файла, содержащего html-код? Он работает на моей машине. – Matt

+0

Я пишу точно такую ​​же строку: sed? S? ? \ n \ t My image? G 'overview-frame.html Но это не работает ... – Sonhja

0

я мог, наконец, сделать его работу, используя этот код:

sed -i "s#<body>#<body>\n\t<img src='resources/logo_small.png' alt='FacePhi Biometria' height='80' />#" filename 
Смежные вопросы