Sự khác nhau giữa echo string và echo "string"

Các bác trên forum cho e hỏi tại sao khi mình gõ echo “a string” hoặc echo a string thì nó đều cho ra như nhau ạ? (vì trong lập trình, nếu gõ echo a string thì nó chỉ xuất hiện mỗi chữ a thôi, còn từ string bỏ đi mất).
Và nếu thế thì sao 1 số tài liệu nói phải sử dụng ngoặc kép cho chuỗi sau lệnh echo ạ?
Em cảm on ..
ps: E thử redirect thì nó cũng bình thường luôn .
.
ps2: Do ko biết đây là cái gì nên ko dám để tag lung tung (vì e đang học commandline trên codecademy ^^)

Hinh như chính bạn đã trả lời cho thắc mắc của mình ra đấy thôi. Trong Bash Shell, argumentsoptions được phân cách nhau bởi khoảng trắng nên bạn phải cho thêm ' ' hoặc " " với những arguments có chứa sẵn khoảng trắng, thì nó mới hiểu được đây chỉ là argument duy nhất. Còn lại thì có hay không đều không ảnh hưởng.

2 Likes

Vậy nghĩa là nếu có option thì argument (chuỗi có khoảng trắng) phải có ngoặc kép bao quanh mới đc hả a?

Chính xác :thumbsup:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?