Làm thế nào để tôi vô hiệu hóa một lệnh cụ thể, ví dụ crontab -r
?
Nó đã xảy ra với tôi hai lần khi tôi vô tình chạy nó, bởi vì Echìa khóa của tôi nằm cạnh Rchìa khóa. Lỗi đánh máy nhỏ là đủ và crontab của bạn đã biến mất.
Làm thế nào để tôi vô hiệu hóa một lệnh cụ thể, ví dụ crontab -r
?
Nó đã xảy ra với tôi hai lần khi tôi vô tình chạy nó, bởi vì Echìa khóa của tôi nằm cạnh Rchìa khóa. Lỗi đánh máy nhỏ là đủ và crontab của bạn đã biến mất.
Câu trả lời:
Sử dụng một trình bao bọc xung quanh crontab
lệnh, ví dụ chức năng này sẽ làm:
crontab () { [[ $@ =~ -[iel]*r ]] && echo '"r" not allowed' || command crontab "$@" ;}
Hàm này kiểm tra nếu -r
tồn tại trong đối số của crontab
; nếu vậy, thoát với thông báo "r" not allowed
, nếu không thì thực thi lệnh.
Đặt nó vào của bạn ~/.bashrc
để tải nó khi khởi tạo tất cả bash
các phiên tương tác .
Tôi đề nghị bạn bao gồm
alias crontab="crontab -i"
trong ~/.bashrc
tệp của bạn (bắt đầu một vỏ mới trước khi thử nghiệm!)
Điều này có nghĩa là mỗi khi bạn chạy crontab, bạn luôn chọn tùy chọn "-i". Nếu bây giờ bạn đưa ra crontab -r
lệnh, nó sẽ được xử lý tại crontab -ir
, nó sẽ nhắc trước khi xóa tệp crontab:
nick@serv2:~$ crontab -r
crontab: really delete nick's crontab? (y/n) n