Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.


Członek DUG



Mam problem z przetworzeniem pliku html.
Niby file pokazuje format HTML cat również poprawnie go pokazuje natomiast polecenie cat plik.html |less już pokazuje mi tak jakby był binarką
Plik był generowany przez program księgowy
próbowałem w przeglądarce zapisać go jako tekstowy i lipa.
Offline



Nadworny matematyk




Ja osobiście nie rozumiem w czym problem. Jakbyś pokazał wyniki tego cat i cat ...|less jakiś kawałek, to może dochodzenie by poszło sprawniej.... Może coś w stylu cat plik.html > plik pomoże?
Offline


Członek DUG



cat plik_html |less wygląda tak
http://ubuntuone.com/1ihIUvu4W6jDseLKYQBEeO
Bez less jak zcatuje pokazuje mi normalnie znaczniki z trescią.
Może coś w stylu cat plik.html > plik pomoże?
Próbowałem nic nie daje
Offline




Użyszkodnik
Dlaczego cat plik.html |less zamiast less plik.html?
Offline



Nadworny matematyk




A... Wszystko jasne... Musisz usunąć białe znaki coś w stylu:
cat plik |sed 's/\s//g'
Jak się nie uda podeślij mi jakoś ten plik...
P.S.
Oczywiście głowy nie daje, że to jest to co opisałem, ale tak mi się wydaje ;p
Offline







Podobno człowiek...;)








Pewnie kodowanie, np base64, rot13 czy coś podobnego.
Przeglądarki potrafią to interpretować, w przeciwieństwie do ludzi.
W każdym razie, jak przeglądarka to otwiera, to znaczy, że da się to odczytać.
Offline


Członek DUG



@Minio
Jakoś tak z przyzwyczajenia ale dzięki twój sposób to nawet mi wypluwa że plik może być binarny.
P@blo
Twój sposób owszem usunął białe znaki ale kodowanie pozostało. Pliku natomiast nie prześlę bo są w nim dane firmy, musisz zrozumieć.
To może inaczej jak sprawdzić w czym to jest kodowane?
Offline


Członek DUG
Skoro cat go catuje, a less go źle lessuje to problem jest w less. I faktycznie, bo na przykład "less" puszczone na "git log" z kolorkami pokazuje znaki kolorów jako jakieś krzaczki czy coś.
Pewnie interesuje się opcja "-r".
"less -r $PLIK" lub to brzydsze "cat $PLIK | less -r"
Offline


Członek DUG



@NIC
nie pomogło
Offline



Nadworny matematyk




Spoko rozumiem... Myślałem, że to problem typu - napisałem plik pod win i chce go oglądnąć pod lin. Bo win nawet ma znaczek na 'enter' i z tym i się skojarzyło :)
Offline


Członek DUG



A tak mi pluje jak zapuszcze na ten plik kawalek kodu pythona
#!/usr/bin/python
# -*- coding: utf-8 -*-
lista_linijek = []
for linijka in open('/home/tk/Praca/nowy.txt', 'r'):
print(linijka)
lista_linijek.append(linijka)
print(lista_linijek)Offline


Członek DUG
Chyba pomyliłeś link, bo to nie do pythona, ale do HTMLa. I wygląda na UTF-16.
Spróbuj: export LESSCHARSET="utf-16"; less $PLIK
Can less display non-English language characters?
Less has two ways to display non-English characters. If your system uses a non-ASCII single-byte character set, you should set up your system with the correct "locale" settings. If your system does not support setlocale, you can set the LESSCHARSET or LESSCHARDEF environment variable to tell less what language you are using. See the section "NATIONAL CHARACTER SETS" in the man page for details.
If your system supports the UTF-8 encoding of Unicode for non-ASCII text, as many modern systems do, you should either set your locale to something that includes the string "UTF-8" or "UTF8" (either uppercase or lowercase is ok), or set LESSCHARSET to "utf-8".
źródło: http://www.greenwoodsoftware.com/less/faq.html
Ostatnio edytowany przez NIC (2012-02-13 21:55:18)
Offline


Członek DUG



Po eksporcie
less plik.html
invalid charset name
Offline


Członek DUG
Tak. less nie obsługuje UTF-16. less obsługuje tylko i wyłącznie ASCII i UTF8.
Więc potrzebujesz konwertować, np.
iconv -f utf-16 < $PLIK | less
Offline


Członek DUG



To samo co wyżej u mnie w poście
Offline


Członek DUG
A tak. Wybacz. Dałem tam Ci exporta. To cofnie tamten krok i już less zacznie działać w tej sesji terminala :)
unset LESSCHARSET
Offline


Członek DUG



O zadziałało
Super dzięki, już powoli czacha mi się przegrzewała.
Offline