Điểm:0

Cách lưu đầu ra lệnh vào dòng tệp văn bản cụ thể

lá cờ dk

Tôi muốn biết cách lưu đầu ra lệnh vào một dòng cụ thể của tệp văn bản.

Tôi đã tìm kiếm trên internet khoảng một giờ về vấn đề này, nhưng tôi không tìm thấy câu trả lời thích hợp nào.

Ví dụ:

Tôi muốn lưu đầu ra của một số ls lệnh đến dòng thứ 7 của ví dụ.txt. (chèn dòng mới)

Làm thế nào tôi sẽ làm điều đó?

Cảm ơn trước.

HuHa avatar
lá cờ es
Đây có thể là thứ bạn cần: https://unix.stackexchange.com/questions/70878/replaces-string-basing-on-line-number
lá cờ hr
Bạn có muốn ghi đè lên dòng thứ 7 hiện có không? hoặc chèn dòng mới trước hoặc sau nó?
カラス avatar
lá cờ dk
@steeldriver chèn cái mới
Điểm:2
lá cờ hr

Bạn có thể sử dụng sed's r lệnh để đọc và chèn đầu ra lệnh sau một địa chỉ nhất định.Đặc biệt, GNU sed cung cấp tên tệp đặc biệt /dev/stdin để đọc dữ liệu từ đầu vào tiêu chuẩn.

Vì vậy, ví dụ, đưa ra

$ con mèo ví dụ.txt
Dòng 1
Dòng 2
dòng 3
Dòng 4
dòng 5
dòng 6
dòng 7
dòng 8
Dòng 9
dòng 10

sau đó

$ ls -l ví dụ.txt | sed -i '7r/dev/stdin' ví dụ.txt

kết quả trong

$ con mèo ví dụ.txt
Dòng 1
Dòng 2
dòng 3
Dòng 4
dòng 5
dòng 6
dòng 7
-rw-r--r-- 1 steeldriver steeldriver 71 ngày 28 tháng 6 15:52 example.txt
dòng 8
Dòng 9
dòng 10

Nếu bạn muốn chèn đầu ra lệnh trước dòng thứ 7, sau đó đọc và chèn nó sau dòng thứ 6.

カラス avatar
lá cờ dk
Nó hoạt động! Cảm ơn bạn rất nhiều.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.