GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana cara mendapatkan yang setara dengan /dev/one di Linux

Coba ini:

dd if=<(yes $'\01' | tr -d "\n") of=file count=1024 bs=1024

Gantikan $'\377' atau $'\xFF' jika Anda ingin semua bit menjadi satu.


Nah, Anda bisa melakukan ini:

dd if=/dev/zero count=1024 bs=1024 |
  tr '\000' '\001' > file

tr '\0' '\377' < /dev/zero | dd bs=64K of=/dev/sdx

Ini harus jauh lebih cepat. Pilih ukuran blok Anda (atau tambahkan jumlah) seperti yang Anda butuhkan. Menulis satu ke SSD-Disk hingga penuh dengan ukuran blok 99M memberi saya kinerja tulis 350M/dtk.


pv /dev/zero |tr \\000 \\377 >targetfile

...di mana \377 adalah representasi oktal dari 255 (satu byte dengan semua bit diatur ke satu). Mengapa tr hanya bekerja dengan angka oktal, saya tidak tahu -- tapi berhati-hatilah untuk tidak secara tidak sadar menerjemahkan ini ke 3FF .

Sintaks untuk menggunakan tr rawan kesalahan. Saya sarankan memverifikasi bahwa itu membuat terjemahan yang diinginkan...

cat /dev/zero |tr \\000 \\377 |hexdump -C

Catatan:pv adalah utilitas bagus yang menggantikan cat dan menambahkan tampilan progres/tingkat.


Linux
  1. Bagaimana cara mengganti harddisk yang gagal di RAID perangkat lunak Linux

  2. Cara membuat kata sandi acak di linux menggunakan /dev/random

  3. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  1. Seberapa Portabel /dev/stdin, /dev/stdout Dan /dev/stderr?

  2. Kapan Menggunakan /dev/random Vs /dev/urandom?

  3. Linux – Bagaimana Cara Membuat /dev/null?

  1. Cara memetakan perangkat /dev/sdX dan /dev/mapper/mpathY dari perangkat /dev/dm-Z

  2. Bagaimana cara mendapatkan jalur proses di Unix / Linux

  3. Bagaimana cara menyandikan base64 /dev/random atau /dev/urandom?