Bạn có thể sử dụng command
shell tích hợp để bỏ qua quá trình tra cứu thông thường và chạy lệnh đã cho dưới dạng lệnh bên ngoài bất kể mọi khả năng khác (shell dựng sẵn, bí danh, v.v.). Điều này thường được thực hiện trong các tập lệnh cần có khả năng di động trên các hệ thống, mặc dù có lẽ phổ biến hơn bằng cách sử dụng tốc ký \
(như \rm
thay vì command rm
hoặc rm
, đặc biệt là phần sau có thể được đặt bí danh cho một cái gì đó không được biết đến như thế rm -i
).
$ time
real 0m0.000s
user 0m0.000s
sys 0m0.000s
$ command time
Usage: time [-apvV] [-f format] [-o file] [--append] [--verbose]
[--portability] [--format=format] [--output=file] [--version]
[--quiet] [--help] command [arg...]
$
Điều này có thể được sử dụng với một bí danh, như vậy:
$ alias time='command time'
$ time
Usage: time [-apvV] [-f format] [-o file] [--append] [--verbose]
[--portability] [--format=format] [--output=file] [--version]
[--quiet] [--help] command [arg...]
$
Ưu điểm của việc này hơn alias time=/usr/bin/time
là bạn không chỉ định đường dẫn đầy đủ đến time
nhị phân, mà thay vào đó, quay lại cơ chế tìm kiếm đường dẫn thông thường.
Bản alias
thân lệnh có thể đi vào ví dụ ~ / .bashrc hoặc /etc/bash.bashrc (lệnh sau là toàn cục cho tất cả người dùng trên hệ thống).
Đối với trường hợp ngược lại (buộc sử dụng shell được tích hợp trong trường hợp có một bí danh được xác định), bạn sẽ sử dụng một cái gì đó giống như builtin time
, một lần nữa ghi đè lên quá trình tìm kiếm thông thường và chạy shell được tích hợp sẵn. Trang bash man đề cập rằng điều này thường được sử dụng để cung cấp cd
chức năng tùy chỉnh với một chức năng có tên cd
, lần lượt sử dụng nội dung dựng sẵn cd
để thực hiện điều thực.
type -a <cmd>
.