Как синхронизировать приложения с двух компьютеров

Простой подход bash / sed:

$ while read w; do sed -nE "s/\"(\S*).*$w.*/\1\t$w/p" file; done < words 
This    text
Another thing
It  try
    Better

while read w; do ...; done < words будет перебирать каждую строку в файле words и сохранять ее как $w. [F5] заставляет sed ничего не печатать по умолчанию. Затем команда sed заменит двойные кавычки, за которыми следуют не-пробелы (\"(\S*), скобки служат для «захвата» того, что соответствует \S*, первое слово, и мы можем позже ссылаться на него как \1), 0 или более символов (.*), а затем искомое слово ($w) и 0 или более символов (.*). Если это соответствует, мы заменяем его только 1-м словом, вкладкой и $w (\1\t$w) и печатаем строку (это то, что делает p в s///p).

1
задан 17 November 2011 в 13:46

0 ответов

Другие вопросы по тегам:

Похожие вопросы: