Polecenie fold może okazać się pomocne, jeśli chcemy, aby tekst, który mamy w danym pliku został wyświetlony (tudzież zapisany) w ściśle określonej szerokości. Użycie tego programu wygląda następująco.
Użycie tego polecenia bez dodatkowych opcji, może być w ogóle nie zauważone (jeśli tekst w pliku ma szerokość nie większą niż 80 kolumn. Jeśli szerokość przekracza 80 kolumn, to tekst zostanie dopasowany do szerokości 80 - domyślnie). Nie mniej jednak, jeśli dodamy odpowiednie opcje, wynik polecenia jest bardzo ciekawy, czasem potrzebny. Podstawowe użycie pokazane zostało na niniejszym rysunku.
Dajmy na to przykład, chcemy, aby tekst, który widzimy na rys. 1 został wyświetlony, lecz szerokość jego była równa 30 kolumn. W sumie nic trudnego, jeśli znamy polecenie fold i opcję -w.
Na powyższym rysunku widać, że wiersz ma określoną szerokość (30 kolumn). Ok, a co zrobić, jeśli chcielibyśmy, aby szerokość była ustawiona na odpowiednią wartość, lecz wyraz nie został "ucięty" w połowie i kończony w wierszu kolejnym, lecz cały został wyświetlony w nowym wierszu? Opcja -s "łamie" wiersz przy spacji, który znajduje się najbliżej końca (szerokość wiersza).
Została jeszcze jedna opcja, a mianowicie -b, która to odpowiedzialna jest za dostosowanie szerokości na podstawie liczby bajtów, nie kolumn. Dla naszego przykładowego tekstu, nie będzie żadnej różnicy. Różnica jest wtedy, gdy w tekście znajdują się np. tabulacje, lub polskie znaki, które zajmują jedną kolumnę, lecz większą liczbę bajtów. Na rysunku poniżej pokazano banalnie prosty program z języka C, w którym widać różnicę, pomiędzy ilością bajtów, a ilością kolumn, jeśli chodzi o szerokość wyświetlanego tekstu. Wynik pierwszego polecenia traktuje tabulację jako kilka wierszy. W drugim przypadku, liczone są bajty, tabulacja jest liczona jako pojedynczy bajt, dlatego też dwie instrukcje, część instrukcji printf, oraz cała instrukcja return zostały wydrukowane w taki właśnie sposób.
Some rights reserved 2010 - 2015 Artur Pyszczuk
| Strona Główna | Kontakt |