Các lệnh tích hợp luôn được ưu tiên hơn các lệnh bên ngoài. Lý do là lệnh tích hợp nhanh hơn (và trong một vài trường hợp, chẳng hạn như cdhoặc , chỉ có lệnh tích hợp mới có thể có hiệu quả mong muốn).test -o BASH_OPTION
Đôi khi lệnh bên ngoài có thể có các khả năng mà shell dựng sẵn không có. Trong trường hợp đó, bạn có thể gọi lệnh bên ngoài bằng cách đưa ra một đường dẫn rõ ràng (nghĩa là chứa dấu gạch chéo) (điều này bỏ qua mọi mối quan tâm về thứ tự trong $PATH). Nếu bạn không muốn mã hóa đường dẫn bên ngoài nhưng bạn muốn ngăn việc sử dụng nội dung, bạn có thể sử dụng "$(type -P test)"(ghi chú vốn P) trong bash, "$(whence -p test)"trong ksh và =testtrong zsh. Một cách khác để buộc sử dụng lệnh bên ngoài là sử dụng hàm commanddựng sẵn ( command -p test …) hoặc đi qua envtiện ích ( env test …).
Trong zsh, bạn có thể vô hiệu hóa nội dung với disable test. Điều này là vĩnh viễn (đối với lớp vỏ hiện tại hoặc lớp vỏ con) cho đến khi phần dựng sẵn được kích hoạt lại enable test. Trong bash, bạn có thể làm tương tự với enable -n testđể vô hiệu hóa và enable testkích hoạt lại.
Bạn có thể sử dụng một bí danh hoặc hàm để buộc thực thi một lệnh khác, ví dụ alias test=/usr/bin/testhoặc test () { /usr/bin/test "$@"; }. Nếu bạn có một bí danh như vậy, bạn có thể ngăn việc sử dụng nó bằng cách trích dẫn bất kỳ phần nào của nó, ví dụ như \testsẽ thực hiện chức năng bình thường / dựng sẵn / tra cứu bên ngoài. Lưu ý rằng tùy thuộc vào trình bao và cài đặt của nó, các định nghĩa bí danh trong một hàm có thể được mở rộng khi một hàm được đọc hoặc khi nó được thực thi. Nếu bạn đã xác định một chức năng, bạn có thể sử dụng command testđể ngăn chặn tra cứu chức năng cũng như tra cứu bí danh (vì vậy ở đây, testnội dung sẽ được gọi trừ khi bị tắt).
/usr/bin/test -f "$file"...