Не полный ответ, но Вы знающий о так называемом "легком режиме Vim" (vim -y
)? Это всегда находится в режиме редактирования defaut и делает довольно многое из того, что Вы хотите, и не нуждается в Вас, чтобы установить или настроить что-либо. Это делает CTRL-A, C, V, X, Y и т.д. Из ключевого списка:
Key mappings:
moves by screen lines rather than file lines
idem
Q does "gq", formatting, instead of Ex mode
in Visual mode: deletes the selection
CTRL-X in Visual mode: Cut to clipboard
idem
CTRL-C in Visual mode: Copy to clipboard
idem
CTRL-V Pastes from the clipboard (in any mode)
idem
CTRL-Q do what CTRL-V used to do
CTRL-Z undo
CTRL-Y redo
system menu
CTRL-A select all
next window, CTRL-W w
close window, CTRL-W c
Намного более мощная версия этого является Кремовой, который повторно отображает намного больше ключей и делает основные команды подобными другим редакторам, с которыми можно быть знакомы.
Существует также сменный Vimacs, который включает все общие emacs ключевые отображения. Это легко установить и может сделать то, что Вы хотите (я никогда не пробовал его).
Помещение каждого кортежа на отдельной строке:
sed 's@)\s*,\s*(@)\n(@g' your_file
Применять модификации к файлу (вместо того, чтобы печатать измененный файл к stdout):
sed -i 's@)\s*,\s*(@)\n(@g' your_file
Сообщить только value3
(принятие измененного файла):
awk -F',' '{print $3}' <your_new_file
Это предполагает, что сами значения не содержат ,
. См. комментарий Michael ниже.
Сделать все это сразу (не изменяя файл):
sed 's@)\s*,\s*(@)\n(@g' your_file | awk -F',' '{print $3}'
Упростить вышеупомянутое awk
звоните, я использовал то, что, учитывая Ваш пример мы можем разделить вход на ,
и value3
будет 3-е значение и не иметь никакого parens в нем. Если Вы хотели value1
или value4
вместо этого, можно сделать что-то как:
sed 's@)\s*,\s*(@)\n(@g' your_file | awk -F',' '{print $1}' | sed 's/[()]//'
Это, конечно, предполагает, что Ваши значения не имеют parens в своем содержании.
sed
использование безотносительно символа Вы помещаете послеs
как разделитель шаблона (см. это). В этом случае я использовал@
вместо/
потому что я, оказывается, думаю, что это более читаемо. Особенно полезно, если Ваш шаблон содержит/
(например, в путях). Использование – Joseph R. 11.10.2013, 15:06