Anda dapat menggunakan command
shell built-in untuk mem-bypass proses pencarian normal dan menjalankan perintah yang diberikan sebagai perintah eksternal terlepas dari segala kemungkinan lain (shell built-in, alias, dll.). Hal ini sering dilakukan dalam skrip yang harus portabel di seluruh sistem, meskipun mungkin lebih sering menggunakan singkatan \
(seperti dalam \rm
daripada command rm
atau rm
, karena terutama yang terakhir mungkin alias sesuatu yang tidak diketahui seperti 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...]
$
Ini dapat digunakan dengan alias, seperti:
$ alias time='command time'
$ time
Usage: time [-apvV] [-f format] [-o file] [--append] [--verbose]
[--portability] [--format=format] [--output=file] [--version]
[--quiet] [--help] command [arg...]
$
Keuntungan dari contoh alias time=/usr/bin/time
ini adalah bahwa Anda tidak menentukan path lengkap ke time
biner, tetapi sebaliknya kembali ke mekanisme pencarian path yang biasa.
The alias
perintah itu sendiri dapat masuk ke misalnya ~ / .bashrc atau /etc/bash.bashrc (yang terakhir ini global untuk semua pengguna di sistem).
Untuk kasus sebaliknya (memaksa penggunaan shell built-in jika ada alias yang ditentukan), Anda akan menggunakan sesuatu seperti builtin time
, yang lagi-lagi mengesampingkan proses pencarian yang biasa dan menjalankan shell built-in yang bernama. Halaman bash man menyebutkan bahwa ini sering digunakan untuk menyediakan cd
fungsionalitas khusus dengan fungsi bernama cd
, yang pada gilirannya menggunakan builtin cd
untuk melakukan hal yang sebenarnya.
type -a <cmd>
.