Điểm:3

Làm cách nào để nối ngày và văn bản vào tệp dưới dạng bí danh?

lá cờ pl

Tôi muốn tạo bí danh để thêm ghi chú ngày tháng vào một tệp. (Trường hợp sử dụng tôi muốn sao chép: Sebastian Daschner - Cách ghi chú hiệu quả với tư cách là nhà phát triển.

Cho đến nay tôi đã có thể nối thêm ngày, nhưng tôi không thể tìm ra cách nối cả ngày và ghi chú từ đầu vào của người dùng.

Cách sử dụng

thêm vào tệp 'văn bản của tôi'

kết quả mong đợi trong tập tin.txt

2021-08-30 : một số văn bản trước đó
2021-09-01 : văn bản của tôi

Bí danh tôi đã viết cho đến nay

alias append-to-file='tee -a file.txt <<< $(echo $(date -I) :)'
sudodus avatar
lá cờ jp
Đây có phải là một ghi chú đơn giản mà bạn có thể nhập vào một lệnh `read` đơn giản hay bạn cần một trình soạn thảo văn bản để tạo ghi chú?
Điểm:4
lá cờ hr

Nếu bạn muốn một cái gì đó mà bạn có thể chuyển một tin nhắn văn bản làm đối số, thì bạn nên xem một hàm trình bao thay vì một bí danh.

Bạn có thể cân nhắc sử dụng tiện ích ts (dấu thời gian) từ gói moreutils:

append-to-file () { printf '%s\n' "$*" | ts '%Y-%m-%d :' >> /path/to/myfile.txt ; }

Nếu ts không phải là một lựa chọn, bạn có thể chèn văn bản vào chuỗi định dạng của ngày tháng lệnh - nhưng bạn cần phải cẩn thận về % nhân vật:

append-to-file () { msg="$*"; ngày "+%Y-%m-%d : ${msg//%/%%}" >> /path/to/myfile.txt ; }

hoặc (cảm ơn @bac0n) có lẽ an toàn hơn, sử dụng bash bản inf khả năng định dạng thời gian riêng của chức năng - không cần phải thay thế %s trong phương thức này, vì thông báo được truyền dưới dạng đối số chuỗi thay vì được nhúng trong chuỗi định dạng:

append-to-file () { printf '%(%Y-%m-%d)T : %s\n' -1 "$*" >> /path/to/myfile.txt ; }

Nếu bạn muốn nó lặp lại với thiết bị đầu cuối, hãy thay thế >> với | phát bóng -a

Điểm:4
lá cờ cn

Bạn có thể làm điều này với một kịch bản nhỏ. Một cách có thể là:

#!/bin/bash
echo "$(date -I): $@" >> file.txt
đuôi -n 1 file.txt

Các $@ biến là viết tắt của bất kỳ thứ gì bạn đã nhập vào dòng lệnh. Các đuôi lệnh sẽ lặp lại dòng cuối cùng của tệp ra màn hình.

Lưu tập lệnh này trong của bạn ~/thùng hoặc trong của bạn .local/bin thư mục như thêm vào tập tin. Tạo thư mục nếu nó không tồn tại. Lần tới khi bạn đăng nhập, một trong hai thư mục này sẽ được đưa vào PATH của bạn. Sau đó, bạn có thể nhập lệnh bất cứ lúc nào. Những gì bạn nhập sẽ được lưu trong một tập tin tập tin.txt trong thư mục làm việc hiện tại.

lá cờ pl
Cảm ơn câu trả lời nhanh của bạn. Tôi đã viết một kịch bản và thêm nó vào đường dẫn. Sau đó, tôi đã tạo một bí danh để gọi nó. Tôi sẽ làm cho nó chung chung hơn sau nếu cần (đối số đầu tiên cho đường dẫn tệp đích và các đối số khác cho nội dung)
vanadium avatar
lá cờ cn
Tất nhiên, nếu bạn thích bí danh, bạn có thể làm;) Tôi chỉ đơn giản là đặt tên ngắn cho tập lệnh. Bí danh chủ yếu nhằm mục đích thêm các tùy chọn mặc định vào lệnh hoặc có các biến thể (ví dụ: `bí danh ls='ls --color=auto'`, `bí danh la='ls -A'`). Đối với bất kỳ tệp thực thi nào không có trong đường dẫn, việc tạo một liên kết trong một thư mục trong đường dẫn sẽ tùy chỉnh hơn là đặt nó trong một bí danh (có thể thực hiện được).

Đă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.