Tôi thường xuyên thực hiện từ một lệnh shell (trong trường hợp Bash) mà tôi muốn rẽ nhánh ngay lập tức và đầu ra mà tôi muốn bỏ qua. Do đó, trên thực tế, tôi đã tạo một tập lệnh (silent
) để thực hiện:Đơn giản chỉ cần forking và chuyển hướng đầu ra của một lệnh đến/dev/null
#!/bin/bash
[email protected] &> /dev/null &
Sau đó tôi có thể chạy, ví dụ:
silent inkscape myfile.svg
và thiết bị đầu cuối của tôi sẽ không bị ô nhiễm bởi đầu ra gỡ lỗi của quá trình tôi vừa mới chia.
Tôi có hai câu hỏi:
Có một cách "chính thức" để làm điều này ?, ví dụ: một cái gì đó ngắn hơn nhưng tương đương với
&> /dev/null &
?Nếu không, có cách nào tôi có thể thực hiện công việc hoàn thành tab sau lệnh
silent
của mình như thể nó không có ở đó không? Để đưa ra một ví dụ, sau khi tôi đã nhậpsilent inksc
, tôi muốn bash tự động hoàn tất lệnh của tôi thànhsilent inkscape
khi tôi nhấn[tab]
.
Bạn đã viết 'như thể nó không có ở đó'. Xin lỗi 'nó' là gì? Có thể bạn có thể chỉnh sửa bài đăng của mình để làm rõ. Chúc may mắn. – shellter
Điều này có nghĩa là làm cho bash đối xử với các đối số thành 'im lặng' như một lệnh bình thường, với việc hoàn thành tab bình thường có sẵn cho lệnh đó. Vì vậy, 'im lặng git pus [TAB]' sẽ hoàn thành 'im lặng git push'. –
Tôi đã làm rõ câu hỏi thứ hai, cảm ơn vì đã hỏi. Ví dụ git có lẽ thậm chí còn tốt hơn, vì nó cho thấy rằng tôi muốn bash sử dụng hồ sơ hoàn thành git trong trường hợp đó. – Philippe