2013-05-16 41 views
18

Geçenlerde böyle, rpm2cpio aracıyla birlikte bir rpm tek tek dosyaları ayıklamak için, birçok diğer şeyler arasında, nasıl kullanılabileceğini cpio'nun varlığı hakkında öğrendim ve:Bir dosyayı rpm'den geçerli dizine nasıl alırsınız?

rpm2cpio mypackage.rpm | cpio -idmv ./path/to/individual/file/inside/the/rpm/filename.txt 

sorundur Bu komutun, dosyanın rpm içindeki konumuyla eşleşen dizini oluşturacağı, yani, dosyayı gerçekten çıkarmadan önce geçerli dizinin içinde /path/to/individual/file/inside/the/rpm/ dizinini oluşturacaktır.

Tüm dizin yapısını oluşturmadan dosyayı geçerli dizine ayıklamanın bir yolu var mı?

Şimdiden teşekkürler!

+0

https://www.linux-noob.com/forums/index.php?/topic/355-extract-1-file-from-rpm/ – pa4080

cevap

27

cpio için --to-stdout'u kullanabilirsiniz. Ör:

# rpm2cpio id3lib-3.8.3-28.fc18.x86_64.rpm | cpio -iv --to-stdout ./usr/share/doc/id3lib-3.8.3/README > /tmp/README 
./usr/share/doc/id3lib-3.8.3/README 
2173 blocks 
# 
+0

bu yolunda çalışır, ama lütfen değil dosya sonları (ve belki diğer boşluklar) orijinal dosya ile farklı olabilir –