Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

  Gelişmiş Arama
insanın içinde varsa, commodore.gen.tr açığa çıkarır bunu.. bir nevi retro olaylarının dolunayıyız.(Arda)
commodore.gen.trGenel KategoriGenel SohbetSıkıştırma programı hakkında
Sayfa: [1]   Aşağı git
Yazdır
Gönderen Konu: Sıkıştırma programı hakkında  (Okunma Sayısı 3509 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« : Mayıs 04, 2022, 09:37:17 ÖÖ »

merhaba arkadaşlar bilgisi olan yardımcı olursa çok memnun olurum. önce yaptığım işlemleri anlatayım en son sorumu belirteyim. anlaşılması daha kolay olabilmesi için.

1-) istediğim oyunu önce 7zip programı ile tar formatında tek parça haline getiriyorum.
2-) lprepaq - paq8o8pre - precomp - SuperREP gibi sıkıştırma programları ile oyunları ekstra kodlar uygulayarak ultra sıkıştırıyorum.
3-) sonrasında ultra olarak sıkıştırdığım oyunu en son freearc programı ile "-s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb" kodunu uygulayarak ister bölerek ister tek parça haline getirip sonrasında arşivime ekliyorum.

buraya kadar bir sorun yok zaten. ancak istediğim bir şey var. işimi kolaylaştırmak adına.

aşağıda vermiş olduğum kodu freearc yüklü bir bilgisayarın cmd komut istemine yazdığımda klasör içinde bulunan ve uzantısı "tar-pcf-srep" olan tüm dosyaları "mtchannel.arc" olarak tek parça haline getiriyor.
şimdi benim istediğim şey şu.

örneğin; ayşe.tar - fatma.pcf - hayriye.srep >> görüldüğü gibi isimler farklı. ben aşağıdaki kodu çalıştırdığımda ayşe-fatma-hayriye sıkıştırılmış dosyalarını mtchannel.arc olarak birleştirerek tek parça halde sıkıştıracak. mtchannel.arc'nin içine girdiğimde ayşe.tar - fatma.pcf - hayriye.srep olarak göreceğim. ama ben ayşe.arc - fatma.arc - hayriye.arc olarak kendi isimlerde olarak sıkıştırmasını istiyorum. mtchannel.arc'nin içinde görmek istemiyorum. aşağıda kulladığım kodları belirttim.

bilgisi olan varsa yardımcı olursa çok memnun olurum. Umarım anlatabilmişimdir demek istediğimi. dilerseniz video olarak çekipte paylaşabilirim.bu arada bat dosyasında uygulamam gerekiyor.

