Форум русскоязычного сообщества Ubuntu


Автор Тема: Bash  (Прочитано 1278 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Arturios

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Bash
« : 22 Июня 2017, 00:26:15 »
Всем доброго дня!
Помогите с задачей, а то я пришёл в тупик :idiot2:

Есть два файла orig и fix
Содержание orig:
Код: (xml) [Выделить]
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="abc_actio">Test</string>
    <string name="abc_action_bar_home_description">Navigate home</string>
    <string name="abc_action_bar_home_description_format">%1$s, %2$s</string>

Содержание fix:
Код: (xml) [Выделить]
<?xml version="1.0" encoding="utf-8"?>
<resources>
     <string name="abc_action_bar_home_description">На главную</string>
     <string name="abc_action_bar_home_description_format">%1$s, %2$s</string>
Нужно чтобы с файла orig в файл fix попадали те строки, которых нет в fix

Не могу понять как отобрать одинаковые строки т.к. по сути что
Код: (xml) [Выделить]
<string name="abc_action_bar_home_description">Navigate home</string>и
Код: (xml) [Выделить]
<string name="abc_action_bar_home_description">На главную</string>для меня одинаковые, но для diff они разные
Добился этим
Код: (bash) [Выделить]
grep -o '<string name=".*">' 5.diff | uniq -u  отбирать строки, но в результате он мне выдаёт только <string name="abc_action_bar_home_description"> а остальной оператор как Navigate home</string> теряется
Буду признателен любой помощи или наводке в нужное русло
« Последнее редактирование: 22 Июня 2017, 09:05:45 от БТР »

Оффлайн ReNzRv

  • Старожил
  • *
  • Сообщений: 2648
    • Просмотр профиля
Re: Bash
« Ответ #1 : 22 Июня 2017, 01:29:07 »
sed 's/\s\+/ /; s/^\s\+//; s/\s\+$//; s/>[^<]*</></g' orig fix | awk '!a[$0]++'sed'ом удаляем лишние пробелы и текст между > <, awk'ом выводим уникальные строки без сортировки.
« Последнее редактирование: 22 Июня 2017, 10:59:31 от renzrv »

Оффлайн djumba

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: Bash
« Ответ #2 : 29 Ноября 2017, 12:06:27 »
Привет, подскажите новичку плз...
А то чтот искал, больше по темам ничего не нашел...
Вообщем пробую Bash поставить, делаю все по мануалу Гикхакера, Windows 10-ка, 1709, поставил дистрибутив... Вроде все сделал правильно, но оболочка не запускается, говорит есть нераспакованные файлы...
Простите за сумбур, просто первый раз решил попробовать...

Punko

  • Гость
Re: Bash
« Ответ #3 : 29 Ноября 2017, 13:08:23 »
djumba, вам на форум по винде. Как вариант, сейчас доступен раздел форума "Разговоры обо всём". пересоздайте тему там, пожалуйста.

Оффлайн djumba

  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: Bash
« Ответ #4 : 30 Ноября 2017, 02:05:15 »
djumba, вам на форум по винде. Как вариант, сейчас доступен раздел форума "Разговоры обо всём". пересоздайте тему там, пожалуйста.
Ссор, а ткните пальцем плз, а то вроде смотрел, по винде ветки так и не нашел... Ну просто чтоб не спамить, куда можна перенаправить мой месс?

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6691
  • 20% Cooler
    • Просмотр профиля
Re: Bash
« Ответ #5 : 30 Ноября 2017, 02:48:24 »
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

 

Страница сгенерирована за 0.062 секунд. Запросов: 25.