Saya mencoba sed
mengganti beberapa kata kunci dalam file besar (100 MB). Saya tidak mengetahui opsi -i
(inplace), jadi upaya pertama saya adalah mengarahkan seperti ini:
sed 's/original/edited/g' file.log >> file.log
apa yang terjadi setelah itu adalah PC saya berhenti, hampir tidak ada input keyboard. Saya mencoba konsol yang berbeda Ctrl+ Alt+ F1tetapi setelah perlahan memasukkan nama pengguna, itu terhenti juga. Tanpa keyboard, satu-satunya pilihan saya adalah mengatur ulang perangkat dengan perangkat keras. Setelah masuk, saya melihat file.log itu sekitar 8 GB.
Saya benar-benar ingin memahami mengapa pelaksanaan perintah itu dapat membuat sistem jadi tidak responsif, dan jika ada mekanisme di tingkat sistem untuk memicu peringatan dan membunuh proses yang menyinggung?
free -h
?
ex -sc '%s/original/edited/ge|x' file.log
harus melakukan apa yang Anda inginkan dengan cara UNIX idiomatik tanpa sed -i
efek samping.