Ini berfungsi terutama untuk memastikan dada alat POSIX tersedia baik di dalam maupun di luar shell (lihat alasan POSIX untuk memerlukannya ).
Sebab cd
, itu tidak terlalu berguna tetapi perhatikan bahwa cd
mengubah direktori tetapi memiliki efek samping lain: itu mengembalikan status keluar yang membantu menentukan apakah Anda dapat ke chdir()
direktori itu atau tidak, dan menampilkan pesan kesalahan yang berguna menjelaskan mengapa Anda tidak bisa chdir()
ketika kamu tidak bisa.
Contoh:
dirs_i_am_able_to_cd_into=$(find . -type d -exec cd {} \; -print)
Efek samping potensial lainnya adalah pengotomatisasian direktori.
Pada beberapa sistem, sebagian besar perintah eksternal untuk builtin standar shell diimplementasikan sebagai symlink ke skrip yang sama yang tidak:
#! /bin/sh -
"${0##*/}" "$@"
Itu mulai shell dan jalankan builtin di dalamnya.
Beberapa sistem lain (seperti GNU), memiliki utilitas sebagai perintah yang benar-benar dapat dieksekusi yang dapat menyebabkan kebingungan ketika perilaku berbeda dari versi bawaan shell.
/usr/bin/cd
, hanya shell yang ada di dalamnya.