Tomsk Sysadmins Forum
Unix => Программирование => Topic started by: adventurerodnako on February 24, 2011, 20:37:18
-
Подскажите ПЛИЗ.
Как в VIM сохранить файл но не d:\xxx.txt
а d:\@здесь типа переменная (кусочек текста)@.txt
например надо из одного файла создать МНОГО файлов порезав по 1й строке, название файла --> первое вхождение до запятой в каждой строке:
test1,типа текст1,типа текст1,типа текст1,типа текст1,типа текст1
test2,типа текст2,типа текст2,типа текст2,типа текст2,типа текст2
test3,типа текст3,типа текст3,типа текст3,типа текст3,типа текст3
должны получиться файлы с названиями
---test1---
test1,типа текст1,типа текст1,типа текст1,типа текст1,типа текст1
---test2---
test2,типа текст2,типа текст2,типа текст2,типа текст2,типа текст2
---test3---
test3,типа текст3,типа текст3,типа текст3,типа текст3,типа текст3
for i in getline(1, "$")
echo substitute(i, ",.*", "", "")
.,+0w! D:\\<-- вот как сюда вставить переменную? -->.txt
endfor
Заранее благодарен.
-
Зачем vim? Задача очень просто делается даже на обычном шелле:
export IFS=","
cat input.txt | while read fname line; do
echo "$fname,$line" > $fname
done