Tôi đã cố gắng sed
thay thế một số từ khóa trong một tệp lớn (100 MB). Tôi không biết về -i
tùy chọn (tại chỗ), vì vậy nỗ lực đầu tiên của tôi là chuyển hướng như thế này:
sed 's/original/edited/g' file.log >> file.log
Điều xảy ra sau đó là PC của tôi đã dừng hoạt động, gần như không có đầu vào bàn phím. Tôi đã thử một giao diện điều khiển Ctrl+ Alt+ khác F1nhưng sau khi từ từ nhập tên người dùng, nó cũng tạm dừng. Không có bàn phím, lựa chọn duy nhất của tôi là thiết lập lại phần cứng máy. Sau khi đăng nhập, tôi thấy file.log có dung lượng khoảng 8 GB.
Tôi thực sự muốn hiểu tại sao việc thực thi lệnh đó có thể khiến hệ thống không phản hồi và liệu các cơ chế tồn tại ở cấp hệ thống để kích hoạt cảnh báo và giết quá trình vi phạm?
free -h
?
ex -sc '%s/original/edited/ge|x' file.log
nên làm những gì bạn muốn theo cách thành ngữ UNIX mà không có sed -i
tác dụng phụ.