Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü gibi birden çok ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen komut yama noktasıdır.
Program:
ADI
patch — değişiklikleri dosyalara uygula
SİNOPSİS
yama [-blNR] [−c|−e|−n|−u] [-d dir] [-D tanımlamak] [-i yama dosyası]
[-o dış dosya] [-p num] [-r reddetme dosyası] [dosya]
TANIM
The yama yardımcı program, dört formdan herhangi birini içeren bir kaynak (yama) dosyasını okuyacaktır.
tarafından üretilen fark (fark) listeleri fark yardımcı program (normal, kopyalanmış bağlam, birleşik
bağlamda veya tarzında ed) ve bu farklılıkları bir dosyaya uygulayın. Varsayılan olarak, yama
standart girdiden okuyacaktır.
The yama kamu hizmeti, ürünün türünü belirlemeye çalışacaktır. fark listeleme, sürece
tarafından reddedilen bir -c, -e, -nya da -u seçeneği.
Yama dosyası birden fazla yama içeriyorsa, yama her birini uygulamaya çalışacak
sanki ayrı yama dosyalarından gelmişler gibi. (Bu durumda uygulama,
yama dosyasının adının her biri için belirlenebilir olduğunu fark listeleme.)
SEÇENEKLER
The yama yardımcı program, POSIX.1‐2008'in Temel Tanımlar hacmine uygun olacaktır, Bölüm
12.2, Yarar Sözdizimi Kuralları.
Aşağıdaki seçenekler desteklenecektir:
-b Değiştirilen her dosyanın orijinal içeriğinin bir kopyasını,
farklılıklar, sonek ile aynı adlı bir dosyada uygulanır. .orij
ona eklendi. Dosya zaten mevcutsa, üzerine yazılacaktır; birden fazla ise
yamalar aynı dosyaya uygulanır, .orij dosya sadece için yazılacaktır
ilk yama. Ne zaman -o dış dosya seçeneği de belirtilmiş, dosya.orij -ecek
oluşturulamaz, ancak, eğer dış dosya zaten var, dış dosya.orij oluşturulacaktır.
-c Yama dosyasını kopyalanmış bir bağlam farkı olarak yorumlayın (
yarar fark zaman -c or -C seçenekler belirtilir).
-d dir Geçerli dizini şu şekilde değiştirin: dir bölümünde açıklandığı gibi işlemeden önce
GENİŞLETİLMİŞ AÇIKLAMA bölümü.
-D tanımlamak Değişiklikleri aşağıdaki C önişlemci yapılarından biriyle işaretleyin:
#ifdef tanımlamak
Kendi ID’n ile mağazalarını oluştur
#endif
#ifndef tanımla
Kendi ID’n ile mağazalarını oluştur
#endif
isteğe bağlı olarak C önişlemci yapısı ile birleştirilir #else. Yamalı ise
dosya C önişlemcisi ile işlenir, burada makro tanımlamak tanımlanmış,
çıktı, yama dosyasındaki değişiklikleri içerecektir; aksi halde çıktı
yama dosyasında belirtilen yamaları içermeyecektir.
-e Yama dosyasını bir ed komut dosyası yerine fark komut.
-i yama dosyası
Yol adıyla adlandırılan dosyadan yama bilgilerini okuyun yama dosyası, daha doğrusu
standart girişten daha
-l (El harfi.) Herhangi bir diziye neden olur farktaki karakterler
herhangi bir diziyle eşleşecek komut dosyası girdi dosyasındaki karakterler. Başka
karakterler tam olarak eşleştirilecektir.
-n Komut dosyasını normal bir fark olarak yorumlayın.
-N Farklılıkların zaten dosyaya uygulanmış olduğu yamaları yoksay; tarafından
varsayılan, zaten uygulanmış olan yamalar reddedilecektir.
-o dış dosya
Dosyaları değiştirmek yerine (belirtilen dosya işlenen veya fark
listeleri) doğrudan, her yama tarafından başvurulan dosyanın bir kopyasını,
uygun farklar uygulanarak, dış dosya. Tek bir dosya için birden çok yama
tarafından oluşturulan dosyanın ara sürümlerine uygulanacaktır.
önceki yamalar ve birden çok, birleştirilmiş sürümlerle sonuçlanacaktır.
dosya yazılıyor dış dosya.
-p num Düzeltilecek dosyaların adlarını belirten yama dosyasındaki tüm yol adları için
yamalı, sil num yol adı bileşenleri, her yol adının başlangıcından itibaren. Eğer
yama dosyasındaki yol adı mutlaktır, baştaki herhangi bir karakterler
ilk bileşen olarak kabul edilmelidir (yani, -p 1 öncüyü kaldıracak
karakterler). belirtme -p 0 tam yol adının kullanılmasına neden olur.
If -p belirtilmemişse, yalnızca temel ad (son yol adı bileşeni)
Kullan
-R Yama komut dosyasının anlamını tersine çevirin; yani, varsayalım ki fark
komut dosyası yeni sürümden eski sürüme oluşturuldu. NS -R seçenek
ile kullanılamaz ed Kodlar. NS yama yardımcı program her birini tersine çevirmeye çalışacaktır.
uygulamadan önce betiğin bir kısmı. Reddedilen farklılıklar şuraya kaydedilir:
takas formatı Bu seçenek belirtilmemişse ve ekranın bir kısmına kadar
yama dosyası başarıyla uygulandı, yama her bölümü kendi içinde uygulamaya çalışır
ters anlamda hem de normal anlamda. Girişim başarılı olursa,
olup olmadığını belirlemesi istenecektir. -R seçeneği ayarlanmalıdır.
-r reddetme dosyası
Varsayılan reddetme dosya adını geçersiz kılın. Varsayılan durumda, reddedilen dosya
son ekiyle çıktı dosyasıyla aynı ada sahip .rej ona eklenmiş; görmek
Patch Uygulama.
-u Yama dosyasını birleşik bir bağlam farkı olarak yorumlayın ( fark
yararlı olduğunda -u or -U seçenekler belirtilir).
İŞLENENLER
Aşağıdaki işlenen desteklenecektir:
dosya Yama yapılacak bir dosyanın yol adı.
STDIN
GİRİŞ DOSYALARI bölümüne bakın.
GİRİŞ DOSYALAR
Girdi dosyaları metin dosyaları olacaktır.
ÇEVRE DEĞİŞKENLER
Aşağıdaki ortam değişkenleri, aşağıdakilerin yürütülmesini etkiler: yama:
DİL Ayarlanmamış veya ayarlanmamış uluslararasılaştırma değişkenleri için varsayılan bir değer sağlayın.
boş. (Bkz. POSIX.1‐2008'in Temel Tanımlar cildi, Bölüm 8.2,
Uluslararasılaşma Değişkenler uluslararasılaştırma değişkenlerinin önceliği
yerel kategorilerin değerlerini belirlemek için kullanılır.)
LC_ALL Boş olmayan bir dize değerine ayarlanırsa, diğer tüm değerlerin değerlerini geçersiz kılın
uluslararasılaştırma değişkenleri.
LC_COLLATE
Aralıkların, denklik sınıflarının ve çoklu ortamların davranışı için yerel ayarı belirleyin.
için tanımlanan genişletilmiş normal ifadede kullanılan karakter harmanlama öğeleri
the evet ifade yerel anahtar kelime LC_MESSAGES kategori.
LC_CTYPE Metin verisi bayt dizilerinin yorumlanması için yerel ayarı belirleyin
karakter olarak (örneğin, çoklu bayt karakterlerin aksine tek bayt
argümanlar ve girdi dosyaları) ve kullanılan karakter sınıflarının davranışı
için tanımlanan genişletilmiş normal ifade evet ifade yerel anahtar kelime
LC_MESSAGES kategori.
LC_MESSAGES
Olumlu yanıtları işlemek için kullanılan yerel ayarı ve kullanılan yerel ayarı belirleyin
için yazılan tanılama mesajlarının ve istemlerin biçimini ve içeriğini etkilemek için
standart hata.
NLSPATH İşleme için mesaj kataloglarının yerini belirleyin. LC_MESSAGES.
LC_TIME Tarafından yazılan dosya zaman damgalarının biçimini tanımak için yerel ayarı belirleyin.
the fark bir bağlam farkı girdi dosyasında yardımcı program.
ASENKRON ETKİNLİKLER
Varsayılan.
STDOUT
Kullanılmamış.
STDER
Teşhis ve bilgi mesajları için standart hata kullanılacaktır.
ÇIKTI DOSYALAR
Çıktısı yama yardımcı programı, kaydetme dosyaları (.orij son ekler) ve reddetme dosyaları
(.rej son ekler) metin dosyaları olacaktır.
GENİŞLETİLMİŞ TANIM
Bir yama dosyası, birden fazla dosya için yama talimatları içerebilir; dosya adları
belirtildiği gibi belirlenir Dosya adı Kararlılık. Ne -b seçeneği belirtilmiş,
yama uygulanmış her dosyanın orijinali, son ekiyle aynı adı taşıyan bir dosyaya kaydedilecektir.
.orij ona eklendi.
Yama uygulanmış her dosya için, bölümünde belirtildiği gibi bir reddetme dosyası da oluşturulabilir. Patch Uygulama.
Yokken -r seçeneği eklenerek bu dosyanın adı oluşturulacaktır.
sonek .rej orijinal dosya adına.
Patch fileto oluşturulan
Yama dosyası, sıfır veya daha fazla başlık bilgisi satırı ve ardından bir veya
daha fazla yamalar. Her yama, dosya adı tanımlamasında sıfır veya daha fazla satır içermelidir.
tarafından üretilen format -c, -C, -uya da -U seçenekleri fark yardımcı program ve bir veya daha fazla
setleri fark geleneksel olarak adlandırılan çıktı yakışıklısı.
The yama yardımcı program, başlık bilgilerinde aşağıdaki ifadeyi tanıyacaktır:
Dizin: yol adı
Yamalanacak dosyanın adı yol adı.
Bir yama içindeki tüm satırlar (başlıklar dahil) aynı satır başı dizisiyle başlıyorsa,
karakterler, yama yardımcı program, devam etmeden önce bu sırayı kaldıracaktır. İçinde
her yama, farkın türü ortak bağlam ise, yama yardımcı program tanıyacaktır
aşağıdaki ifadeler:
*** Dosya zaman damgası
Yamalar ortaya çıktı Dosya.
−−− Dosya zaman damgası
Yamalar uygulanmalıdır. Dosya.
Farkın türü birleşik bağlam ise, yama kamu hizmeti tanıyacaktır
aşağıdaki ifadeler:
−−− Dosya zaman damgası
Yamalar ortaya çıktı Dosya.
+ + + Dosya zaman damgası
Yamalar uygulanmalıdır. Dosya.
Bir yama içindeki her parça, fark içindeki bir satır aralığını değiştirmek için çıktı
Orijinal dosya. Bir yama içindeki ardışık parçalar için satır numaraları,
artan düzen.
Dosya adı Kararlılık
Eğer hayırsa dosya işlenen belirtilir, yama belirlemek için aşağıdaki adımları gerçekleştirecektir.
kullanılacak dosya adı:
1. eğer türü fark bağlamdır, yama yardımcı program yol adı bileşenlerini siler (olarak
tarafından belirtilen -p seçeneği) ile başlayan satırdaki dosya adından "***" (Eğer
kopyalanan bağlam) veya "−−−" (birleştirilmiş bağlam ise), o zaman bunun varlığını test edin
geçerli dizine (veya ile belirtilen dizine) göre dosya -d
seçenek). Dosya varsa, yama yardımcı program bu dosya adını kullanacaktır.
2. eğer türü fark bağlamdır, yama yardımcı program yol adı bileşenlerini silecektir
(tarafından belirtildiği gibi -p seçeneği) ile başlayan satırdaki dosya adından "−−−" (Eğer
kopyalanan bağlam) veya "+++" (birleştirilmiş bağlam ise), o zaman bunun varlığını test edin
geçerli dizine (veya ile belirtilen dizine) göre dosya -d
seçenek). Dosya varsa, yama yardımcı program bu dosya adını kullanacaktır.
3. Başlık bilgisi, dize ile başlayan bir satır içeriyorsa Dizin:, yama
yardımcı program, yol adı bileşenlerini siler ( -p seçeneği) bundan
satırı, ardından geçerli dizine göre bu dosyanın varlığını test edin (veya
ile belirtilen dizin -d seçenek). Dosya varsa, yama yarar
bu dosya adını kullanacaktır.
4. Eğer bir SCCS dizin geçerli dizinde var, yama gerçekleştirmeye çalışacak
almak -e SCCS/s.Dosya dosyanın düzenlenebilir bir sürümünü alma komutu. Eğer
dosya var, yama yardımcı program bu dosya adını kullanacaktır.
5. yama yardımcı program standart çıktıya bir bilgi istemi yazar ve bir dosya adı ister
kontrol terminalinden etkileşimli olarak (örneğin, /dev/tty).
Patch Uygulama
Eğer -c, -e, -nya da -u seçeneği mevcut, yama yardımcı program bilgileri yorumlayacaktır
kopyalanmış bir bağlam farkı olarak her parça içinde, bir ed fark, normal bir fark veya
sırasıyla birleşik bir bağlam farkı. Bu seçeneklerden herhangi birinin olmaması durumunda,
yama yardımcı program, bilgi biçimine dayalı olarak farkın türünü belirleyecektir.
hunk içinde.
Her bir parça için, yama yardımcı program, yamayı uygulayacağı yeri aramaya başlayacaktır.
iri parçanın başlangıcındaki satır numarası, artı veya eksi uygulamada kullanılan herhangi bir ofset
önceki kanka. Hunk bağlamıyla eşleşen satırlar bulunamazsa, yama ikisini de tarayacak
hunk bağlamıyla eşleşen bir dizi satır için en az 1000 bayt ileri ve geri.
Böyle bir yer bulunamazsa ve bu bir bağlam farkıysa, başka bir tarama yapılır.
bağlamın ilk ve son satırını yok sayarak yerleştirin. Bu başarısız olursa, ilk iki ve son
iki satırlık bağlam göz ardı edilecek ve başka bir tarama yapılacaktır. Uygulamalar
kurulum yerleri için daha kapsamlı arama yapın.
Konum bulunamazsa, yama yardımcı program, iri parçayı reddetme dosyasına ekler. A
kopyalanan bir bağlam farkı olan reddedilen iri parça, ed fark veya normal
fark, formattan bağımsız olarak kopyalanan-bağlam-fark formatında yazılacaktır.
yama dosyasının Birleştirilmiş bir reddedilen parça olup olmadığı uygulama tarafından tanımlanmıştır.
bağlam farkı, kopyalanan bağlam farkı biçiminde veya birleşik bağlam biçiminde yazılır.
fark formatı. Giriş normalse veya ed-stil farkı, reddedilen dosya
sıfır içerik satırıyla farklılıklar içerir. Parçalardaki satır numaraları
reddetme dosyası, yama dosyasındaki satır numaralarından farklı olabilir, çünkü bunlar
eski dosyadan ziyade yeni dosyadaki başarısız parçalar için yaklaşık konumları yansıtın
bir.
Yama türü bir ed diff, uygulama yamayı şu şekilde gerçekleştirebilir:
çağırmak ed Yarar.
EXIT DURUMU
Aşağıdaki çıkış değerleri döndürülecektir:
0 Başarılı tamamlama.
1 Reddetme dosyasına bir veya daha fazla satır yazılmıştır.
>1 Bir hata oluştu.
SONUÇLARI OF HATALAR
Dosyaya doğru şekilde yerleştirilemeyen yamalar bir ret dosyasına yazılacaktır.
The takip etme bölümler vardır bilgilendirici.
BAŞVURUSU KULLANIM
The -R seçeneği ile çalışmıyor ed için çok az bilgi olduğundan komut dosyaları
ters işlemi yeniden oluşturun.
The -p seçeneği, bir yama dosyasını yerel kullanıcı dizinine göre özelleştirmeyi mümkün kılar
yama dosyasını manuel olarak düzenlemeden yapılar. Örneğin, dosya adı
yama dosyası şuydu:
/curds/peynir altı suyu/src/blurfl/blurfl.c
ayar -p 0 tüm yol adını değiştirilmemiş olarak verir; -p 1 verir:
lor/peynir altı suyu/src/blurfl/blurfl.c
lider olmadan , -p 4 verir:
bulanıklık/blurfl.c
ve belirtmeden -p hiç verir:
bulanıkfl.c .
ÖRNEKLER
Yok.
GEREKÇESİ
Geçmişteki bazı işlevler yama uygulamaları belirtilmemiştir. NS
Aşağıdaki belgeler, tarihsel uygulamalarda mevcut olmayan özelliklerin
belirtildi.
Silinen bir işlevsellik parçası, '+' ek bir sete izin veren sözde seçenek
seçenekler ve verilecek bir yama dosyası işleneni. Bu yetersiz olarak görüldü
standardize etmek.
Tarihsel uygulamalarda, eğer dize "Ön koşul:" başlıkta göründü yama
yardımcı program, karşılık gelen sürüm bilgisini arar (belirtilen dize
ile sınırlandırılmış başlık karakterler veya bir satırın veya dosyanın başı veya sonu)
orijinal dosyanın herhangi bir yerinde. Bu çok basit ve yetersiz olduğu için silindi
standardize etmek için güvenilir bir mekanizma. Örneğin, eğer:
Önkoşul: 1.2
başlıkta olsaydı, dosyanın herhangi bir yerinde sınırlandırılmış bir 1.2'nin bulunması,
ön koşul.
Aşağıdaki seçenekler, geçmişteki uygulamalarından çıkarıldı: yama as
standardize etmek için yeterince kullanışlı değil:
-b The -b seçenek tarihsel olarak ad uzantısını değiştirmek için bir yöntem sağlamıştır.
varsayılandan yedekleme dosyası .orij. Bu seçenek değiştirildi ve
POSIX.1‐2008'in bu cildinde saklanmıştır.
-F The -F seçenek, ne zaman yoksayılacak bir bağlam farkının satır sayısını belirtti.
bir yama yüklemek için bir yer arıyor.
-f The -f seçenek tarihsel olarak neden oldu yama ek bilgi talep etmemek
kullanıcıdan.
-r The -r seçenek, tarihsel olarak, uzantının geçersiz kılınması için bir yöntem sağlamıştır.
dosyayı varsayılandan reddet .rej.
-s The -s seçenek tarihsel olarak neden oldu yama bir hata olmadıkça sessizce çalışmak
oluştu.
-x The -x seçenek, tarihsel olarak dahili hata ayıklama bayraklarını ayarlar.
Bazı dosya sistemi uygulamalarında, bir dosyanın kaydedilmesi .orij dosya istenmeyen üretebilir
Sonuçlar. 12, 13 veya 14 karakterli dosya adları olması durumunda (destekleyen dosya sistemlerinde
14 karakterlik maksimum dosya adları), .orij dosya yeni dosyanın üzerine yazar. reddetme dosyası
bu dosya adı sınırını da aşabilir. Bazı tarihsel uygulamalar nedeniyle önerildi,
şu bir ('~') eki yerine kullanılabilir .orij ve yerine başka bir karakter
the .rej son ek. Bu, kullanıcı için hangi dosyanın açık olmadığı için reddedildi.
Hangi. son ekler .orij ve .rej daha açık ve anlaşılırdır.
The -b seçeneği, bazı tarihsel uygulamalarda tam tersi bir anlama sahiptir;
.orij dosya. Buradaki varsayılan durum, dosyaları kaydetmemek, yama daha fazla davran
diğer standart yardımcı programlarla tutarlı bir şekilde.
The -w erken tekliflerdeki seçenek olarak değiştirildi -l tarihsel pratiği eşleştirmek için.
The -N seçenek dahil edildi çünkü bu olmadan etkileşimli olmayan bir uygulama reddedilemez
daha önce uygulanan yamalar. Örneğin, bir kullanıcı çıkışını boruluyorsa fark içine
yama yardımcı programı ve kullanıcı yalnızca bir dosyayı daha yeni bir sürüme yamalamak istiyor.
etkileşimli olarak, -N seçenek gereklidir.
Değişiklikleri -l arasında eşleşmeye izin vermek için seçenek açıklaması önerildi
karakterlere ek olarak sadece karakterler. Bu tarihsel bir uygulama olmadığı için,
ve bazı belirsizlikler ortaya çıkabileceğinden, bu konuda gelecekteki gelişmelerin yapılması önerilmektedir.
alan, başka bir seçenek harfini kullanır, örneğin -L.
The -u GNU seçeneği yama birleşik bağlam biçimleri desteği ile birlikte eklendi.
GELECEK TARİFİ
Yok.
onworks.net hizmetlerini kullanarak patchposix'i çevrimiçi kullanın