Tôi đã thấy cấu trúc này trong các kịch bản rất nhiều và tự mình sử dụng nó, nhưng điều đó làm phiền tôi rằng dường như tôi không thể tìm thấy nó trong tài liệu.
Thí dụ:
[ -f file1 ] &&
[ -f file2 ] &&
echo "Both files exist." ||
echo "One or the other file doesn't exist."
Điều này cũng có thể được thực hiện với dấu gạch chéo ngược trước dòng mới, như được đề cập trong man bash
:
If a \<newline> pair appears, and the backslash is not
itself quoted, the \<newline> is treated as a line continuation (that
is, it is removed from the input stream and effectively ignored).
Thí dụ:
[ -f file1 ] && \
[ -f file2 ] && \
echo "Both files exist." || \
echo "One or the other file doesn't exist."
... nhưng điều này dường như không cần thiết. Phiên bản đầu tiên ở trên hoạt động ngay cả khi không có dấu gạch chéo ngược.
Tôi có thể tìm thấy cái này ở man bash
đâu? (Ngoài ra, điều này bash
cụ thể hay tuân thủ POSIX?)
;
,&
,(
và)
.