- Konum
- BERTUNA
-
- Üyelik Tarihi
- 2 Haz 2020
-
- Mesajlar
- 5,358
-
- MFC Puanı
- 16,420
Dosyaların farklı biçimlere dönüştürülmesi gerektiğinde dd komutu kullanılır. Blok yapısının değiştirilmesinde, ASCII ve EBCDIC dosyaların dönüştürülmesinde ve dosya içindeki harflerin büyük veya küçük harflere çevrilmesinde bu komut tercih edilmelidir.
Komut,
biçiminde tanımlanır.
Seçenekler aşağıda açıklanmaktadır.
Örnek
/usr/acct/personel dizininde yer alan PERFLANA.dat dosyasından 2 blokluk veriyi, PER ismiyle bulunduğumuz dizin içine kopyalamak istiyoruz.
Bu durumda dd komutu şu şekilde kullanılır:
PER dosyasının boyutu ls komutuyla kontrol edilirse
Gerçekten 2 blok(1024 bayt) olduğu görülür.
Örnek
EBCDIC dosyaları UNIX işletim sisteminde kullabilmek amacıyla bir dönüşüme tabi tutmak gerekiyor. Bu amaçla dd komutu kullanılır.
Örnek
Aşağıdaki metin dosyasını göz önüne alalım.
Metin içinde yer alan tüm karakterleri büyük harflere dönüştürmek için aşağıdaki işlem yapılır:
Yeni dosyanın içeriği şu şekildedir :
Kaynak : Ubuntu Turkey
Komut,
Bash:
dd seçenek=değer...
Seçenekler aşağıda açıklanmaktadır.
Seçenek | Açıklama |
if=dosya | Giriş dosyası |
of=dosya | Çıkış dosyası |
ibs=n | Giriş dosyasının blok boyu. Belirtilmez ise 512 bayt olduğu kabul edilir. |
obs=n | Çıkış dosyasının blok boyu. Belirtilmez ise 512 bayt olduğu kabul edilir. |
bs=n | Hem giriş hem çıkış dosyasının blok uzunluğu |
cbs=n | Dönüşüm işleminde kullanılan ara belleğin boyutu. Bu seçenek ascii veya ebcdic seçenekleriyle birlikte kullanılabilir. |
skip=n | Çıkış dosyası yaratılırken giriş dosyasından n bloğun atlanması sağlanır. |
seek=n | Kopyalama öncesinde çıkış dosyasının başından itibaren n bloğu arar. |
count=n | Sadece n giriş bloğunu kopyalar. |
conv=ascii | EBCDIC dosyası ASCII dosyaya dönüştürür. |
conv=ebcdic | ASCII dosyayı EBCDIC dosyasına dönüştürür. |
conv=lcase | Büyük harfleri küçük harflere dönüştürür. |
conv=ucase | Küyük harfleri büyük harflere dönüştürür. |
conv=noerror | Hata durumunda dönüşüm işlemini durdurmaz. |
Örnek
/usr/acct/personel dizininde yer alan PERFLANA.dat dosyasından 2 blokluk veriyi, PER ismiyle bulunduğumuz dizin içine kopyalamak istiyoruz.
Bu durumda dd komutu şu şekilde kullanılır:
Bash:
$ dd if=/usr/acct/personel /PERFLANA.dat of=PER count=2
2+0 blocks in
2+0 blocks out
$ _
PER dosyasının boyutu ls komutuyla kontrol edilirse
Bash:
$ ls -l PER
-rw -rw -rw- 1 burak 1024 Mar 4 09:13 PER
$ _
Gerçekten 2 blok(1024 bayt) olduğu görülür.
Örnek
EBCDIC dosyaları UNIX işletim sisteminde kullabilmek amacıyla bir dönüşüme tabi tutmak gerekiyor. Bu amaçla dd komutu kullanılır.
Bash:
$ dd if=stokmas of=stok conv=ascii
0+1 blocks in
0+1 blocks out
$ _
Örnek
Aşağıdaki metin dosyasını göz önüne alalım.
Bash:
$ cat yazi
UNIX işletim sistemi baslangicta
bir grup arastirmacinin amaci icin gelistirildi.
Bu amac da, yazilim
gelistirilmesi icin daha uygun ve daha iyi
cevre kosullarinin saglanmasi idi.
Bircok isletim sisteminden farkli olarak donanim ureticilerinin
gereksindikleri bazi ozellikler gozetilerek
tasarlandi.
$ _
Metin içinde yer alan tüm karakterleri büyük harflere dönüştürmek için aşağıdaki işlem yapılır:
Bash:
$ dd if=yazi of=yaz conv=ucase
0+1 blocks in
0+1 blocks out
$ _
Yeni dosyanın içeriği şu şekildedir :
Bash:
$ cat yaz
UNIX ISLETIM SISTEMI BASLANGICTA
BIR GRUP ARASTIRMACININ AMACI ICIN GELISTIRILDI.
BU AMAC DA, YAZILIM
GELISTIRILMESI ICIN DAHA UYGUN VE DAHA IYI
CEVRE KOSULLARININ SAGLANMASI IDI.
BIRCOK ISLETIM SISTEMINDEN FARKLI OLARAK DONANIN URETICILERININ
GEREKSINDIKLERI BAZI OZELLIKLER GOZETILEREK
TASARLANDI.
$ _
Kaynak : Ubuntu Turkey