HPC.ru lite - Все форумы
Форум: КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее
Тема: Несколько вопросов
Страницы: 1 2 [3]

[Ответить]
ВадимП [28.01.2004 00:38] :
я не помню, но думаю, что ему нужны недостающие библиотеки. mc, например нужен libncurses. Без библиотек perl работать практически наверняка не будет
Abear [28.01.2004 12:15] :
ВадимП, почему-то при использовании tr файл не изменяется, может что-нибудь изменить в команде или у меня чего-нибудь не хватает (кроме мозгов)
имеется в виду http://killefiz.de/zaurus/showdetail.php?app=868
ВадимП [28.01.2004 14:06] :
Команда tr сама по себе никаких файлов изменить не в состоянии. Это так называеймый "фильтр": она получает данные по конвейеру, обрабатывает и передает дальше.
То есть, для начала нам нужно сформировать ей входной поток данных. Для этого надо командой "cat" отправить содержимое файла в стандартный вывод.
cat file.csv
символ "|" (вертикальная черта, "pipe") используется для того чтобы связать стандартный вывод "cat" со стандартным вводом "tr". Этот символ вводится с клавиатуры zaurus'а как Fn-l ("l" - это маленькая"L").
Команда tr должна выглядеть так: "tr<пробел>\\t<пробел>,"
получаем в результате:
cat file.csv | tr \\t ,
эта команда берет содержимое файла file.csv, заменяет в нем символы табуляции на запятые и выводит то, что получилось, на экран.

Но нам нужно получить результат в файле, а не на экране. Поэтому мы перенаправляем стандартный вывод с консоли в файл "> file1.csv".
Итак, получили окончательный вариант команды:
cat file.csv | tr \\t , > file1.csv

При этом исходный файл (file.csv) не изменяется!!!
Вместо того, чтобы изменять исходный файл, эта команда создает новый. С именем file1.csv. Именно file1.csv, а не исходный файл нужно импортировать в PortaBase.
Abear [28.01.2004 15:12] :
ВадимП, прошу прощения, под tr я подразумевал всю команду
cat file.csv | tr \\t , > file1.csv

В консоли набираю
cat Data.csv | tr \\t ,
чтобы увидеть содержимое измененного файла и получаю:
"Name";"tel"
"zaurus";"1234567"
то есть файл не изменился
Abear [28.01.2004 18:21] :
Тупо заменил ";" на "," с помощью Replace из МС и все получилось.
Однако, как предупреждал Voblin возникла проблема с русским языком
С этим как-нибудь можно бороться?
ВадимП [28.01.2004 21:26] :
Я думаю, что можно для начала попробовать перекодировать при помощи iconv или recode из Psion'овской кодировки (не знаю, что он использует) в UTF-8.
Если кому интересно могу поместить recode для zaurus (я его сам собирал и он занимает меньше места на диске, чем вариант из arm-debian, потому что последний не сжат и из него не удалена таблица символов).
[К сообщению приложены файлы: recode.gz (612 кб)]
Voblin [28.01.2004 22:00] :
Добавил описане в свои советы в форуме. Но главный секрет именно использование unicode в файле как я и писал выше в эту кодировку надо переделать исходный файл тогда русские буквы будут.
Abear [01.02.2004 19:39] :
Voblin

Попытался воспользоваться вашими советами, но что-то не получается:
1. Где тут исходный .csv файл?
2. Что это за файл rusengd.txt и где его взять?
Abear [03.02.2004 17:11] :
УРА!!!!!!!!
Наконец всё получилось

ОГРОМНОЕ спасибо ВадимП и Voblin без них я бы ещё года полтора кувыркался.
[Ответить]
[< Назад]