Câu hỏi như tiêu đề ạ, e thấy có nhiều câu lệnh như thế này:
cat file1 | wc | cat > file2
cat file1 | sort > file2
nhưng lại ko hiểu cái ký tự |
đó dùng để làm gì, trên codecademy nó nói vắn tắt quá
Nên trên diễn đàn có ai rành về khoản này hướng dẫn cho e vs ạ, hoặc 1 tut tiếng Việt giải thích kỹ càng cũng đc, e tìm trên GG mà ko ra :((
Thanks you guys veryyy much
Ký tự | trong shell có nghĩa là gì?
Kết hợp nhiều lệnh thôi
Anh có thể nói rõ hơn được ko ạ, em chưa hiểu lắm. Ví dụ như 2 commands ở trên?
Nó được gọi là pipe. Giống như cái đường ống ấy, output của lệnh bên trái sẽ được truyền vào lệnh phía sau
Bạn có xem giải thích đoạn lệnh trên tại explainshell.com
Anh có thể nói rõ hơn nữa được ko? Còn link kia thì em ko từ chối nhưng vốn từ tiếng Anh của em chưa được tốt lắm
đọc file , sap xếp rồi ghi vao file 2
đọc file1 rồi wc gi đó (chưa dung wc :p)
sort
nhận tham số là 1 file. Trong khi đó, cat file
đã lấy ra nội dung của file
, nếu vậy thì sao sort
vẫn có tác dụng anh nhỉ?
Em chưa hiểu lắm @@
chưa dung wc
Là nhà vệ sinh thôi mà @_@!
do thằng | đó
http://www.linfo.org/vertical_bar_character.html
ý là anh chưa dùng lệnh đó
gõ lệnh đó là đi vệ sinh được hả =)). Thần bí vậy
Link đầu là link google tiếng Việt nhé.
cat file1 | wc | cat > file2
-
cat file1
lệnhcat
ở đây là nối các file và in ra màn hình, ở đây có 1 file thì nó in ra nội dung của file1 luôn, tuy nhiên ký tự đằng sau là pipe|
nên cái output (tức là nội dung của file1 do lệnh cat lấy ra) sẽ được chuyển hướng và trở thành input của lệnh phía sau, lệnhwc
-
wc
== words count, đếm từ, tuy nhiên output của lệnh này sẽ gồm 3 cột (phân tách bởi dấu tab), cột đầu tiên là số lượng dòng trong input, cột 2 là số lượng từ, cột 3 là số bytes. Tương tự theo sau là|
nên output của wc sẽ trở thành input của lệnhcat
phía sau. - Theo sau lệnh
cat
là ký tự>
nó được dùng để chuyển hướng ouput của lệnhcat
vào file2, tức là lưu vào file2 thay vì in ra màn hình.
Tóm lại 2 cái |
và >
dùng để chuyển hướng input / output.
Bonus cho bạn cái link. Cơ mà mình khuyên là nên học tiếng anh trước.
Thanks anh nhiều lắm ^^ em hiểu zồi