Dalam hal typeini tidak ada hubungannya dengan bash built-in type, tetapi lebih pada nanti.
Sedikit tentang "ketik"
Perintah BASH bawaan typememberi Anda informasi tentang perintah. Jadi:
$ type type
type is a shell builtin
Sintaksnya adalah:
type [-tap] [name ...]
-t: ketik hanya cetak, jika ditemukan
-a: cetak semua kemunculan perintah, baik yang terpasang maupun yang lain.
-p: cetak file disk yang akan dieksekusi saat dipanggil ke perintah, atau tidak sama sekali.
Jika kita melihat time, killdan catsebagai contoh:
$ type time kill cat
time is a shell keyword
kill is a shell builtin
cat is /bin/cat
$ type -t time kill cat
keyword
builtin
file
$ type -a time kill cat
time is a shell keyword
time is /usr/bin/time
kill is a shell builtin
kill is /bin/kill
cat is /bin/cat
$ type -ta time kill cat
keyword
file
builtin
file
file
Sekarang, ini menentukan bahwa jika Anda berada dalam Bash shell dan ketik time some_cmd, bash builtin timedigunakan. Untuk menggunakan sistem timebisa Anda lakukan /usr/bin/time some_cmd.
Salah satu cara yang sering digunakan untuk memastikan bahwa sistem, dan bukan built-in, perintah yang digunakan adalah dengan menggunakan which.
tt=$(which time)
dan kemudian gunakan $ttuntuk memanggil sistem time.
Perintah yang dimaksud
Dalam hal ini -typeadalah opsi untuk perintah find. Opsi ini mengambil satu argumen yang menentukan jenis entitas. Contoh
find . -type f # File
find . -type d # Directory
Masih ada lagi, periksa man findsisanya.
Untuk mencari opsi tertentu yang dapat Anda lakukan (sementara di tangan):
/ ^ \ s * -typeEnter
Kemudian gunakan nuntuk selanjutnya sampai Anda menemukannya.
Sedikit tentang perintah shell
Ini sedikit interpretasi pribadi.
Beberapa hal yang layak disebutkan, dalam kasus khusus ini, adalah perintah, opsi, argumen dan pipa.
Ini agak longgar digunakan, tetapi dalam kosakata saya singkatnya:
- perintah: program atau bawaan .
- parameter: entitas setelah kata perintah.
- opsi: parameter opsional .
- argumen: parameter yang diperlukan.
Dalam spesifikasi perintah kurung kotak digunakan untuk menentukan opsi dan, secara opsional kurang / lebih besar dari itu, digunakan untuk menentukan argumen. Jadi:
foo [-abs] [-t <bar>] <file> ...
foo [-abs] [-t bar] file ...
Memberikan -a -bdan -ssebagai parameter opsional, dan fileyang diperlukan.
-tadalah opsional, tetapi jika ditentukan membutuhkan argumen yang diperlukan bar. Dots menyatakan bahwa ia dapat mengambil beberapa file.
Ini bukan spesifikasi yang pasti, dan sering manatau helpdiharuskan untuk dipastikan.
Posisi opsi argumen dan input sering dapat digabungkan, tetapi umumnya terbaik untuk tetap menggunakan pendekatan berbasis posisi karena beberapa sistem tidak menangani posisi campuran argumen. Sebagai contoh:
chmod -R nick 722 foo
chmod nick 722 foo -R
Keduanya bekerja pada beberapa sistem, sedangkan yang kedua tidak pada yang lain.
Dalam perintah persis Anda semua parameter milik find- jadi jika Anda bertanya-tanya tentang properti man findadalah tempat yang tepat untuk mencari. Dalam kasus di mana Anda perlu melihat halaman manual untuk shell, dll. Bisa di misalnya:
find . $(some command)
find . `some command`
find . $some_var
find . -type f -exec some_command {} \;
find . -type f | some_command
...
Ini -execadalah yang spesial di mana -exec some_command {} \;semua parameter diberikan find, tetapi some_command {} \;bagian diperluas, findke dalam some_command string_of_found_entity.
Selanjutnya
- mengutip
- ekspansi
- substitusi komando
- dan masih banyak lagi
Anda mungkin menemukan ini berguna .
typeperintah builtin tidak digunakan olehfind. The-typepilihan untukfindmelakukan sesuatu yang lain. Lihathelp typedanman finddapatkan jawaban Anda.