Tôi muốn một cái gì đó như thế này trong bash:dấu ngoặc kép làm tổ trong bash
alias foo='bar="$(echo hello world | grep \"hello world\")"; echo $bar;'; foo
sản lượng dự kiến: hello world
Ouput: grep: thế giới ": Không có tập tin hoặc thư mục
Dấu ngoặc kép bên ngoài phải là dấu ngoặc đơn, với dấu ngoặc kép $ bar sẽ trống.
T các trích dẫn tiếp theo phải là dấu ngoặc kép, với dấu nháy đơn $() sẽ không mở rộng.
Dấu ngoặc kép bên trong có thể là cả hai loại dấu ngoặc kép, nhưng dấu nháy đơn không cho phép dấu ngoặc đơn bên trong chúng.
Làm cách nào để đạt được điều này?
Có không thể thoát khỏi dấu ngoặc kép, nói rằng tôi muốn làm: 'alias foo = 'baz =" hello world "; bar = "$ (echo hello world | grep \" $ baz \ ")"; echo $ bar; '; foo' – Tyilo