Chciałbym wywołać narzędzie wiersza poleceń w Mac OS X 10.8, które daje mi możliwość konwersji pliku tekstowego zapisanego w standardowym kodowaniu Roman Western Mac OS Roman na bardziej ogólny UTF-8.
Wywołam narzędzie z utworzonego przeze mnie AppleScript. AppleScript działa bardzo wolno podczas pracy z bardzo dużymi blokami tekstu. Dlatego chcę parsować i konwertować tekst przy użyciu wiersza polecenia OS X. Znalazłem narzędzie o nazwie „sed”, które pozwala mi na parsowanie tekstu. Jednak nadal istnieje wiele elementów pliku, które należy oczyścić, a znaki są wyświetlane jako śmieci, jeśli plik jest otwierany jako utf-8 (np. Inteligentne cytaty i elipsy).
Myślę, że wymuszenie konwersji kodowania tekstu może pomóc wyeliminować wszystkie znaki inne niż utf8 w pliku. Nie widzę jednak, jak „sed” może łatwo przekonwertować kodowanie tekstu.
Plik temp txt będę już zapisany jako MacRoman na dysku przy użyciu wbudowanych procedur AppleScript.
Czy ktoś z was ma jakieś pomysły na temat wbudowanego narzędzia wiersza polecenia, które może konwertować kodowanie tekstu? Wiersz poleceń dla wydajności i wbudowany, ponieważ inni użytkownicy mojego skryptu niekoniecznie mają odpowiedni zestaw narzędzi, jeśli nie jest wbudowany.
Dzięki za pomoc!
Odpowiedzi:
Innym sposobem konwersji znaków spoza ASCII na warianty ASCII jest użycie
iconv -t ASCII//TRANSLIT
:ASCII//IGNORE
usunie znaki spoza ASCII, ale możesz to również zrobić na przykładtr -dc '\0-\177'
.źródło
iconv
pozwolenie na Transliterate: A → A”?ä
justa
.iconv
jest tutaj zdecydowanie narzędziem wyboru:Uruchom,
iconv --list
aby zobaczyć listę wszystkich obsługiwanych kodowań.źródło