(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.tar")
(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.pcf")
(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.srep")

----------------------------------------------------------------------------------------

bu sistemin amacı bat dosyasına çift tıklattığımda klasör içindeki "tar-pcf-srep" uzantılarını tarayıp otomatik olarak sıkıştırma işlemine başlaması içindir.şu anda freearc'yi otomatik yapamadım sadece diğer tüm sıkıştırma programlarını otomatik bat yaptım. örnek olarak aşağıdaki kod.

kod açıklaması
--------------
For %%a in (*.tar) do lprepaq.exe 8 "%%~fa" "%%~fa.pcf"

açıklaması
----------
(*.tar)       açıklaması : klasör içindeki uzantısı tar olanları bulur
lprepaq.exe 8 açıklaması : sıkıştırma programını açıp sıkıştırma düzeyini 8'e ayarlar
"%%~fa"       açıklaması : klasör içindeki uzantısı tar olan dosyanın ismini tanımlıyor (mtchannel.tar diyelim)
"%%~fa.pcf"   açıklaması : klasör içindeki uzantısı tar olan dosyanın tanımlanan ismini .pcf'nin arkasına ekliyor (mtchannel.pcf yapıyor)

kısacası : uzantı sabit ancak dosya ismi devamlı değiştiği için bunu otomatik algılamasını sağlıyorum. ancak bu sistemi freearc komut istemine uyarlayamıyorum.

24 saate yakındır uyumuyorum. beynim sulandı açıkcası. hatam varsa affola. umarım yardımcı olabilecek bir arkadaşımız çıkarda kurtarır beni şu gıcık şeyden.
Sağlıcakla kalın.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
feuer
Deneyimli
*****
Mesaj Sayısı: 602



Üyelik Bilgileri
« Yanıtla #1 : Mayıs 05, 2022, 01:33:12 ÖÖ »

Sorunu yanlış anladığım için yanıtımı sildim. Kusura bakmayın. Ben de uzun süredir uyumadım, yarın bakarım yine

Çözüm olmasa da sorunu yakalamak adına

For %%a in (*.tar) do @echo lprepaq.exe 8 "%%~fa" "%%~fa.pcf"

komutunuzu şu şekilde dener misiniz? bu şekilde her bir dosya için uygulanacak komutları yansıtacak ancak uygulamayacak.

Sonrasında
1- Tek bir satır için aldığınız yanısımayı
2- Tek bir satır için uygulanmasını istediğiniz komutu yazarsanız sorunu çözümleriz diye düşünüyorum.


« Son Düzenleme: Mayıs 05, 2022, 17:01:23 ÖS Gönderen: feuer » Logged
Aykiri1
Uzman
*****
Mesaj Sayısı: 1.138



Üyelik Bilgileri
« Yanıtla #2 : Mayıs 06, 2022, 13:10:10 ÖS »

@mtchannel

sorunu tam olarak anlayamadım
arc komut satırında çalıştırıldığı yerde ve alt klasörlerinde ne varsa , herhangi bir parametre belirtmeksizin .arc uzantılı olarak çeviriyor

örnek:
arc a test *.tar
Creating new archive: test.arc
Logged
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #3 : Mayıs 08, 2022, 21:25:43 ÖS »

merhaba arkadaşlar. yardımcı olan herkese teşekkür ederim. ancak maalesef @feuer daha önce denemiştim o kodu çalışmadı maalesef. yine'de ne olur ne olmaz yine'de seninkinide denedim. @Aykiri1 verdiğin kodu zaten kullanıyorum ancak ekstra'dan ek özellik istiyorum sadece. bundan dolayı kendimi daha net anlatmak için kısa bir video çektim sizlere. müsayit bir zamanınızda izleyebilirseniz çok memnun kalırım. sorumu video'da çok daha net anlattım. 5dk'lık bir videodur.

Link : https://youtu.be/all83vAKwws
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
feuer
Deneyimli
*****
Mesaj Sayısı: 602



Üyelik Bilgileri
« Yanıtla #4 : Mayıs 08, 2022, 22:21:34 ÖS »

@mtchannel: videoyu izledim.

Bu konuda yardım edebilmem için echo on olması lazım. Yani ben komutun nasıl uygulandığını görmeliyim.

for /f komutu için onu uyguladığında nasıl bir çıktı aldın bunu görmem gerekir.

Mesela son uyguladığın işlemde uygulanan kodu görürsek çözerdik.

-

(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.tar")
(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.pcf")
(arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.srep")

komut uygulama parametrelerini bilmiyorum bu aracın ama arc a mtchannel diyerek sanki sen özellikle dosya adının mtchannel olmasını vurguluyormuşsun gibi geldi.

ikinci olarak da sanki her dosya kendi adı ile sıkışsın değilde bu komutlardan anladığım.

1. satır tar uzantılı dosyaları mtchannel olarak sıkıştır,
2. satır pcf uzantılı dosyaları mtchannel olarak sıkıştır,
3. satır srep uzantılı dosyaları mtchannel olarak sıkıştır


Ek olarak;
işin kolaylaşsın diye not edeyim bat içerisinde admin olarak başlamsı için ekstra vbs dosyasına ihtiyacın yok. powershell kaldırmadıysan sisteminden şu da iş görür.

Kod:
@ECHO OFF
TITLE %~n0
COLOR 0A

(Net session >nul 2>&1)&&(cd /d "%~dp0")||(PowerShell start """%~0""" -verb RunAs & Exit /B)

---


ben 7z için kullandığım bazı scriptleri paylaşayım. bat dosyası içerisine kayıt edilmeli. % işaretleri tek yaparsanız komut olarak da çalışır.

her dosya kendi adıyla zip dosyası olarak sıkıştırmak için bat dosyasını çalıştırdığınız klaösrün içindeki
Kod:
FOR %%i IN (*.*) DO 7za.exe a "%%~ni.zip" "%%i"

her dosya kendi adıyla zip dosyası olarak sıkıştırmak için bat dosyasını çalıştırdığınız klaösrün içindeki
Kod:
FOR /F "usebackq delims=?" %%i IN (`DIR /B /A:D`) DO 7za.exe a "%%i.zip" "%%i"

kendi komutunuza bunları uygulayabilirsiniz.

bir de şöyle bir örnek verelim, bunlar komut olarak da çalışır, bat içerisinden de çalışır.

Kod:
7za a %userprofile%\desktop\jpg.zip c:\*.jpg -r
7za a %userprofile%\desktop\bmp.zip c:\*.bmp -r
7za a %userprofile%\desktop\png.zip c:\*.png -r
7za a %userprofile%\desktop\gif.zip c:\*.gif -r

7za a %userprofile%\desktop\wma.zip c:\*.wma -r
7za a %userprofile%\desktop\wav.zip c:\*.wav -r
7za a %userprofile%\desktop\mid.zip c:\*.mid -r
7za a %userprofile%\desktop\mp3.zip c:\*.mp3 -r
7za a %userprofile%\desktop\scr.zip c:\*.scr -r

c sürücüsünün içerisindeki tanımlı dosya uzantısına ait tüm dosyaları (alt klasmrdekiler dahil ve ağaç yapısı bozulmadan) masa üzerinde dosya uzantısınınadı.zip olarak kayıt eder.  zip oalrak belirlediğim dosya isimlerini aynı yaparsam hepsini o dosya içerisine sıkıştırır.

Komutun işleyişini bilmediğim ve olmadı dediğiniz komutun çıktısını görmeden kesin olarak çözebileceğim bir durum değil ancak bunlardan bir fikir yürütebileceğinizi düşünüyorum.

Umarım çözersiniz, takıldığım konular ile alakalı araştırmalar yaparken pekçok başka konu öğrenmişliğim oluyor.
 
Logged
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #5 : Mayıs 08, 2022, 23:51:44 ÖS »

@feuer merhaba.

kod: arc a mtchannel -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "*.tar"

bu kodu kullanma sebebim; daha önce farklı kodlar kullandım istediğim sonucu elde etmek için.çalışmadığından dolayı size örnek gösterebilmek adına bu kodu yazdım. ne yapmak istediğimi net anlatabilmek için'ki sen çok net nokta atışı anladın demek istediğimi. mtchannel ismi yerine sıkıştıracağı dosyanın ismini otomatik bulup yeniden kendisinin adlandırması idi. misafir geldiğinden dolayı pc başına geçemedim. yazını görünce hemen yazayım dedim. misafirler gidince ayrıntılı uzun uzun okuyacağım.

seninde dediğin gibi bazen bir şey ile alakalı araştırma yaparken çok farklı şeyler insan bulabiliyor.
babam mesela laptobunda xp kullanıyor.qb64 ile olasılık programları yazıyor. geçen bana yaptığı programın ürettiği olasılıkları txt formatında nasıl kaydedeceğini sordu. yıllardır qb64 ile yapmadığı kalmadı, ama hiç ihtiyaç duymadığı için txt'ye aktarım olayını bilmiyormuş bende onun bilmediğini yeni öğrendim. dedim kaç para vereceksin o'da dedi benim evimde oturuyorsun kiran birikti sonra dedim bu benden olsun :)D . velasıl kelam bazen ufacık şeyler günlerce uğraştırabiliyor. eline koluna emeğine sağlık yardımın için birazdan göz geçireceğim hemen.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
Aykiri1
Uzman
*****
Mesaj Sayısı: 1.138



Üyelik Bilgileri
« Yanıtla #6 : Mayıs 09, 2022, 00:04:43 ÖÖ »

Kod:
FOR %i IN (*.tar) DO arc a "%~ni.arc" -s; -ma- -m=rep:2048mb+mm+delta+dispack+lzma:ultra:170mb "%i"

çalıştırıldığı klasörde bulduğu tüm tar uzantılıları kendi ismiyle arc olarak sıkıştırır.

selamlar

not: batch yapılacaksa % leri çiftleyiniz
« Son Düzenleme: Mayıs 09, 2022, 00:13:22 ÖÖ Gönderen: Aykiri1 » Logged
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #7 : Mayıs 09, 2022, 00:14:57 ÖÖ »

@Aykiri1 - @feuer ellerinize kollarınıza sağlık teşekkür ederim.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #8 : Mayıs 09, 2022, 01:58:29 ÖÖ »

@Aykiri1 vermiş olduğun kod direk çalışıyor. ancak şöyle bir durum var. eğer bat içine yazarsam argüman hatası veriyor. ama cmd komut isteminin içine kopyala yapıştır yaparsam direk çalışıyor ve hata vermiyor. dosya yolları uzun ve büyük harflerden olur diye düşündüm ve ana dizin "c" üzerinden çalıştırdım. c ana dizinine tar dosyası attım maalesef yine argüman hatası verdi. kısacası bat içinde çalışmıyor. ama yine'de fazlasıyla iş görüyor. günde 2'den fazla oyun sıkıştırıyorum. en azından evde olmasam bile o otomatik devam edecek sıkıştırmaya. bat ile çalışması çokta sorun değil artık.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
Aykiri1
Uzman
*****
Mesaj Sayısı: 1.138



Üyelik Bilgileri
« Yanıtla #9 : Mayıs 09, 2022, 02:07:08 ÖÖ »

@Aykiri1 vermiş olduğun kod direk çalışıyor. ancak şöyle bir durum var. eğer bat içine yazarsam argüman hatası veriyor. ama cmd komut isteminin içine kopyala yapıştır yaparsam direk çalışıyor ve hata vermiyor. dosya yolları uzun ve büyük harflerden olur diye düşündüm ve ana dizin "c" üzerinden çalıştırdım. c ana dizinine tar dosyası attım maalesef yine argüman hatası verdi. kısacası bat içinde çalışmıyor. ama yine'de fazlasıyla iş görüyor. günde 2'den fazla oyun sıkıştırıyorum. en azından evde olmasam bile o otomatik devam edecek sıkıştırmaya. bat ile çalışması çokta sorun değil artık.

% işaretleri bat içinde olacaksa %% şeklinde olmalı ve ayrıca administrator olarak çalıştırmalısınız


size bir öneride bulunmak istiyorum
veri sıkıştırmak için bilinen compress motorlarının en iyisini şuan 7zip lzma ile zaten gerçekleştiriyor. arc yerine uharc önerebilirim ama chunk veriler için 7zip den daha başarılı bir motor yok.


« Son Düzenleme: Mayıs 09, 2022, 02:29:42 ÖÖ Gönderen: Aykiri1 » Logged
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #10 : Mayıs 09, 2022, 02:28:30 ÖÖ »

tamamdır şimdi oldu. ufak tefek şeyler gözden kaçıyor. ALLAH RAZIOLSUN.
birazdan bir video paylaşacağım. son bir isteğim daha olacak. eğer onu'da çözüme kavuşturursam yemede yanında yat olacak benim için.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #11 : Mayıs 09, 2022, 02:44:43 ÖÖ »

video linki : https://youtu.be/ZlxryZRhpXQ

video'daki komutlar :
---------------------
cd/
c:
cd Program Files (x86)
cd FFMPEG
xcopy "C:\Program Files (x86)\FFMPEG\ffmpeg.exe" "D:\CACHE\02-ViDEO DOWNLOAD\ViDEO DOWNLOAD" /s /h /e /y

cd/
d:
cd CACHE
cd 02-ViDEO DOWNLOAD
cd ViDEO DOWNLOAD
For %%a in (*.mkv) do ffmpeg.exe -y -threads 4 -i "%%a" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%a.mp4"
For %%a in (*.ts) do ffmpeg.exe -y -threads 4 -i "%%a" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%a.mp4"
For %%a in (*.avi) do ffmpeg.exe -y -threads 4 -i "%%a" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%a.mp4"
For %%a in (*.mov) do ffmpeg.exe -y -threads 4 -i "%%a" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%a.mp4"
For %%a in (*.flv) do ffmpeg.exe -y -threads 4 -i "%%a" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%a.mp4"
del /f /q ffmpeg.exe

cd/
d:
cd CACHE
cd 05-ViDEO CEViRME
ren *.mkv.mp4 129adet soru işareti var.mp4
ren *.ts.mp4 129adet soru işareti var.mp4
ren *.avi.mp4 129adet soru işareti var.mp4
ren *.mov.mp4 129adet soru işareti var.mp4
ren *.flv.mp4 129adet soru işareti var.mp4
exit
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
mtchannel
Üye
****
Mesaj Sayısı: 344



Üyelik Bilgileri
« Yanıtla #12 : Mayıs 09, 2022, 03:08:24 ÖÖ »

gerekli çözüme kavuşulmuştur.
for %%i in (*.mkv) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"
for %%i in (*.ts) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"
for %%i in (*.avi) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"
for %%i in (*.mov) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"
for %%i in (*.flv) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"
for %%i in (*.mp4) do ffmpeg.exe -y -threads 4 -i "%%i" -vcodec libx264 -preset ultrafast -c:a aac -c:a copy -max_muxing_queue_size 1024 -crf 28 -vf "scale=1280:-2" -tune film "D:\CACHE\05-ViDEO CEViRME\%%~ni.mp4"

ilgilenen herkese 1000lerce kez teşekkür ederim.
Logged

27" Curved 165Hz ekranda retro oynayan çılgın genç
feuer
Deneyimli
*****
Mesaj Sayısı: 602



Üyelik Bilgileri
« Yanıtla #13 : Mayıs 09, 2022, 13:39:52 ÖS »

Sorunu çözmenize sevindim.

Pek çok video converter GUInin ardında çeviri işi için ffmpeg kullanıyor. Ancak komut isteminden bu işlemi yapmak çok daha hızlı olacaktır.

Toplu halde ffmpeg ile komut isteminden çeviri yapma işi benimde aklımda olan konulardandı. Sayenizde hazır toplu iş komutları da önümüze düştü.
Ben de size teşekkür ederim.
Logged
Sayfa: [1]   Yukarı git
Yazdır
Gitmek istediğiniz yer: