> echo "hi"
hi
> VAR='echo "hi"'
> $VAR
"hi"
Tại sao đầu ra của các lệnh trên lại khác nhau?
Một điều tương tự xảy ra với dấu ngoặc đơn:
> VAR="echo 'hi'"
> $VAR
> 'hi'
at
) là mã. Bất kỳ lời khuyên về một cách an toàn hơn để tổ chức / thu thập mã sẽ được đưa ra at
?
at
lấy sh
cú pháp làm đầu vào. Do đó, tạo đầu vào cho at
phương tiện tạo ra sh
cú pháp được trích dẫn hợp lệ từ đầu vào tùy ý, không tầm thường, vì vậy tôi cố gắng tránh nó nếu có thể. Nó thực sự có ích nếu bạn có thể cung cấp thêm một chút chi tiết về những gì bạn đang cố gắng thực hiện.
at
trong "thời gian" nhất định và bảo at
chạy lệnh dzen2
. dzen2
lấy "thông điệp" từ stdin và cũng sử dụng một số tham số tĩnh khác. Khó khăn là tôi cần chuyển tham số "tin nhắn" từ người dùng vào dzen2
lệnh, nhưng tôi không thực sự dzen2
tự chạy , tôi đang nói at
để làm điều đó.
eval
là một mỏ của các lỗ hổng bảo mật tiềm năng mà bạn phải bước đi rất cẩn thận