Özet
fmt [-cmnps] [-d karakterler] [-l sayı] [-t sayı] [hedef [maksimum] | -genişlik | -w genişlik] [dosya ...]
Açıklama
fmt, girdi dosyalarının birleşimini veya dosya verilmemişse standart girdiyi okur ve standart çıktıda, girdisinin hedef uzunluğa mümkün olduğunca yakın satırlardan oluşan bir sürümünü üretir. Üretilen satırlar maksimum sınırı aşmaz.
Hedef uzunluk varsayılan olarak 65 değeridir. Maksimum uzunluk, hedef uzunluktan 10 fazladır.
Alternatif olarak, önüne kısa çizgi eklenerek veya -w kullanılarak tek bir genişlik parametresi belirtilebilir. Örneğin fmt -w 72, fmt -72 ve fmt 72 72 komutlarının tümü aynı çıktıyı üretir.
Girdi satırlarının başındaki boşluklar, boş satırlar ve kelimeler arası boşluklar çıktıda korunur. Satırlar yalnızca boşluk karakterlerinden birleştirilir veya bölünür; kelimeler asla birleştirilmez veya tirelenmez.
fmt, gönderilmeden önce e-posta iletilerini biçimlendirmek için tasarlanmıştır, ancak başka basit görevler için de yararlı olabilir.
Seçenekler
-c: Metni satır satır ortalar. Bu durumda diğer seçeneklerin çoğu yoksayılır; satırların bölünmesi veya birleştirilmesi yapılmaz.-m: Girdide yer alan e-posta başlık satırlarını mantıklı şekilde biçimlendirmeye çalışır.-n: Nokta (.) karakteriyle başlayan satırları biçimlendirir.-p: Girintili paragraflara izin verir.-pbayrağı olmadığında, satır başındaki boşluk miktarındaki herhangi bir değişiklik yeni paragraf başlangıcı olarak kabul edilir.-s: Satırların içindeki boşlukları daraltır; birden fazla boşluk karakterini tek boşluğa, cümle sonunda ise çift boşluğa dönüştürür.-d karakterler: Belirtilen karakterleri ve yalnızca onları cümle bitiş karakterleri olarak işler. Varsayılan cümle bitiş karakterleri nokta (.), soru işareti (?) ve ünlem işaretidir (!). Bazı karakterlerin kabuktan korunması için kaçış karakterleriyle kullanılması gerekebilir.-l sayı: Mümkünse her çıktı satırının başında birden fazla boşluğu sekmelerle değiştirir. Hersayıkadar boşluk bir sekmeyle değiştirilir. Varsayılan değer8şeklindedir.sayı0ise boşluklar korunur.-t sayı: Girdi dosyalarındaki sekmelerin, sekme durağı başınasayıkadar boşluk varsaydığını kabul eder. Varsayılan değer8şeklindedir.
Kullanım Notu
ex(1) veya vi(1) görsel modu içinde şu komut bir paragrafı yeniden biçimlendirerek satırları eşitler:
!}fmt
Ortam
LANG, LC_ALL ve LC_CTYPE ortam değişkenleri, environ(7) sayfasında açıklandığı gibi fmt yürütülmesini etkiler.
Örnekler
Standart girdideki metni ortalamak:
echo -e 'The merit of all things\nlies\nin their difficulty' | fmt -c
Örnek çıktı:
The merit of all things
lies
in their difficulty
Standart girdideki metni boşlukları daraltarak biçimlendirmek:
echo -e 'Multiple spaces will be collapsed' | fmt -s
Örnek çıktı:
Multiple spaces will be collapsed
Ayrıca Bakınız
fold(1), mail(1)
Tarihçe
fmt komutu 3BSD sürümünde ortaya çıkmıştır.
Burada açıklanan sürüm tamamen yeniden yazılmıştır ve FreeBSD 4.4 sürümünde ortaya çıkmıştır.
Yazarlar
- Kurt Shoens
- Liz Allen, hedef uzunluk konseptini ekledi.
- Gareth McCaughan
Hatalar
Program basit ve hızlı olacak şekilde tasarlanmıştır; daha karmaşık işlemler için standart metin işlemcileri muhtemelen daha uygundur.
Girintili bir paragrafın ilk satırı çok uzun olduğunda, yani hedef uzunluğun yaklaşık iki katından fazla olduğunda, çıktıdaki girinti yanlış olabilir.
fmt, hangi satırların e-posta başlığı olduğunu ve hangilerinin olmadığını tahmin etmede her zaman hatasız değildir.