EnglishFrenchSpanyol

Ad


Favicon OnWorks

bash - Dalam talian di Awan

Jalankan bash dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah command bash yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

JADUAL:

NAMA


bash - GNU Bourne-Again SHell

SINOPSIS


menampar [pilihan] [rentetan_perintah | fail]

HAKCIPTA


Bash ialah Hak Cipta (C) 1989-2013 oleh Free Software Foundation, Inc.

DESCRIPTION


Bash merupakan sh-jurubahasa arahan yang serasi yang melaksanakan arahan yang dibaca daripada
input standard atau daripada fail. Bash juga menggabungkan ciri-ciri berguna daripada Korn and C
cengkerang (ksh and csh).

Bash bertujuan untuk menjadi pelaksanaan yang selaras bagi bahagian Shell dan Utiliti
spesifikasi IEEE POSIX (IEEE Standard 1003.1). Bash boleh dikonfigurasikan menjadi POSIX-
konforman secara lalai.

PILIHAN


Semua pilihan shell aksara tunggal yang didokumenkan dalam perihalan menetapkan
arahan terbina boleh digunakan sebagai pilihan apabila shell dipanggil. Sebagai tambahan, menampar
mentafsir pilihan berikut apabila ia dipanggil:

-c Jika -c pilihan hadir, kemudian arahan dibaca daripada bukan pilihan pertama
hujah rentetan_perintah. Jika terdapat hujah selepas rentetan_perintah, Mereka
diberikan kepada parameter kedudukan, bermula dengan $0.
-i Jika -i pilihan ada, cangkangnya ada interaktif.
-l Membuat menampar bertindak seolah-olah ia telah digunakan sebagai shell log masuk (lihat INVOKASI di bawah).
-r Jika -r pilihan ada, cangkerang menjadi terhad (Lihat TERHAD SHELL
di bawah).
-s Jika -s pilihan ada, atau jika tiada hujah kekal selepas pemprosesan pilihan,
kemudian arahan dibaca daripada input standard. Pilihan ini membolehkan
parameter kedudukan untuk ditetapkan apabila menggunakan shell interaktif.
-D Senarai semua rentetan petikan dua yang didahului oleh $ dicetak pada standard
pengeluaran. Ini adalah rentetan yang tertakluk kepada terjemahan bahasa apabila
tempat semasa tidak C or POSIX. Ini membayangkan -n pilihan; tiada arahan akan
dilaksanakan.
[-+]O [shopt_option]
shopt_option adalah salah satu pilihan shell yang diterima oleh shopt terbina (lihat
SHELL BUILTIN PERINTAH di bawah). Jika shopt_option hadir, -O menetapkan nilai
pilihan itu; +O membatalkannya. Jika shopt_option tidak dibekalkan, nama dan
nilai pilihan shell yang diterima oleh shopt dicetak pada standard
pengeluaran. Jika pilihan doa adalah +O, output dipaparkan dalam format
yang boleh digunakan semula sebagai input.
-- A -- menandakan tamat pilihan dan melumpuhkan pemprosesan pilihan selanjutnya. mana-mana
hujah selepas -- dianggap sebagai nama fail dan hujah. Hujah daripada -
adalah bersamaan dengan --.

Bash juga mentafsir beberapa pilihan berbilang aksara. Pilihan ini mesti dipaparkan pada
baris arahan sebelum pilihan aksara tunggal untuk dikenali.

--penyahpepijat
Susun untuk profil penyahpepijat dilaksanakan sebelum cangkerang bermula. Hidupkan
mod penyahpepijatan lanjutan (lihat penerangan tentang extdebug pilihan untuk shopt
terbina di bawah).
--dump-po-strings
Bersamaan dengan -D, tetapi outputnya adalah dalam GNU gettext po (objek mudah alih) fail
format.
--buang-tali
Bersamaan dengan -D.
- membantu Paparkan mesej penggunaan pada output standard dan keluar dengan jayanya.
--init-file fail
--rcfile fail
Laksanakan arahan daripada fail bukannya fail pemulaan seluruh sistem
/etc/bash.bashrc dan fail permulaan peribadi standard ~ / .bashrc jika
shell adalah interaktif (lihat INVOKASI di bawah).

--log masuk
Bersamaan dengan -l.

--noediting
Jangan gunakan GNU garis baca perpustakaan untuk membaca baris arahan apabila shell adalah
interaktif.

--noprofile
Jangan baca sama ada fail permulaan seluruh sistem / etc / profil atau mana-mana peribadi
fail permulaan ~ / .bash_profile, ~/.bash_login, Atau ~ / .profil. Secara lalai,
menampar membaca fail ini apabila ia dipanggil sebagai shell log masuk (lihat INVOKASI di bawah).

--norc Jangan baca dan laksanakan fail permulaan seluruh sistem /etc/bash.bashrc and
fail permulaan peribadi ~ / .bashrc jika cangkerang itu interaktif. ini
pilihan dihidupkan secara lalai jika shell dipanggil sebagai sh.

--posix
Ubah tingkah laku menampar di mana operasi lalai berbeza daripada POSIX
standard untuk sepadan dengan standard (posix mod). Lihat SEE JUGA di bawah untuk rujukan
dokumen yang memperincikan cara mod posix mempengaruhi tingkah laku bash.

--terhad
Cangkang menjadi terhad (lihat TERHAD SHELL di bawah).

--verbose
Bersamaan dengan -v.

--versi
Tunjukkan maklumat versi untuk contoh ini menampar pada keluaran standard dan keluar
dengan jayanya.

HUJAH


Jika hujah kekal selepas pemprosesan pilihan, dan kedua-duanya tidak -c tidak juga -s pilihan telah
dibekalkan, hujah pertama diandaikan sebagai nama fail yang mengandungi shell
arahan. Jika menampar dipanggil dengan cara ini, $0 ditetapkan kepada nama fail, dan
parameter kedudukan ditetapkan kepada argumen yang tinggal. Bash membaca dan melaksanakan
arahan daripada fail ini, kemudian keluar. BashStatus keluar ialah status keluar yang terakhir
arahan yang dilaksanakan dalam skrip. Jika tiada arahan dilaksanakan, status keluar ialah 0. An
percubaan pertama dibuat untuk membuka fail dalam direktori semasa, dan, jika tiada fail ditemui,
kemudian shell mencari direktori dalam PATH untuk skrip.

INVOKASI


A log masuk shell ialah watak pertama bagi hujah sifar ialah a -, atau yang bermula dengan
yang --log masuk pilihan.

An interaktif shell adalah yang dimulakan tanpa hujah bukan pilihan dan tanpa -c pilihan
yang input dan ralat standardnya disambungkan ke terminal (seperti yang ditentukan oleh
isatty(3)), atau satu bermula dengan -i pilihan. PS1 ditetapkan dan $- termasuk i if menampar is
interaktif, membenarkan skrip shell atau fail permulaan untuk menguji keadaan ini.

Perenggan berikut menerangkan bagaimana menampar melaksanakan fail permulaannya. Jika mana-mana daripada
fail wujud tetapi tidak boleh dibaca, menampar melaporkan ralat. Tildes dikembangkan dalam nama fail
seperti yang diterangkan di bawah Tilde pengembangan dalam EXPANSION bawah seksyen ini.

Bila menampar digunakan sebagai shell log masuk interaktif, atau sebagai shell bukan interaktif dengan
--log masuk pilihan, ia mula-mula membaca dan melaksanakan arahan daripada fail / etc / profil, Jika
fail wujud. Selepas membaca fail itu, ia mencari ~ / .bash_profile, ~/.bash_login, dan
~ / .profil, dalam susunan itu, dan membaca serta melaksanakan perintah daripada yang pertama yang wujud
dan boleh dibaca. The --noprofile pilihan boleh digunakan apabila cangkerang mula menghalang
tingkah laku ini.

Apabila shell log masuk keluar, menampar membaca dan melaksanakan arahan daripada fail ~/.bash_logout,
jika ia wujud.

Apabila shell interaktif yang bukan shell log masuk dimulakan, menampar membaca dan melaksanakan
arahan dari /etc/bash.bashrc and ~ / .bashrc, jika fail ini wujud. Ini mungkin dihalang
dengan menggunakan --norc pilihan. The --rcfile fail pilihan akan memaksa menampar untuk membaca dan melaksanakan
arahan dari fail bukan /etc/bash.bashrc and ~ / .bashrc.

Bila menampar dimulakan secara tidak interaktif, untuk menjalankan skrip shell, sebagai contoh, ia mencari
pemboleh ubah BASH_ENV dalam persekitaran, mengembangkan nilainya jika ia muncul di sana, dan menggunakan
nilai dikembangkan sebagai nama fail untuk dibaca dan dilaksanakan. Bash berkelakuan seolah-olah
arahan berikut telah dilaksanakan:
jika [ -n "$BASH_ENV" ]; lepas tu . "$BASH_ENV"; fi
tetapi nilai PATH pembolehubah tidak digunakan untuk mencari nama fail.

If menampar dipanggil dengan nama sh, ia cuba meniru gelagat permulaan sejarah
versi sh sedekat mungkin, sambil mematuhi piawaian POSIX juga.
Apabila dipanggil sebagai shell log masuk interaktif, atau shell bukan interaktif dengan --log masuk
pilihan, ia mula-mula cuba membaca dan melaksanakan arahan daripada / etc / profil and ~ / .profil,
mengikut susunan itu. The --noprofile pilihan boleh digunakan untuk menghalang tingkah laku ini. Apabila diseru
sebagai shell interaktif dengan nama sh, menampar mencari pembolehubah ENV, mengembangkannya
nilai jika ia ditakrifkan, dan menggunakan nilai yang dikembangkan sebagai nama fail untuk membaca dan
laksanakan. Sejak shell dipanggil sebagai sh tidak cuba membaca dan melaksanakan arahan daripada
mana-mana fail permulaan lain, the --rcfile pilihan tidak mempunyai kesan. Cangkang bukan interaktif
dipanggil dengan nama sh tidak cuba membaca sebarang fail permulaan lain. Apabila diseru
as sh, menampar memasuki posix mod selepas fail permulaan dibaca.

Bila menampar dimulakan dalam posix mod, seperti dengan --posix pilihan baris arahan, ia berikut
standard POSIX untuk fail permulaan. Dalam mod ini, cengkerang interaktif mengembangkan ENV
pembolehubah dan arahan dibaca dan dilaksanakan daripada fail yang namanya dikembangkan
nilai. Tiada fail permulaan lain dibaca.

Bash cuba untuk menentukan bila ia sedang dijalankan dengan input standardnya disambungkan ke a
sambungan rangkaian, seperti apabila dilaksanakan oleh daemon shell jauh, biasanya rshd, Atau
daemon shell selamat SSHD. Jika menampar menentukan ia dijalankan dengan cara ini, ia berbunyi
dan melaksanakan arahan daripada ~ / .bashrc and ~ / .bashrc, jika fail ini wujud dan boleh dibaca.
Ia tidak akan melakukan ini jika dipanggil sebagai sh. Yang --norc pilihan boleh digunakan untuk menghalang ini
tingkah laku, dan --rcfile pilihan boleh digunakan untuk memaksa fail lain dibaca, tetapi
tidak rshd tidak SSHD secara amnya gunakan shell dengan pilihan tersebut atau benarkan pilihan tersebut
dinyatakan.

Jika shell dimulakan dengan id pengguna (kumpulan) berkesan tidak sama dengan pengguna sebenar
(kumpulan) id, dan -p pilihan tidak dibekalkan, tiada fail permulaan dibaca, fungsi shell
tidak diwarisi daripada alam sekitar, yang KERANG, BASHOPTS, CDPATH, dan GLOBIGNORE
pembolehubah, jika ia muncul dalam persekitaran, diabaikan, dan id pengguna yang berkesan ialah
ditetapkan kepada id pengguna sebenar. Sekiranya -p pilihan dibekalkan pada seruan, tingkah laku permulaan
adalah sama, tetapi id pengguna yang berkesan tidak ditetapkan semula.

DEFINISI


Takrifan berikut digunakan sepanjang seluruh dokumen ini.
kosong Ruang atau tab.
perkataan Urutan aksara yang dianggap sebagai satu unit oleh cangkerang. Juga dikenali sebagai a
token.
nama A perkataan hanya terdiri daripada aksara alfanumerik dan garis bawah, dan permulaan
dengan aksara abjad atau garis bawah. Juga disebut sebagai an pengecam.
metacharacter
Watak yang, apabila tidak disebut, memisahkan perkataan. Salah satu daripada yang berikut:
| & ; ( ) < > ruang tab
kawalan operator
A token yang menjalankan fungsi kawalan. Ia adalah salah satu daripada simbol berikut:
|| & && ; ;; ( ) | |&

RIZAB PERKATAAN


Dihadkan perkataan ialah perkataan yang mempunyai makna yang istimewa pada tempurung. Perkataan berikut
diiktiraf sebagai terpelihara apabila tidak disebut dan sama ada perkataan pertama perintah mudah
(Lihat SHELL GRAMMAR di bawah) atau perkataan ketiga a kes or Untuk arahan:

! kes coproc do dilakukan elif lagi bahawa C fi Untuk fungsi if in pilih kemudian sehingga manakala { }
masa [[ ]]

SHELL GRAMMAR


Mudah arahan
A mudah arahan ialah urutan tugasan pembolehubah pilihan diikuti oleh kosong-
perkataan yang dipisahkan dan ubah hala, dan ditamatkan oleh a kawalan operator. Perkataan pertama
menentukan arahan untuk dilaksanakan, dan diluluskan sebagai hujah sifar. Kata-kata yang tinggal
diluluskan sebagai hujah kepada arahan yang dipanggil.

Nilai pulangan a mudah arahan ialah status keluarnya, atau 128+n jika perintah itu
ditamatkan oleh isyarat n.

Talian Paip
A saluran paip ialah urutan satu atau lebih arahan yang dipisahkan oleh salah satu pengendali kawalan
| or |&. Format untuk saluran paip ialah:

[masa [-p]] [ ! ] arahan [ [||&] perintah2 ... ]

Keluaran standard bagi arahan disambungkan melalui paip ke input standard bagi perintah2.
Sambungan ini dilakukan sebelum sebarang ubah hala yang ditentukan oleh arahan (lihat
PENGALIHAN di bawah). Jika |& digunakan, arahanralat standard, sebagai tambahan kepada standardnya
output, disambungkan kepada perintah2input standard melalui paip; ia adalah singkatan untuk
2> & 1 |. Pengalihan tersirat ralat piawai kepada keluaran piawai ini ialah
dilakukan selepas sebarang ubah hala yang ditentukan oleh arahan.

Status pemulangan saluran paip ialah status keluar perintah terakhir, melainkan jika
paip gagal pilihan didayakan. Jika paip gagal didayakan, status pemulangan saluran paip ialah
nilai perintah terakhir (paling kanan) untuk keluar dengan status bukan sifar, atau sifar jika semua
arahan keluar dengan jayanya. Jika perkataan terpelihara ! mendahului saluran paip, status keluar
daripada saluran paip itu ialah penafian logik status keluar seperti yang diterangkan di atas. cangkerang
menunggu semua arahan dalam saluran paip ditamatkan sebelum mengembalikan nilai.

Jika masa perkataan terpelihara mendahului saluran paip, yang telah berlalu serta masa pengguna dan sistem
digunakan oleh pelaksanaannya dilaporkan apabila saluran paip ditamatkan. The -p pilihan
menukar format output kepada yang ditentukan oleh POSIX. Apabila cangkerang masuk posix mod, Ia
tidak mengenali masa sebagai perkataan terpelihara jika token seterusnya bermula dengan `-'. The
FORMAT MASA pembolehubah boleh ditetapkan kepada rentetan format yang menentukan cara pemasaan
maklumat hendaklah dipaparkan; lihat penerangan tentang FORMAT MASA di bawah Shell Pembolehubah
di bawah.

Apabila cangkerang masuk posix mod, masa boleh diikuti dengan baris baharu. Dalam kes ini,
shell memaparkan jumlah masa pengguna dan sistem yang digunakan oleh shell dan anak-anaknya. The
FORMAT MASA pembolehubah boleh digunakan untuk menentukan format maklumat masa.

Setiap arahan dalam saluran paip dilaksanakan sebagai proses yang berasingan (iaitu, dalam subkulit).

senarai
A senarai ialah urutan satu atau lebih saluran paip yang dipisahkan oleh salah satu operator ;, &, &&,
or ||, dan ditamatkan secara pilihan oleh salah satu daripada ;, &, Atau .

Daripada pengendali senarai ini, && and || mempunyai keutamaan yang sama, diikuti dengan ; and &, yang ada
keutamaan yang sama.

Urutan satu atau lebih baris baharu mungkin muncul dalam a senarai bukannya koma bertitik untuk menghadkan
menyuruh.

Jika arahan ditamatkan oleh pengendali kawalan &, shell melaksanakan arahan dalam
yang latar belakang dalam subkulit. Cangkang tidak menunggu arahan selesai, dan
status pulangan ialah 0. Perintah dipisahkan oleh a ; dilaksanakan secara berurutan; cangkerang menunggu
untuk setiap arahan ditamatkan secara bergilir-gilir. Status pemulangan ialah status keluar yang terakhir
perintah dilaksanakan.

Senarai DAN dan ATAU ialah jujukan satu daripada lebih banyak saluran paip yang dipisahkan oleh && and || kawalan
pengendali, masing-masing. Senarai DAN dan ATAU dilaksanakan dengan persekutuan kiri. Sebuah DAN
senarai mempunyai borang

perintah1 && perintah2

perintah2 dilaksanakan jika, dan hanya jika, perintah1 mengembalikan status keluar sifar.

Senarai ATAU mempunyai borang

perintah1 || perintah2

perintah2 dilaksanakan jika dan hanya jika perintah1 mengembalikan status keluar bukan sifar. Pulangannya
status senarai DAN dan ATAU ialah status keluar perintah terakhir yang dilaksanakan dalam senarai.

Kompaun arahan
A sebatian arahan adalah salah satu daripada yang berikut. Dalam kebanyakan kes a senarai dalam arahan
perihalan boleh dipisahkan daripada perintah yang lain oleh satu atau lebih baris baharu, dan boleh
diikuti dengan baris baharu menggantikan koma bertitik.

(senarai) senarai dilaksanakan dalam persekitaran subkulit (lihat COMMAND PERLAKSANAAN PERSEKITARAN
di bawah). Tugasan boleh ubah dan arahan terbina dalam yang mempengaruhi shell
persekitaran tidak kekal berkuat kuasa selepas arahan selesai. Status pemulangan
ialah status keluar daripada senarai.

{ senarai; }
senarai hanya dilaksanakan dalam persekitaran shell semasa. senarai mesti ditamatkan
dengan baris baharu atau koma bernoktah. Ini dikenali sebagai a kumpulan arahan. Status pemulangan
ialah status keluar daripada senarai. Perhatikan bahawa tidak seperti metacharacters ( and ), { and }
adalah terpelihara perkataan dan mesti berlaku di mana perkataan terpelihara dibenarkan
dikenali. Oleh kerana mereka tidak menyebabkan putus perkataan, mereka mesti dipisahkan daripada senarai
oleh ruang putih atau metacharacter shell lain.

((ungkapan))
. ungkapan dinilai mengikut peraturan yang diterangkan di bawah ARITMETIK
PENILAIAN. Jika nilai ungkapan bukan sifar, status pulangan ialah 0;
jika tidak, status pulangan ialah 1. Ini betul-betul bersamaan dengan biarkan "ungkapan".

[[ ungkapan ]]
Kembalikan status 0 atau 1 bergantung pada penilaian ungkapan bersyarat
ungkapan. Ungkapan terdiri daripada asas yang diterangkan di bawah
SYARAT EKSPRESI. Pemisahan perkataan dan pengembangan nama laluan tidak dilakukan
pada perkataan antara [[ and ]]; pengembangan tilde, parameter dan pembolehubah
pengembangan, pengembangan aritmetik, penggantian perintah, penggantian proses, dan
penyingkiran sebut harga dilakukan. Pengendali bersyarat seperti -f mesti tidak dipetik ke
diiktiraf sebagai sekolah rendah.

Apabila digunakan dengan [[, yang < and > operator menyusun leksikografi menggunakan arus
tempat.

Lihat penerangan tentang ujian arahan builtin (bahagian SHELL BUILTIN COMMANDS di bawah) untuk
pengendalian parameter (iaitu parameter yang hilang).

Apabila == and != operator digunakan, rentetan di sebelah kanan operator ialah
dianggap sebagai corak dan dipadankan mengikut peraturan yang diterangkan di bawah corak
Pemadanan, seolah-olah extglob pilihan shell telah didayakan. The = operator adalah bersamaan dengan
==. Jika pilihan shell nocasematch didayakan, perlawanan dilakukan tanpa mengambil kira
kes aksara abjad. Nilai pulangan ialah 0 jika rentetan sepadan (==) Atau
tidak sepadan (!=) corak, dan 1 sebaliknya. Mana-mana bahagian corak boleh dipetik
untuk memaksa bahagian yang dipetik dipadankan sebagai rentetan.

Pengendali binari tambahan, =~, tersedia, dengan keutamaan yang sama seperti == and !=.
Apabila ia digunakan, rentetan di sebelah kanan pengendali dianggap sebagai tetap lanjutan
ungkapan dan dipadankan dengan sewajarnya (seperti dalam regex(3)). Nilai pulangan ialah 0 jika rentetan
sepadan dengan corak, dan 1 sebaliknya. Jika ungkapan biasa adalah secara sintaksis
tidak betul, nilai pulangan ungkapan bersyarat ialah 2. Jika pilihan shell
nocasematch didayakan, perlawanan dilakukan tanpa mengambil kira kes abjad
watak. Mana-mana bahagian corak boleh dipetik untuk memaksa bahagian yang dipetik menjadi
dipadankan sebagai rentetan. Ungkapan kurungan dalam ungkapan biasa mesti dirawat
berhati-hati, kerana aksara petikan biasa kehilangan maknanya antara kurungan. Sekiranya
corak disimpan dalam pembolehubah shell, memetik pengembangan pembolehubah memaksa keseluruhannya
corak untuk dipadankan sebagai rentetan. Subrentetan dipadankan dengan subungkapan dalam kurungan
dalam ungkapan biasa disimpan dalam pembolehubah tatasusunan BASH_REMATCH. unsur
of BASH_REMATCH dengan indeks 0 ialah bahagian rentetan yang sepadan dengan keseluruhan biasa
ungkapan. Unsur daripada BASH_REMATCH dengan indeks n ialah bahagian rentetan
sepadan dengan nsubungkapan dalam kurungan ke.

Ungkapan boleh digabungkan menggunakan operator berikut, disenaraikan dalam susunan menurun bagi
keutamaan:

( ungkapan )
Mengembalikan nilai ungkapan. Ini boleh digunakan untuk mengatasi perkara biasa
keutamaan pengendali.
! ungkapan
Benar jika ungkapan adalah palsu.
ungkapan1 && ungkapan2
Benar jika kedua-duanya ungkapan1 and ungkapan2 adalah benar.
ungkapan1 || ungkapan2
Benar jika sama ada ungkapan1 or ungkapan2 betul.

. && and || operator tidak menilai ungkapan2 jika nilai daripada ungkapan1 is
mencukupi untuk menentukan nilai pulangan keseluruhan ungkapan bersyarat.

Untuk nama [ [ in [ perkataan ... ] ] ; ] do senarai ; dilakukan
Senarai perkataan berikut in dikembangkan, menghasilkan senarai item. The
berubah-ubah nama ditetapkan kepada setiap elemen senarai ini secara bergilir-gilir, dan senarai dilaksanakan
setiap masa. Sekiranya in perkataan adalah ditinggalkan, yang Untuk perintah dilaksanakan senarai sekali untuk setiap satu
parameter kedudukan yang ditetapkan (lihat PARAMETER di bawah). Status pemulangan ialah
status keluar perintah terakhir yang dilaksanakan. Jika pengembangan item
berikutan in menghasilkan senarai kosong, tiada arahan dilaksanakan, dan pulangan
status ialah 0.

Untuk (( expr1 ; expr2 ; expr3 )); do senarai ; dilakukan
Pertama, ungkapan aritmetik expr1 dinilai mengikut peraturan
diterangkan di bawah ARITMETIK PENILAIAN. Ungkapan aritmetik expr2 is
kemudian dinilai berulang kali sehingga nilainya menjadi sifar. Setiap masa expr2 menilai untuk
nilai bukan sifar, senarai dilaksanakan dan ungkapan aritmetik expr3 is
dinilai. Jika mana-mana ungkapan ditinggalkan, ia berkelakuan seolah-olah ia menilai kepada 1. The
nilai pulangan ialah status keluar perintah terakhir masuk senarai yang dilaksanakan, atau
palsu jika mana-mana ungkapan tidak sah.

pilih nama [ in perkataan ] ; do senarai ; dilakukan
Senarai perkataan berikut in dikembangkan, menghasilkan senarai item. Set daripada
perkataan yang dikembangkan dicetak pada ralat standard, setiap satu didahului dengan nombor. Sekiranya
in perkataan ditinggalkan, parameter kedudukan dicetak (lihat PARAMETER di bawah).
. PS3 gesaan kemudiannya dipaparkan dan satu baris dibaca daripada input standard. Sekiranya
baris terdiri daripada nombor yang sepadan dengan salah satu perkataan yang dipaparkan, kemudian
nilai nama ditetapkan kepada perkataan itu. Jika baris kosong, perkataan dan gesaan adalah
dipaparkan semula. Jika EOF dibaca, arahan selesai. Sebarang nilai lain dibaca
sebab-sebab nama untuk ditetapkan kepada null. Baris yang dibaca disimpan dalam pembolehubah MEMBUAT. Yang
senarai dilaksanakan selepas setiap pemilihan sehingga a memecahkan arahan dilaksanakan. Jalan keluar
status pilih ialah status keluar bagi perintah terakhir yang dilaksanakan dalam senarai, atau sifar
jika tiada arahan dilaksanakan.

kes perkataan in [ [(] pola [ | pola ] ... ) senarai ;; ] ... bahawa C
A kes arahan mula-mula mengembang perkataan, dan cuba memadankannya dengan setiap satu pola in
giliran, menggunakan peraturan padanan yang sama seperti pengembangan nama laluan (lihat Nama laluan
pengembangan di bawah). The perkataan dikembangkan menggunakan pengembangan tilde, parameter dan
pengembangan pembolehubah, penggantian aritmetik, penggantian arahan, proses
penggantian dan penyingkiran sebut harga. setiap satu pola diperiksa dikembangkan menggunakan tilde
pengembangan, pengembangan parameter dan pembolehubah, penggantian aritmetik, perintah
penggantian, dan penggantian proses. Jika pilihan shell nocasematch is
didayakan, perlawanan dilakukan tanpa mengambil kira kes abjad
watak. Apabila perlawanan ditemui, sepadan senarai dilaksanakan. Sekiranya ;;
operator digunakan, tiada padanan berikutnya dicuba selepas corak pertama
perlawanan. menggunakan ;& Sebagai ganti ;; menyebabkan pelaksanaan diteruskan dengan senarai
dikaitkan dengan set corak seterusnya. menggunakan ;;& Sebagai ganti ;; menyebabkannya
shell untuk menguji senarai corak seterusnya dalam pernyataan, jika ada, dan laksanakan mana-mana
dikaitkan senarai pada perlawanan yang berjaya. Status keluar adalah sifar jika tiada corak
perlawanan. Jika tidak, ia adalah status keluar bagi perintah terakhir yang dilaksanakan senarai.

if senarai; kemudian senarai; [ elif senarai; kemudian senarai; ] ... [ lagi senarai; ] fi
. if senarai dilaksanakan. Jika status keluarnya adalah sifar, kemudian senarai dilaksanakan.
Jika tidak, masing-masing elif senarai dilaksanakan secara bergilir, dan jika status keluarnya adalah sifar, maka
sama kemudian senarai dilaksanakan dan arahan selesai. Jika tidak, yang lagi
senarai dilaksanakan, jika ada. Status keluar ialah status keluar yang terakhir
perintah dilaksanakan, atau sifar jika tiada syarat yang diuji benar.

manakala senarai-1; do senarai-2; dilakukan
sehingga senarai-1; do senarai-2; dilakukan
. manakala arahan secara berterusan melaksanakan senarai senarai-2 selagi perintah terakhir
dalam senarai senarai-1 mengembalikan status keluar sifar. The sehingga perintah adalah sama
kepada manakala perintah, kecuali ujian itu dinafikan; senarai-2 dilaksanakan selama ini
sebagai arahan terakhir dalam senarai-1 mengembalikan status keluar bukan sifar. Status keluar daripada
yang manakala and sehingga arahan ialah status keluar dari perintah terakhir yang dilaksanakan
senarai-2, atau sifar jika tiada yang dilaksanakan.

Coprocesses
A proses bersama ialah arahan shell didahului oleh coproc perkataan terpelihara. Proses bersama ialah
dilaksanakan secara tak segerak dalam subkulit, seolah-olah arahan telah ditamatkan dengan &
pengendali kawalan, dengan paip dua hala diwujudkan antara cengkerang pelaksana dan
proses bersama.

Format untuk coprocess ialah:

coproc [NAMA] arahan [pelencongan]

Ini mencipta proses bersama dinamakan NAMA. Jika NAMA tidak dibekalkan, nama lalai ialah COPROC.
NAMA mesti tidak dibekalkan jika arahan ialah mudah arahan (lihat di atas); jika tidak, ia adalah
ditafsirkan sebagai perkataan pertama perintah mudah. Apabila coprocess dilaksanakan, the
shell mencipta pembolehubah tatasusunan (lihat Arrays di bawah) dinamakan NAMA dalam konteks
melaksanakan shell. Keluaran standard bagi arahan disambungkan melalui paip ke fail
deskriptor dalam shell pelaksana, dan deskriptor fail itu diberikan kepada NAMA[0]. The
input standard daripada arahan disambungkan melalui paip ke deskriptor fail dalam pelaksana
shell, dan deskriptor fail itu diberikan kepada NAMA[1]. Paip ini ditubuhkan sebelum ini
sebarang ubah hala yang ditentukan oleh arahan (lihat PENGALIHAN di bawah). Deskriptor fail
boleh digunakan sebagai hujah untuk perintah shell dan ubah hala menggunakan perkataan standard
pengembangan. Deskriptor fail tidak tersedia dalam subkulit. ID proses bagi
shell yang dihasilkan untuk melaksanakan coprocess tersedia sebagai nilai pembolehubah NAMA_PID.
. tunggu arahan terbina boleh digunakan untuk menunggu proses bersama ditamatkan.

Oleh kerana coprocess dicipta sebagai arahan tak segerak, the coproc perintah selalu
mengembalikan kejayaan. Status pemulangan bagi proses bersama ialah status keluar bagi arahan.

Shell fungsi Definisi
Fungsi shell ialah objek yang dipanggil seperti arahan mudah dan melaksanakan kompaun
arahan dengan set parameter kedudukan baharu. Fungsi Shell diisytiharkan seperti berikut:

nama () kompaun-perintah [penghalaan semula]
fungsi nama [()] kompaun-perintah [penghalaan semula]
Ini mentakrifkan fungsi bernama nama. Perkataan terpelihara fungsi adalah pilihan. Jika
yang fungsi perkataan terpelihara dibekalkan, kurungan adalah pilihan. The badan of
fungsinya ialah perintah kompaun kompaun-perintah (Lihat Kompaun arahan
di atas). Perintah itu biasanya a senarai daripada perintah antara { dan }, tetapi mungkin ada
arahan yang disenaraikan di bawah Kompaun arahan atas. kompaun-perintah dilaksanakan
apabila nama dinyatakan sebagai nama perintah mudah. Apabila masuk posix mod,
nama mungkin bukan nama salah satu POSIX khas binaan. Sebarang ubah hala
(Lihat PENGALIHAN di bawah) dinyatakan apabila fungsi ditakrifkan dilakukan apabila
fungsi dilaksanakan. Status keluar definisi fungsi adalah sifar melainkan a
ralat sintaks berlaku atau fungsi baca sahaja dengan nama yang sama sudah wujud. Bila
dilaksanakan, status keluar fungsi ialah status keluar perintah terakhir
dilaksanakan dalam badan. (Lihat FUNGSI di bawah.)

KOMENTAR


Dalam shell bukan interaktif, atau shell interaktif di mana ulasan_interaktif
pilihan untuk shopt builtin didayakan (lihat SHELL BUILTIN PERINTAH di bawah), satu perkataan
bermula dengan # menyebabkan perkataan itu dan semua aksara yang tinggal pada baris itu diabaikan.
Cangkang interaktif tanpa ulasan_interaktif pilihan didayakan tidak membenarkan
komen. The ulasan_interaktif pilihan dihidupkan secara lalai dalam cengkerang interaktif.

SEBUTHARGA


Memetik digunakan untuk membuang makna khas aksara atau perkataan tertentu pada cangkang.
Petikan boleh digunakan untuk melumpuhkan layanan khas untuk watak istimewa, untuk mencegah
perkataan terpelihara daripada diiktiraf sebagai sedemikian, dan untuk mengelakkan pengembangan parameter.

Setiap satu daripada metakarakter disenaraikan di atas di bawah DEFINISI mempunyai makna khusus pada cangkang
dan mesti dipetik jika ia mewakili dirinya sendiri.

Apabila kemudahan pengembangan sejarah arahan sedang digunakan (lihat SEJARAH EXPANSION
di bawah), yang sejarah pengembangan watak, biasanya !, mesti dipetik untuk mengelakkan sejarah
pengembangan.

Terdapat tiga mekanisme petikan: the melarikan diri watak, petikan tunggal dan berganda
petikan.

Tanda garis miring ke belakang tidak disebut (\) adalah melarikan diri watak. Ia mengekalkan nilai literal
watak seterusnya yang mengikuti, kecuali . Sekiranya \sepasang
muncul, dan garis miring ke belakang tidak dipetik sendiri, iaitu \dianggap sebagai garis
kesinambungan (iaitu, ia dialih keluar daripada aliran input dan diabaikan dengan berkesan).

Melampirkan aksara dalam petikan tunggal mengekalkan nilai literal setiap aksara dalam
petikan tersebut. Petikan tunggal mungkin tidak berlaku antara petikan tunggal, walaupun didahului dengan a
garis miring ke belakang.

Melampirkan aksara dalam petikan berganda mengekalkan nilai literal semua aksara dalam
petikan, kecuali $, `, \, dan, apabila pengembangan sejarah didayakan, !. Yang
aksara $ and ` mengekalkan makna istimewanya dalam petikan berganda. Serangan ke belakang
mengekalkan makna istimewanya hanya apabila diikuti oleh salah satu daripada aksara berikut: $, `,
", \, Atau . Petikan berganda boleh dipetik dalam petikan berganda dengan mendahuluinya
dengan garis miring ke belakang. Jika didayakan, pengembangan sejarah akan dilakukan melainkan a ! muncul
dalam petikan berganda dilarikan menggunakan garis miring ke belakang. Serangan ke belakang sebelum ! tidak
dikeluarkan.

Parameter khas * and @ mempunyai makna istimewa apabila dalam petikan berganda (lihat PARAMETER
di bawah).

Perkataan bentuk $'rentetan' dilayan secara istimewa. Perkataan mengembang kepada rentetan, Dengan
aksara lari segaris ke belakang digantikan seperti yang ditentukan oleh standard ANSI C. Sebak ke belakang
urutan pelarian, jika ada, dinyahkodkan seperti berikut:
\a amaran (loceng)
\b backspace
\e
\E watak melarikan diri
\f suapan bentuk
\n baris baru
\r perjalanan balik kereta
\t tab mendatar
\v tab menegak
\\ garis belakang
\' petikan tunggal
\" petikan berganda
\nnn aksara lapan bit yang nilainya ialah nilai perlapanan nnn (satu hingga tiga
digit)
\xHH aksara lapan-bit yang nilainya ialah nilai perenambelasan HH (satu atau dua
digit hex)
\uHHHH aksara Unicode (ISO/IEC 10646) yang nilainya ialah nilai perenambelasan
HHHH (satu hingga empat digit heks)
\UHHHHHHH
aksara Unicode (ISO/IEC 10646) yang nilainya ialah nilai perenambelasan
HHHHHHH (satu hingga lapan digit heks)
\cx kawalan-x watak

Keputusan yang diperluaskan adalah petikan tunggal, seolah-olah tanda dolar tidak hadir.

Rentetan petikan dua didahului dengan tanda dolar ($"rentetan") akan menyebabkan rentetan menjadi
diterjemahkan mengikut tempat semasa. Jika tempat semasa ialah C or POSIX, yang
tanda dolar diabaikan. Jika rentetan diterjemahkan dan diganti, penggantiannya ialah
dipetik dua kali.

PARAMETER


A parameter ialah entiti yang menyimpan nilai. Ia boleh menjadi a nama, nombor atau salah satu daripada
aksara khas yang disenaraikan di bawah khas Parameter. A berubah-ubah adalah parameter
dilambangkan dengan a nama. Pembolehubah mempunyai a nilai dan sifar atau lebih sifat-sifat. Atribut ialah
ditugaskan menggunakan mengisytiharkan arahan terbina (lihat mengisytiharkan bawah dalam SHELL BUILTIN PERINTAH).

Parameter ditetapkan jika ia telah diberikan nilai. Rentetan nol ialah nilai yang sah.
Sebaik sahaja pembolehubah ditetapkan, ia mungkin tidak ditetapkan hanya dengan menggunakan pembolehubah tidak tenteram arahan terbina (lihat SHELL
BUILTIN PERINTAH di bawah).

A berubah-ubah boleh ditugaskan melalui pernyataan borang

nama=[nilai]

If nilai tidak diberikan, pembolehubah diberikan rentetan nol. Semua nilai menjalani tilde
pengembangan, pengembangan parameter dan pembolehubah, penggantian perintah, pengembangan aritmetik,
dan penyingkiran petikan (lihat EXPANSION di bawah). Jika pembolehubah mempunyainya integer set atribut,
kemudian nilai dinilai sebagai ungkapan aritmetik walaupun pengembangan $((...)) tidak
digunakan (lihat Aritmetik pengembangan di bawah). Pemisahan perkataan tidak dilakukan, dengan
pengecualian dari "$@" seperti yang dijelaskan di bawah khas Parameter. Peluasan nama laluan bukan
dilakukan. Pernyataan tugasan juga boleh muncul sebagai hujah kepada alias, mengisytiharkan,
set taip, mengeksport, baca sahaja, dan tempatan arahan terbina. Apabila masuk posix mod, binaan ini
mungkin muncul dalam arahan selepas satu atau lebih contoh arahan dibina dan dikekalkan
sifat penyata tugasan ini.

Dalam konteks di mana pernyataan tugasan memberikan nilai kepada pembolehubah shell atau
indeks tatasusunan, operator += boleh digunakan untuk menambah atau menambah pembolehubah sebelumnya
nilai. Apabila += digunakan pada pembolehubah yang integer atribut telah ditetapkan,
nilai dinilai sebagai ungkapan aritmetik dan ditambah kepada nilai semasa pembolehubah,
yang juga dinilai. Apabila += digunakan pada pembolehubah tatasusunan menggunakan kompaun
tugasan (lihat Arrays di bawah), nilai pembolehubah tidak ditetapkan (seperti semasa menggunakan =),
dan nilai baharu dilampirkan pada tatasusunan bermula pada satu lebih besar daripada maksimum tatasusunan
indeks (untuk tatasusunan diindeks) atau ditambah sebagai pasangan nilai kunci tambahan dalam tatasusunan bersekutu.
Apabila digunakan pada pembolehubah bernilai rentetan, nilai dikembangkan dan dilampirkan pada pembolehubah
nilai.

Pembolehubah boleh diberikan nameref atribut menggunakan -n pilihan untuk mengisytiharkan or
tempatan arahan terbina (lihat penerangan tentang mengisytiharkan and tempatan di bawah) untuk mencipta a
nameref, atau rujukan kepada pembolehubah lain. Ini membolehkan pembolehubah dimanipulasi
secara tidak langsung. Setiap kali pembolehubah nameref dirujuk atau ditugaskan kepada, operasi adalah
sebenarnya dilakukan pada pembolehubah yang ditentukan oleh nilai pembolehubah nameref. Sebuah nameref
biasanya digunakan dalam fungsi shell untuk merujuk kepada pembolehubah yang namanya diluluskan sebagai an
hujah kepada fungsi. Sebagai contoh, jika nama pembolehubah dihantar ke fungsi shell
sebagai hujah pertamanya, berlari
isytiharkan -n ref=$1
di dalam fungsi mencipta pembolehubah nameref ref yang nilainya ialah nama pembolehubah yang diluluskan
sebagai hujah pertama. Rujukan dan tugasan kepada ref dianggap sebagai rujukan dan
tugasan kepada pembolehubah yang namanya telah diluluskan sebagai $1. Jika pembolehubah kawalan dalam a Untuk
gelung mempunyai atribut nameref, senarai perkataan boleh menjadi senarai pembolehubah shell, dan a
rujukan nama akan diwujudkan untuk setiap perkataan dalam senarai, seterusnya, apabila gelung itu
dilaksanakan. Pembolehubah tatasusunan tidak boleh diberikan -n atribut. Walau bagaimanapun, pembolehubah nameref
boleh merujuk pembolehubah tatasusunan dan pembolehubah tatasusunan subskrip. Namerefs boleh dinyahtetapkan
menggunakan -n pilihan untuk tidak tenteram terbina. Jika tidak, jika tidak tenteram dilaksanakan dengan nama
daripada pembolehubah nameref sebagai hujah, pembolehubah yang dirujuk oleh pembolehubah nameref akan
tidak ditetapkan.

Kedudukan Parameter
A kedudukannya parameter ialah parameter yang dilambangkan dengan satu atau lebih digit, selain daripada tunggal
digit 0. Parameter kedudukan ditetapkan daripada hujah shell apabila ia
dipanggil, dan boleh ditugaskan semula menggunakan menetapkan arahan terbina. Parameter kedudukan mungkin
tidak ditugaskan dengan penyata tugasan. Parameter kedudukan adalah buat sementara waktu
diganti apabila fungsi shell dilaksanakan (lihat FUNGSI di bawah).

Apabila parameter kedudukan yang terdiri daripada lebih daripada satu digit dikembangkan, ia mestilah
disertakan dalam pendakap (lihat EXPANSION di bawah).

khas Parameter
Cangkang merawat beberapa parameter secara khusus. Parameter ini hanya boleh dirujuk;
penugasan kepada mereka tidak dibenarkan.
* Berkembang kepada parameter kedudukan, bermula dari satu. Apabila pengembangan tidak
dalam petikan berganda, setiap parameter kedudukan mengembang kepada perkataan yang berasingan. Dalam
konteks di mana ia dilakukan, perkataan tersebut tertakluk kepada pemisahan perkataan selanjutnya
dan pengembangan nama laluan. Apabila pengembangan berlaku dalam petikan berganda, ia mengembang
kepada satu perkataan dengan nilai setiap parameter yang dipisahkan oleh aksara pertama
daripada IFS pembolehubah khas. Itu dia, "$*"bersamaan dengan"$1c$2c...", di mana c
ialah watak pertama bagi nilai IFS pembolehubah. Jika IFS tidak ditetapkan, itu
parameter dipisahkan oleh ruang. Jika IFS adalah nol, parameter dicantumkan
tanpa campur tangan pemisah.
@ Berkembang kepada parameter kedudukan, bermula dari satu. Apabila pengembangan berlaku
dalam petikan berganda, setiap parameter berkembang kepada perkataan yang berasingan. Itu dia, "$@" ialah
bersamaan dengan "$1""$2" ... Jika pengembangan petikan dua kali berlaku dalam satu perkataan,
pengembangan parameter pertama dicantumkan dengan bahagian permulaan
perkataan asal, dan pengembangan parameter terakhir digabungkan dengan bahagian terakhir
daripada perkataan asal. Apabila tiada parameter kedudukan, "$@"dan $@ mengembangkan
kepada tiada (iaitu, ia dikeluarkan).
# Berkembang kepada bilangan parameter kedudukan dalam perpuluhan.
? Berkembang kepada status keluar bagi saluran paip latar depan yang paling baru dilaksanakan.
- Berkembang kepada bendera pilihan semasa seperti yang dinyatakan semasa seruan, oleh menetapkan
arahan terbina, atau yang ditetapkan oleh shell itu sendiri (seperti -i pilihan).
$ Berkembang kepada ID proses shell. Dalam subkulit () ia mengembang ke
ID proses shell semasa, bukan subkulit.
! Berkembang kepada ID proses kerja yang paling baru diletakkan di latar belakang,
sama ada dilaksanakan sebagai arahan tak segerak atau menggunakan bg terbina (lihat JOB
KAWALAN di bawah).
0 Berkembang kepada nama shell atau skrip shell. Ini ditetapkan pada shell
permulaan. Jika menampar dipanggil dengan fail arahan, $0 ditetapkan kepada nama
daripada fail itu. Jika menampar dimulakan dengan -c pilihan, maka $0 ditetapkan kepada yang pertama
hujah selepas rentetan yang akan dilaksanakan, jika ada. Jika tidak, ia ditetapkan
kepada nama fail yang digunakan untuk memanggil menampar, seperti yang diberikan oleh hujah sifar.
_ Pada permulaan shell, tetapkan kepada nama laluan mutlak yang digunakan untuk memanggil shell atau shell
skrip sedang dilaksanakan seperti yang diluluskan dalam persekitaran atau senarai argumen. Selepas itu,
berkembang ke hujah terakhir kepada arahan sebelumnya, selepas pengembangan. Juga ditetapkan kepada
nama laluan penuh yang digunakan untuk memanggil setiap arahan yang dilaksanakan dan diletakkan dalam
persekitaran yang dieksport ke arahan itu. Apabila menyemak mel, parameter ini memegang
nama fail mel yang sedang disemak.

Shell Pembolehubah
Pembolehubah berikut ditetapkan oleh shell:

BASH Berkembang kepada nama fail penuh yang digunakan untuk menggunakan contoh ini menampar.
BASHOPTS
Senarai pilihan shell yang didayakan yang dipisahkan bertindih. Setiap perkataan dalam senarai adalah sah
hujah untuk -s pilihan untuk shopt arahan terbina (lihat SHELL BUILTIN PERINTAH
di bawah). Pilihan yang muncul dalam BASHOPTS adakah mereka dilaporkan sebagai on by shopt. Jika
pembolehubah ini berada dalam persekitaran apabila menampar bermula, setiap pilihan shell dalam
list akan didayakan sebelum membaca sebarang fail permulaan. Pembolehubah ini adalah baca sahaja.
BASHPID
Berkembang kepada ID proses semasa menampar proses. Ini berbeza dengan $$ di bawah
keadaan tertentu, seperti subkulit yang tidak memerlukan menampar menjadi semula
dimulakan.
BASH_ALIASES
Pembolehubah tatasusunan bersekutu yang ahlinya sepadan dengan senarai dalaman
alias seperti yang dikekalkan oleh alias terbina. Elemen yang ditambahkan pada tatasusunan ini muncul dalam
senarai alias; elemen tatasusunan yang tidak ditetapkan menyebabkan alias dialih keluar daripada alias
senarai.
BASH_ARGC
Pembolehubah tatasusunan yang nilainya ialah bilangan parameter dalam setiap bingkai
semasa menampar timbunan panggilan pelaksanaan. Bilangan parameter kepada arus
subrutin (fungsi shell atau skrip dilaksanakan dengan . or sumber) berada di bahagian atas
timbunan itu. Apabila subrutin dilaksanakan, bilangan parameter yang diluluskan ialah
ditolak ke BASH_ARGC. Set cangkerang BASH_ARGC hanya apabila dalam penyahpepijatan lanjutan
mod (lihat penerangan tentang extdebug pilihan untuk shopt terbina di bawah)
BASH_ARGV
Pembolehubah tatasusunan yang mengandungi semua parameter dalam semasa menampar pelaksanaan
timbunan panggilan. Parameter akhir panggilan subrutin terakhir adalah di bahagian atas
timbunan; parameter pertama panggilan awal adalah di bahagian bawah. Apabila subrutin
dilaksanakan, parameter yang dibekalkan ditolak ke atas BASH_ARGV. Set cangkerang
BASH_ARGV hanya apabila dalam mod nyahpepijat lanjutan (lihat perihalan extdebug
pilihan untuk shopt terbina di bawah)
BASH_CMDS
Pembolehubah tatasusunan bersekutu yang ahlinya sepadan dengan jadual cincang dalaman
arahan seperti yang dikekalkan oleh hash terbina. Elemen yang ditambahkan pada tatasusunan ini muncul
dalam jadual hash; elemen tatasusunan yang tidak ditetapkan menyebabkan arahan dialih keluar daripada
jadual hash.
BASH_COMMAND
Perintah sedang dilaksanakan atau akan dilaksanakan, melainkan shell sedang
melaksanakan perintah sebagai hasil perangkap, dalam hal ini perintah itu
melaksanakan pada masa perangkap.
BASH_EXECUTION_STRING
Hujah arahan kepada -c pilihan doa.
BASH_LINENO
Pembolehubah tatasusunan yang ahlinya ialah nombor baris dalam fail sumber di mana setiap satu
ahli yang sepadan FUNCNAME telah dipanggil. ${BASH_LINENO[$i]} adalah garis
nombor dalam fail sumber (${BASH_SOURCE[$i+1]}) di mana ${FUNCNAME[$i]} dipanggil
(Atau ${BASH_LINENO[$i-1]} jika dirujuk dalam fungsi shell lain). guna LINENO
untuk mendapatkan nombor baris semasa.
BASH_REMATCH
Pembolehubah tatasusunan yang ahlinya diberikan oleh =~ pengendali binari kepada [[
perintah bersyarat. Unsur dengan indeks 0 ialah bahagian rentetan
memadankan keseluruhan ungkapan biasa. Unsur dengan indeks n adalah bahagian daripada
rentetan yang sepadan dengan nsubungkapan dalam kurungan ke. Pembolehubah ini dibaca-
sahaja.
BASH_SOURCE
Pembolehubah tatasusunan yang ahlinya ialah nama fail sumber yang sepadan
nama fungsi shell dalam FUNCNAME pembolehubah tatasusunan ditentukan. cangkerang
fungsi ${FUNCNAME[$i]} ditakrifkan dalam fail ${BASH_SOURCE[$i]} dan dipanggil daripada
${BASH_SOURCE[$i+1]}.
BASH_SUBSHELL
Ditambah dengan satu dalam setiap subkulit atau persekitaran subkulit apabila cangkerang
mula melaksanakan dalam persekitaran itu. Nilai awal ialah 0.
BASH_VERSINFO
Pembolehubah tatasusunan baca sahaja yang ahlinya memegang maklumat versi untuk contoh ini
of menampar. Nilai yang diberikan kepada ahli tatasusunan adalah seperti berikut:
BASH_VERSINFO[0] Nombor versi utama (the melepaskan).
BASH_VERSINFO[1] Nombor versi kecil (the versi).
BASH_VERSINFO[2] Tahap tampalan.
BASH_VERSINFO[3] Versi binaan.
BASH_VERSINFO[4] Status keluaran (cth, beta1).
BASH_VERSINFO[5] Nilai MACHTYPE.
BASH_VERSION
Berkembang kepada rentetan yang menerangkan versi contoh ini menampar.
COMP_CWORD
Indeks ke dalam ${COMP_WORDS} perkataan yang mengandungi kedudukan kursor semasa.
Pembolehubah ini hanya tersedia dalam fungsi shell yang digunakan oleh boleh atur cara
kemudahan penyiapan (lihat Boleh diprogramkan Selesai di bawah).
COMP_KEY
Kekunci (atau kekunci akhir bagi urutan kekunci) yang digunakan untuk memanggil penyiapan semasa
fungsi.
COMP_LINE
Baris arahan semasa. Pembolehubah ini hanya tersedia dalam fungsi shell dan
arahan luaran yang digunakan oleh kemudahan penyiapan boleh atur cara (lihat
Boleh diprogramkan Selesai di bawah).
COMP_POINT
Indeks kedudukan kursor semasa berbanding dengan permulaan semasa
perintah. Jika kedudukan kursor semasa berada di hujung arahan semasa, the
nilai pembolehubah ini adalah sama dengan ${#COMP_LINE}. Pembolehubah ini tersedia sahaja
dalam fungsi shell dan arahan luaran yang digunakan oleh penyiapan boleh atur cara
kemudahan (lihat Boleh diprogramkan Selesai di bawah).
COMP_TYPE
Tetapkan kepada nilai integer yang sepadan dengan jenis penyiapan yang dicuba itu
menyebabkan fungsi penyiapan dipanggil: TAB, untuk penyiapan biasa, ?, Bagi
penyenaraian selesai selepas tab berturut-turut, !, untuk menyenaraikan alternatif pada separa
pelengkap perkataan, @, untuk menyenaraikan pelengkapan jika perkataan itu tidak diubah suai, atau %, Bagi
penyiapan menu. Pembolehubah ini hanya tersedia dalam fungsi shell dan luaran
arahan yang digunakan oleh kemudahan penyiapan boleh atur cara (lihat Boleh diprogramkan
Selesai di bawah).
COMP_WORDBREAKS
Set watak yang garis baca perpustakaan menganggap sebagai pemisah perkataan apabila
melaksanakan pelengkapan perkataan. Jika COMP_WORDBREAKS tidak ditetapkan, ia kehilangan keistimewaannya
sifat, walaupun ia kemudiannya ditetapkan semula.
COMP_WORDS
Pembolehubah tatasusunan (lihat Arrays di bawah) yang terdiri daripada perkataan individu dalam
baris arahan semasa. Baris itu dibahagikan kepada perkataan sebagai garis baca akan membelahnya,
menggunakan COMP_WORDBREAKS seperti yang diterangkan di atas. Pembolehubah ini hanya tersedia dalam shell
fungsi yang digunakan oleh kemudahan penyiapan boleh atur cara (lihat Boleh diprogramkan
Selesai di bawah).
COPROC Pembolehubah tatasusunan (lihat Arrays di bawah) dicipta untuk menyimpan deskriptor fail untuk
output daripada dan input kepada proses bersama yang tidak dinamakan (lihat Coprocesses di atas).
DIRSTACK
Pembolehubah tatasusunan (lihat Arrays di bawah) yang mengandungi kandungan semasa
susunan direktori. Direktori muncul dalam timbunan mengikut susunan ia dipaparkan
oleh dirs terbina. Menugaskan kepada ahli pembolehubah tatasusunan ini boleh digunakan untuk
ubah suai direktori yang sudah ada dalam timbunan, tetapi pushd and popd builtins mestilah
digunakan untuk menambah dan mengalih keluar direktori. Tugasan kepada pembolehubah ini tidak akan berubah
direktori semasa. Jika DIRSTACK tidak ditetapkan, ia kehilangan sifat istimewanya, malah
jika ia kemudiannya ditetapkan semula.
EUID Berkembang kepada ID pengguna berkesan pengguna semasa, dimulakan pada permulaan shell.
Pembolehubah ini adalah baca sahaja.
FUNCNAME
Pembolehubah tatasusunan yang mengandungi nama semua fungsi shell pada masa ini dalam
timbunan panggilan pelaksanaan. Unsur dengan indeks 0 ialah nama mana-mana pada masa ini-
melaksanakan fungsi shell. Elemen paling bawah (yang mempunyai indeks tertinggi)
adalah "utama". Pembolehubah ini wujud hanya apabila fungsi shell sedang dilaksanakan.
Tugasan kepada FUNCNAME tidak mempunyai kesan dan mengembalikan status ralat. Jika FUNCNAME is
tidak ditetapkan, ia kehilangan sifat khasnya, walaupun ia kemudiannya ditetapkan semula.

Pembolehubah ini boleh digunakan dengan BASH_LINENO and BASH_SOURCE. Setiap elemen daripada
FUNCNAME mempunyai elemen yang sepadan dalam BASH_LINENO and BASH_SOURCE untuk menerangkan
timbunan panggilan. Sebagai contoh, ${FUNCNAME[$i]} telah dipanggil dari fail
${BASH_SOURCE[$i+1]} pada nombor baris ${BASH_LINENO[$i]}. Yang pemanggil dibina
memaparkan timbunan panggilan semasa menggunakan maklumat ini.
GROUPS Pembolehubah tatasusunan yang mengandungi senarai kumpulan yang mana pengguna semasa ialah a
ahli. Tugasan kepada GROUPS tidak mempunyai kesan dan mengembalikan status ralat. Jika
GROUPS tidak ditetapkan, ia kehilangan sifat istimewanya, walaupun ia kemudiannya ditetapkan semula.
HISTCMD
Nombor sejarah, atau indeks dalam senarai sejarah, arahan semasa. Jika
HISTCMD tidak ditetapkan, ia kehilangan sifat istimewanya, walaupun ia kemudiannya
tetapkan semula.
HOSTNAME
Ditetapkan secara automatik kepada nama hos semasa.
HOSTTYPE
Ditetapkan secara automatik kepada rentetan yang menerangkan secara unik jenis mesin yang digunakan
menampar sedang melaksanakan. Lalai adalah bergantung kepada sistem.
LINENO Setiap kali parameter ini dirujuk, shell menggantikan nombor perpuluhan
mewakili nombor baris jujukan semasa (bermula dengan 1) dalam skrip
atau fungsi. Apabila tidak dalam skrip atau fungsi, nilai yang digantikan tidak
dijamin bermakna. Jika LINENO tidak ditetapkan, ia kehilangan sifat istimewanya,
walaupun ia kemudiannya ditetapkan semula.
MACHTYPE
Ditetapkan secara automatik kepada rentetan yang menerangkan sepenuhnya jenis sistem yang digunakan menampar is
melaksanakan, dalam GNU standard cpu-syarikat-sistem format. Lalai ialah sistem-
bergantung.
MAPFILE
Pembolehubah tatasusunan (lihat Arrays di bawah) dicipta untuk memegang teks yang dibaca oleh fail peta
builtin apabila tiada nama pembolehubah dibekalkan.
OLDPWD Direktori kerja sebelumnya seperti yang ditetapkan oleh cd perintah.
OPTARG Nilai hujah pilihan terakhir yang diproses oleh getopts arahan terbina (lihat
SHELL BUILTIN PERINTAH di bawah).
OPTIND Indeks hujah seterusnya yang akan diproses oleh getopts arahan terbina (lihat
SHELL BUILTIN PERINTAH di bawah).
OSTYPE Ditetapkan secara automatik kepada rentetan yang menerangkan sistem pengendalian yang digunakan menampar is
melaksanakan. Lalai adalah bergantung kepada sistem.
PIPESTATUS
Pembolehubah tatasusunan (lihat Arrays di bawah) yang mengandungi senarai nilai status keluar daripada
proses dalam saluran paip latar depan yang paling baru dilaksanakan (yang mungkin mengandungi
hanya satu arahan).
PPID ID proses induk shell. Pembolehubah ini adalah baca sahaja.
JKR Direktori kerja semasa seperti yang ditetapkan oleh cd perintah.
RAWAK Setiap kali parameter ini dirujuk, integer rawak antara 0 dan 32767 ialah
dihasilkan. Urutan nombor rawak boleh dimulakan dengan memberikan nilai
kepada RAWAK. Jika RAWAK tidak ditetapkan, ia kehilangan sifat istimewanya, walaupun ianya
seterusnya set semula.
READLINE_LINE
Kandungan dari garis baca penampan baris, untuk digunakan dengan "bind -x" (lihat SHELL BUILTIN
PERINTAH di bawah).
READLINE_POINT
Kedudukan titik sisipan dalam garis baca penampan baris, untuk digunakan dengan "bind
-x" (lihat SHELL BUILTIN PERINTAH di bawah).
MEMBUAT Tetapkan kepada baris input yang dibaca oleh membaca arahan terbina apabila tiada hujah
dibekalkan.
SEKIAN
Setiap kali parameter ini dirujuk, bilangan saat sejak shell
seruan dikembalikan. Jika nilai diberikan kepada SEKIAN, nilai yang dikembalikan
rujukan seterusnya ialah bilangan saat sejak tugasan ditambah nilai
ditugaskan. Jika SEKIAN tidak ditetapkan, ia kehilangan sifat istimewanya, walaupun ianya
seterusnya set semula.
KERANG
Senarai pilihan shell yang didayakan yang dipisahkan bertindih. Setiap perkataan dalam senarai adalah sah
hujah untuk -o pilihan untuk menetapkan arahan terbina (lihat SHELL BUILTIN PERINTAH
di bawah). Pilihan yang muncul dalam KERANG adakah mereka dilaporkan sebagai on by menetapkan -o. Jika
pembolehubah ini berada dalam persekitaran apabila menampar bermula, setiap pilihan shell dalam
list akan didayakan sebelum membaca sebarang fail permulaan. Pembolehubah ini adalah baca sahaja.
SHLVL Ditambah dengan satu setiap kali kejadian menampar dimulakan.
UID Berkembang kepada ID pengguna pengguna semasa, dimulakan pada permulaan shell. ini
pembolehubah adalah baca sahaja.

Pembolehubah berikut digunakan oleh shell. Dalam beberapa kes, menampar memberikan lalai
nilai kepada pembolehubah; kes-kes ini dinyatakan di bawah.

BASH_COMPAT
Nilai digunakan untuk menetapkan tahap keserasian shell. Lihat penerangan tentang
yang shopt terbina di bawah di bawah SHELL BUILTIN PERINTAH untuk penerangan tentang
pelbagai tahap keserasian dan kesannya. Nilainya mungkin nombor perpuluhan
(cth, 4.2) atau integer (cth, 42) sepadan dengan keserasian yang diingini
tahap. Sekiranya BASH_COMPAT tidak ditetapkan atau ditetapkan kepada rentetan kosong, tahap keserasian
ditetapkan kepada lalai untuk versi semasa. Jika BASH_COMPAT ditetapkan kepada nilai
itu bukan salah satu tahap keserasian yang sah, shell mencetak ralat
mesej dan menetapkan tahap keserasian kepada lalai untuk versi semasa.
Tahap keserasian yang sah sepadan dengan pilihan keserasian yang diterima oleh
yang shopt builtin yang diterangkan di bawah (contohnya, kompat42 bermakna 4.2 dan 42 adalah
nilai yang sah). Versi semasa juga merupakan nilai yang sah.
BASH_ENV
Jika parameter ini ditetapkan bila menampar sedang melaksanakan skrip shell, nilainya ialah
ditafsirkan sebagai nama fail yang mengandungi arahan untuk memulakan shell, seperti dalam
~ / .bashrc. Nilai BASH_ENV tertakluk kepada pengembangan parameter, arahan
penggantian, dan pengembangan aritmetik sebelum ditafsirkan sebagai nama fail.
PATH tidak digunakan untuk mencari nama fail yang terhasil.
BASH_XTRACEFD
Jika ditetapkan kepada integer yang sepadan dengan deskriptor fail yang sah, menampar akan menulis
jejak output yang dijana apabila menetapkan -x didayakan kepada deskriptor fail itu. Fail
deskriptor ditutup apabila BASH_XTRACEFD tidak ditetapkan atau diberikan nilai baharu.
Menyahset BASH_XTRACEFD atau memberikannya rentetan kosong menyebabkan output surih menjadi
dihantar ke ralat standard. Perhatikan tetapan itu BASH_XTRACEFD kepada 2 (standard
deskriptor fail ralat) dan kemudian menyahsetkannya akan mengakibatkan ralat standard
sedang ditutup.
CDPATH Laluan carian untuk cd perintah. Ini ialah senarai direktori yang dipisahkan dengan titik bertindih
di mana shell mencari direktori destinasi yang ditentukan oleh cd perintah.
Nilai sampel ialah ".:~:/ usr".
CHILD_MAX
Tetapkan bilangan nilai status anak yang keluar untuk diingati oleh shell. Bash akan
tidak membenarkan nilai ini dikurangkan di bawah minimum mandat POSIX, dan terdapat a
nilai maksimum (pada masa ini 8192) yang tidak boleh melebihinya. Nilai minimum ialah
bergantung kepada sistem.
COLUMNS
Digunakan oleh pilih arahan kompaun untuk menentukan lebar terminal semasa mencetak
senarai pilihan. Tetapkan secara automatik jika checkwinsize pilihan didayakan atau dalam
cangkerang interaktif apabila menerima a SIGWINCH.
MEMATUHI
Pembolehubah tatasusunan dari mana menampar membaca kemungkinan penyiapan yang dihasilkan oleh a
fungsi shell yang digunakan oleh kemudahan penyiapan boleh atur cara (lihat Boleh diprogramkan
Selesai di bawah). Setiap elemen tatasusunan mengandungi satu kemungkinan penyiapan.
EMACS If menampar mencari pembolehubah ini dalam persekitaran apabila shell bermula dengan nilai
"t", ia menganggap bahawa shell berjalan dalam penimbal shell Emacs dan melumpuhkan
penyuntingan baris.
ENV Sama seperti BASH_ENV; digunakan apabila shell digunakan dalam mod POSIX.
FCEDIT Editor lalai untuk fc arahan terbina.
FIGNORE
Senarai akhiran yang dipisahkan bertindih untuk diabaikan apabila melakukan pelengkapan nama fail
(Lihat TALIAN BACA di bawah). Nama fail yang akhirannya sepadan dengan salah satu entri dalam
FIGNORE dikecualikan daripada senarai nama fail yang dipadankan. Nilai sampel ialah ".o:~"
(Petikan diperlukan apabila memberikan nilai kepada pembolehubah ini, yang mengandungi tilde).
PALING SENANG
Jika ditetapkan kepada nilai angka yang lebih besar daripada 0, tentukan tahap sarang fungsi maksimum.
Seruan fungsi yang melebihi tahap bersarang ini akan menyebabkan arahan semasa
untuk menggugurkan kandungan.
GLOBIGNORE
Senarai corak yang dipisahkan bertindih yang mentakrifkan set nama fail untuk diabaikan oleh
pengembangan nama laluan. Jika nama fail dipadankan dengan corak pengembangan nama laluan juga
sepadan dengan salah satu corak dalam GLOBIGNORE, ia dialih keluar daripada senarai padanan.
HISTCONTROL
Senarai nilai yang dipisahkan bertindih yang mengawal cara arahan disimpan pada sejarah
senarai. Jika senarai nilai termasuk abaikan ruang, baris yang bermula dengan a ruang
aksara tidak disimpan dalam senarai sejarah. Nilai daripada abaikan menyebabkan garisan
memadankan entri sejarah sebelumnya untuk tidak disimpan. Nilai daripada abaikan kedua-duanya is
singkatan untuk abaikan ruang and abaikan. Nilai daripada terpadam menyebabkan semua sebelumnya
baris yang sepadan dengan baris semasa untuk dialih keluar daripada senarai sejarah sebelum itu
talian disimpan. Sebarang nilai yang tiada dalam senarai di atas diabaikan. Jika HISTCONTROL is
tidak ditetapkan, atau tidak termasuk nilai yang sah, semua baris yang dibaca oleh penghurai shell adalah
disimpan pada senarai sejarah, tertakluk kepada nilai HISTIGNORE. Yang kedua dan
baris berikutnya bagi perintah kompaun berbilang baris tidak diuji, dan ditambahkan pada
sejarah tanpa mengira nilai HISTCONTROL.
FAIL SEJARAH
Nama fail di mana sejarah arahan disimpan (lihat SEJARAH di bawah). The
nilai lalai ialah ~ / .bash_history. Jika tidak ditetapkan, sejarah arahan tidak disimpan apabila
sebuah cangkerang keluar.
HISTFAILSize
Bilangan maksimum baris yang terkandung dalam fail sejarah. Apabila pembolehubah ini adalah
diberi nilai, fail sejarah dipotong, jika perlu, untuk tidak mengandungi lagi
daripada bilangan baris itu dengan mengalih keluar masukan tertua. Fail sejarah juga
dipenggal kepada saiz ini selepas menulisnya apabila shell keluar. Jika nilainya ialah 0, maka
fail sejarah dipotong kepada saiz sifar. Nilai bukan angka dan kurang nilai angka
daripada sifar menghalang pemangkasan. Cangkang menetapkan nilai lalai kepada nilai
HISTSIZE selepas membaca sebarang fail permulaan.
HISTIGNORE
Senarai corak yang dipisahkan bertindih yang digunakan untuk menentukan baris arahan yang sepatutnya
disimpan dalam senarai sejarah. Setiap corak dilabuhkan pada permulaan baris
dan mesti sepadan dengan baris lengkap (tiada `*' dilampirkan). Setiap corak adalah
diuji terhadap garisan selepas semakan yang ditentukan oleh HISTCONTROL digunakan. Dalam
tambahan kepada aksara padanan corak cangkerang biasa, `&' sepadan dengan sebelumnya
garis sejarah. `&' boleh dilepaskan menggunakan garis miring ke belakang; garis miring ke belakang dikeluarkan
sebelum mencuba perlawanan. Baris kedua dan seterusnya bagi berbilang baris
arahan kompaun tidak diuji, dan ditambahkan pada sejarah tanpa mengira
nilai HISTIGNORE.
HISTSIZE
Bilangan arahan yang perlu diingat dalam sejarah arahan (lihat SEJARAH di bawah). Jika
nilainya ialah 0, arahan tidak disimpan dalam senarai sejarah. Nilai angka kurang
daripada hasil sifar dalam setiap arahan yang disimpan pada senarai sejarah (tidak ada
had). Cangkang menetapkan nilai lalai kepada 500 selepas membaca sebarang fail permulaan.
FORMAT MASA SEJARAH
Jika pembolehubah ini ditetapkan dan bukan nol, nilainya digunakan sebagai rentetan format untuk
masa strft(3) untuk mencetak cap masa yang dikaitkan dengan setiap catatan sejarah yang dipaparkan oleh
yang sejarah terbina. Jika pembolehubah ini ditetapkan, setem masa ditulis pada
fail sejarah supaya ia boleh dipelihara merentas sesi shell. Ini menggunakan sejarah
mengulas watak untuk membezakan cap masa daripada baris sejarah lain.
LAMAN UTAMA Direktori rumah pengguna semasa; hujah lalai untuk cd dibina
perintah. Nilai pembolehubah ini juga digunakan semasa melakukan pengembangan tilde.
HOSTFILE
Mengandungi nama fail dalam format yang sama seperti / Etc / tuan rumah itu harus dibaca
apabila shell perlu melengkapkan nama hos. Senarai nama hos yang mungkin
penyiapan boleh diubah semasa shell sedang berjalan; nama hos kali seterusnya
penyiapan cuba selepas nilai ditukar, menampar menambah kandungan
fail baharu ke senarai sedia ada. Jika HOSTFILE ditetapkan, tetapi tidak mempunyai nilai, atau tidak
namakan fail yang boleh dibaca, menampar percubaan membaca / Etc / tuan rumah untuk mendapatkan senarai
kemungkinan pelengkapan nama hos. Bila HOSTFILE tidak ditetapkan, senarai nama hos ialah
dibersihkan.
IFS . Dalaman Bidang pemisah yang digunakan untuk pembahagian perkataan selepas pengembangan dan kepada
belah baris menjadi perkataan dengan membaca arahan terbina. Nilai lalai ialah
`` ''.
ABAIKAN
Mengawal tindakan cangkerang interaktif apabila menerima a EOF watak sebagai
input tunggal. Jika ditetapkan, nilainya ialah bilangan berturut-turut EOF watak yang
mesti ditaip sebagai aksara pertama pada baris input sebelum ini menampar keluar. Sekiranya
pembolehubah wujud tetapi tidak mempunyai nilai berangka, atau tidak mempunyai nilai, lalai
nilai ialah 10. Jika ia tidak wujud, EOF menandakan berakhirnya input kepada shell.
INPUTRC
Nama fail untuk garis baca fail permulaan, mengatasi lalai daripada ~ / .inputrc
(Lihat TALIAN BACA di bawah).
BAHASA Digunakan untuk menentukan kategori tempat untuk mana-mana kategori yang tidak dipilih secara khusus
dengan pembolehubah bermula dengan LC_.
LC_ALL Pembolehubah ini mengatasi nilai BAHASA dan lain-lain LC_ pembolehubah yang menyatakan a
kategori setempat.
LC_COLLATE
Pembolehubah ini menentukan susunan penyusunan yang digunakan semasa mengisih keputusan bagi
pengembangan nama laluan, dan menentukan kelakuan ungkapan julat, kesetaraan
kelas, dan menyusun jujukan dalam pengembangan nama laluan dan padanan corak.
LC_CTYPE
Pembolehubah ini menentukan tafsiran watak dan tingkah laku
kelas aksara dalam pengembangan nama laluan dan padanan corak.
LC_MESSAGES
Pembolehubah ini menentukan tempat yang digunakan untuk menterjemah rentetan petikan dua kali
didahului oleh a $.
LC_NUMERIC
Pembolehubah ini menentukan kategori tempat yang digunakan untuk pemformatan nombor.
TALIAN Digunakan oleh pilih arahan kompaun untuk menentukan panjang lajur untuk cetakan
senarai pilihan. Tetapkan secara automatik jika checkwinsize pilihan didayakan atau dalam
cangkerang interaktif apabila menerima a SIGWINCH.
MEL Jika parameter ini ditetapkan kepada fail atau nama direktori dan MAILPATH pemboleh ubah ialah
tidak ditetapkan, menampar memberitahu pengguna tentang ketibaan mel dalam fail yang ditentukan atau
Direktori format Maildir.
SEMAK SURAT
Menentukan kekerapan (dalam saat) menampar menyemak mel. Lalai ialah 60 saat.
Apabila tiba masanya untuk menyemak mel, shell berbuat demikian sebelum memaparkan utama
segera. Jika pembolehubah ini tidak ditetapkan atau ditetapkan kepada nilai yang bukan nombor yang lebih besar
daripada atau sama dengan sifar, shell melumpuhkan semakan mel.
MAILPATH
Senarai nama fail yang dipisahkan bertindih untuk disemak untuk mel. Mesej untuk menjadi
dicetak apabila mel tiba dalam fail tertentu boleh ditentukan dengan memisahkan
nama fail daripada mesej dengan `?'. Apabila digunakan dalam teks mesej, $_
berkembang kepada nama fail mel semasa. Contoh:
MAILPATH='/var/mail/bfox?"Anda ada mel":~/shell-mail?"$_ ada mel!"'
Bash membekalkan nilai lalai untuk pembolehubah ini, tetapi lokasi mel pengguna
fail yang digunakan adalah bergantung kepada sistem (cth, /var/mel/$ PENGGUNA).
OPTERR Jika ditetapkan kepada nilai 1, menampar memaparkan mesej ralat yang dihasilkan oleh getopts
arahan terbina (lihat SHELL BUILTIN PERINTAH di bawah). OPTERR dimulakan kepada 1
setiap kali shell dipanggil atau skrip shell dilaksanakan.
PATH Laluan carian untuk arahan. Ia ialah senarai direktori yang dipisahkan bertindih di mana
shell mencari arahan (lihat COMMAND PERLAKSANAAN di bawah). Panjang sifar (null)
nama direktori dalam nilai PATH menunjukkan direktori semasa. A null
nama direktori mungkin muncul sebagai dua titik bertindih bersebelahan, atau sebagai awalan atau belakang
kolon. Laluan lalai adalah bergantung kepada sistem, dan ditetapkan oleh pentadbir yang
pemasangan menampar. Nilai biasa ialah ``/ usr / local / bin:/ usr / tempatan / sbin:/ usr / bin:
/ usr / sbin:/ bin:/ sbin''.
POSIXLY_BETUL
Jika pembolehubah ini berada dalam persekitaran apabila menampar bermula, cangkerang masuk posix
mod sebelum membaca fail permulaan, seolah-olah fail --posix pilihan doa telah
dibekalkan. Jika ia ditetapkan semasa shell sedang berjalan, menampar membolehkan posix mod, seolah-olah
perintah itu menetapkan -o posix telah dilaksanakan.
PROMPT_COMMAND
Jika ditetapkan, nilai dilaksanakan sebagai arahan sebelum mengeluarkan setiap gesaan utama.
PROMPT_DIRTRIM
Jika ditetapkan kepada nombor yang lebih besar daripada sifar, nilai itu digunakan sebagai nombor mengekor
komponen direktori untuk dikekalkan apabila mengembangkan \w and \W rentetan segera melarikan diri
(Lihat MENGGASUNG di bawah). Aksara yang dialih keluar digantikan dengan elipsis.
PS1 Nilai parameter ini dikembangkan (lihat MENGGASUNG di bawah) dan digunakan sebagai
rentetan gesaan utama. Nilai lalai ialah ``\s-\v\$ ''.
PS2 Nilai parameter ini dikembangkan seperti dengan PS1 dan digunakan sebagai sekunder
rentetan segera. Lalai ialah ``> ''.
PS3 Nilai parameter ini digunakan sebagai gesaan untuk pilih perintah (lihat SHELL
GRAMMAR di atas).
PS4 Nilai parameter ini dikembangkan seperti dengan PS1 dan nilai dicetak sebelum ini
setiap perintah menampar dipaparkan semasa jejak pelaksanaan. Watak pertama PS4
direplikasi berbilang kali, jika perlu, untuk menunjukkan berbilang peringkat
tidak arah. Lalai ialah ``+ ''.
SHELL Nama laluan penuh kepada shell disimpan dalam pembolehubah persekitaran ini. Jika tidak
tetapkan apabila cangkerang bermula, menampar memberikan kepadanya nama laluan penuh semasa
shell log masuk pengguna.
FORMAT MASA
Nilai parameter ini digunakan sebagai rentetan format yang menentukan cara pemasaan
maklumat untuk saluran paip yang diawali dengan masa perkataan terpelihara hendaklah dipaparkan.
. % watak memperkenalkan urutan melarikan diri yang dikembangkan kepada nilai masa atau
maklumat lain. Urutan melarikan diri dan maksudnya adalah seperti berikut; yang
pendakap menandakan bahagian pilihan.
%% A literal %.
%[p][l]R Masa berlalu dalam beberapa saat.
%[p][l]U Bilangan saat CPU yang dibelanjakan dalam mod pengguna.
%[p][l]S Bilangan saat CPU yang dibelanjakan dalam mod sistem.
%P Peratusan CPU, dikira sebagai (%U + %S) / %R.

Pilihannya p ialah digit yang menyatakan ketepatan, bilangan digit pecahan
selepas titik perpuluhan. Nilai 0 menyebabkan tiada titik perpuluhan atau pecahan
pengeluaran. Paling banyak tiga tempat selepas titik perpuluhan boleh ditentukan; nilai daripada p
lebih daripada 3 ditukar kepada 3. Jika p tidak dinyatakan, nilai 3 digunakan.

Pilihannya l menentukan format yang lebih panjang, termasuk minit, borang MMmSS.FFs.
Nilai p menentukan sama ada pecahan itu dimasukkan atau tidak.

Jika pembolehubah ini tidak ditetapkan, menampar bertindak seolah-olah ia mempunyai nilai
$'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS'. Jika nilainya batal, tiada pemasaan
maklumat dipaparkan. Baris baharu yang mengekori ditambah apabila rentetan format adalah
dipaparkan.
TMOUT Jika ditetapkan kepada nilai yang lebih besar daripada sifar, TMOUT dianggap sebagai tamat masa lalai untuk
yang membaca terbina. The pilih arahan ditamatkan jika input tidak sampai selepas
TMOUT saat apabila input datang dari terminal. Dalam shell interaktif, the
nilai ditafsirkan sebagai bilangan saat untuk menunggu baris input selepas
mengeluarkan gesaan utama. Bash ditamatkan selepas menunggu bilangan itu
saat jika baris input lengkap tidak tiba.
TMPDIR Jika ditetapkan, menampar menggunakan nilainya sebagai nama direktori di mana menampar mewujudkan
fail sementara untuk kegunaan shell.
auto_resume
Pembolehubah ini mengawal cara shell berinteraksi dengan pengguna dan kawalan kerja. Jika
pembolehubah ini ditetapkan, perintah mudah perkataan tunggal tanpa ubah hala dilayan
sebagai calon untuk menyambung semula kerja sedia ada yang dihentikan. Tiada kesamaran
dibenarkan; jika terdapat lebih daripada satu kerja bermula dengan rentetan ditaip, kerja itu
yang paling baru diakses dipilih. The nama pekerjaan yang dihentikan, dalam konteks ini, adalah
baris arahan yang digunakan untuk memulakannya. Jika ditetapkan kepada nilai tepat, rentetan yang dibekalkan
mesti sepadan dengan nama kerja yang dihentikan dengan tepat; jika ditetapkan kepada subrentetan, rentetan
yang dibekalkan perlu sepadan dengan subrentetan nama kerja yang dihentikan. The subrentetan
nilai menyediakan fungsi yang serupa dengan %? pengecam kerja (lihat JOB KAWALAN
di bawah). Jika ditetapkan kepada sebarang nilai lain, rentetan yang dibekalkan mestilah awalan a
nama pekerjaan dihentikan; ini menyediakan fungsi yang serupa dengan %rentetan kerja
pengecam.
hischars
Dua atau tiga watak yang mengawal pengembangan sejarah dan tokenisasi (lihat
SEJARAH EXPANSION di bawah). Watak pertama ialah sejarah pengembangan watak,
watak yang menandakan permulaan pengembangan sejarah, biasanya `!'. The
watak kedua ialah cepat penggantian watak, yang digunakan sebagai trengkas
untuk menjalankan semula arahan sebelumnya yang dimasukkan, menggantikan satu rentetan dengan yang lain dalam
perintah itu. Lalai ialah `^'. Watak ketiga pilihan ialah watak
yang menunjukkan bahawa baki baris adalah ulasan apabila didapati sebagai yang pertama
watak perkataan, biasanya `#'. Watak ulasan sejarah menyebabkan sejarah
penggantian untuk dilangkau untuk perkataan yang tinggal pada baris. Ia tidak
semestinya menyebabkan penghurai shell untuk merawat seluruh baris sebagai ulasan.

Arrays
Bash menyediakan pembolehubah tatasusunan terindeks dan bersekutu satu dimensi. Mana-mana pembolehubah boleh
digunakan sebagai tatasusunan diindeks; yang mengisytiharkan builtin akan mengisytiharkan tatasusunan secara eksplisit. di sana
tiada had maksimum pada saiz tatasusunan, mahupun sebarang keperluan yang membolehkan ahli diindeks
atau ditugaskan bersebelahan. Tatasusunan diindeks dirujuk menggunakan integer (termasuk
ungkapan aritmetik) dan berasaskan sifar; tatasusunan bersekutu dirujuk menggunakan
rentetan sewenang-wenangnya. Melainkan dinyatakan sebaliknya, indeks tatasusunan yang diindeks mestilah bukan negatif
bilangan bulat.

Tatasusunan diindeks dibuat secara automatik jika sebarang pembolehubah ditetapkan untuk menggunakan sintaks
nama[langganan]=nilai. Yang langganan dianggap sebagai ungkapan aritmetik yang mesti
menilai kepada nombor. Untuk mengisytiharkan tatasusunan yang diindeks secara eksplisit, gunakan mengisytiharkan -a nama (Lihat
SHELL BUILTIN PERINTAH di bawah). mengisytiharkan -a nama[langganan] juga diterima; yang langganan
tidak diendahkan.

Tatasusunan bersekutu dicipta menggunakan mengisytiharkan -A nama.

Atribut boleh ditentukan untuk pembolehubah tatasusunan menggunakan mengisytiharkan and baca sahaja binaan.
Setiap atribut digunakan untuk semua ahli tatasusunan.

Tatasusunan ditugaskan untuk menggunakan penugasan kompaun borang nama=(nilai1 ... nilain),
di mana masing-masing nilai adalah dalam bentuk [langganan]=rentetan. Tugasan tatasusunan diindeks tidak
memerlukan apa-apa tetapi rentetan. Apabila menetapkan kepada tatasusunan diindeks, jika kurungan pilihan
dan subskrip dibekalkan, indeks itu diberikan kepada; sebaliknya indeks unsur
assigned ialah indeks terakhir yang diberikan oleh pernyataan tambah satu. Pengindeksan bermula pada
sifar.

Apabila menetapkan kepada tatasusunan bersekutu, subskrip diperlukan.

Sintaks ini juga diterima oleh mengisytiharkan terbina. Elemen tatasusunan individu mungkin
ditugaskan untuk menggunakan nama[langganan]=nilai sintaks yang diperkenalkan di atas. Apabila menugaskan kepada an
tatasusunan diindeks, jika nama dilanggan oleh nombor negatif, nombor itu ditafsirkan sebagai
relatif kepada satu yang lebih besar daripada indeks maksimum bagi nama, jadi indeks negatif dikira semula
dari hujung tatasusunan, dan indeks -1 merujuk kepada elemen terakhir.

Mana-mana elemen tatasusunan boleh dirujuk menggunakan ${nama[langganan]}. pendakap gigi adalah
diperlukan untuk mengelakkan konflik dengan pengembangan nama laluan. Jika langganan is @ or *, perkataan itu
berkembang kepada semua ahli nama. Subskrip ini berbeza hanya apabila perkataan itu muncul di dalam
petikan berganda. Jika perkataan itu disebut dua kali, ${nama[*]} berkembang kepada satu perkataan dengan
nilai setiap ahli tatasusunan dipisahkan oleh aksara pertama bagi IFS pembolehubah khas,
dan ${nama[@]} mengembangkan setiap elemen nama kepada perkataan yang berasingan. Apabila tiada tatasusunan
ahli, ${nama[@]} berkembang kepada tiada. Jika pengembangan disebut dua kali berlaku dalam a
perkataan, pengembangan parameter pertama dicantumkan dengan bahagian permulaan
perkataan asal, dan pengembangan parameter terakhir digabungkan dengan bahagian terakhir
perkataan asal. Ini adalah sama dengan pengembangan parameter khas * and @ (Lihat
khas Parameter atas). ${#nama[langganan]} mengembang ke panjang
${nama[langganan]}. Jika langganan is * or @, pengembangan ialah bilangan elemen dalam
tatasusunan. Merujuk pembolehubah tatasusunan tanpa subskrip adalah bersamaan dengan rujukan
tatasusunan dengan subskrip 0. Jika langganan digunakan untuk merujuk unsur an
tatasusunan diindeks menilai kepada nombor kurang daripada sifar, ia ditafsirkan sebagai relatif kepada satu
lebih besar daripada indeks maksimum tatasusunan, jadi indeks negatif mengira kembali dari penghujung
tatasusunan, dan indeks -1 merujuk kepada elemen terakhir.

Pembolehubah tatasusunan dianggap ditetapkan jika subskrip telah diberikan nilai. null
rentetan ialah nilai yang sah.

Adalah mungkin untuk mendapatkan kunci (indeks) tatasusunan serta nilai.
${!nama[@]} dan ${!nama[*]} kembangkan kepada indeks yang ditetapkan dalam pembolehubah tatasusunan nama. Yang
rawatan apabila dalam petikan berganda adalah serupa dengan pengembangan parameter khas @
and * dalam petikan berganda.

. tidak tenteram builtin digunakan untuk memusnahkan tatasusunan. tidak tenteram nama[langganan] memusnahkan tatasusunan
elemen pada indeks langganan. Subskrip negatif kepada tatasusunan diindeks ditafsirkan sebagai
diterangkan di atas. Penjagaan mesti diambil untuk mengelakkan kesan sampingan yang tidak diingini yang disebabkan oleh nama laluan
pengembangan. tidak tenteram nama, Di mana nama ialah tatasusunan, atau tidak tenteram nama[langganan], di mana langganan
is * or @, mengalih keluar keseluruhan tatasusunan.

. mengisytiharkan, tempatan, dan baca sahaja binaan masing-masing menerima a -a pilihan untuk menentukan diindeks
tatasusunan dan a -A pilihan untuk menentukan tatasusunan bersekutu. Jika kedua-dua pilihan dibekalkan, -A
diutamakan. The membaca builtin menerima a -a pilihan untuk menetapkan senarai perkataan yang dibaca
daripada input standard kepada tatasusunan. The menetapkan and mengisytiharkan terbina memaparkan nilai tatasusunan dalam
cara yang membolehkan mereka digunakan semula sebagai tugasan.

EXPANSION


Pengembangan dilakukan pada baris arahan selepas ia dibahagikan kepada perkataan. Disana ada
tujuh jenis pengembangan dilakukan: pendakap pengembangan, tilde pengembangan, parameter and
berubah-ubah pengembangan, arahan penggantian, aritmetik pengembangan, perkataan membelah, dan
nama jalan pengembangan.

Urutan pengembangan ialah: pengembangan pendakap; pengembangan tilde, parameter dan pembolehubah
pengembangan, pengembangan aritmetik dan penggantian perintah (dilakukan dalam kiri-ke-kanan
fesyen); pemisahan perkataan; dan pengembangan nama laluan.

Pada sistem yang boleh menyokongnya, terdapat pengembangan tambahan yang tersedia: proses
penggantian. Ini dilakukan pada masa yang sama seperti tilde, parameter, pembolehubah dan
pengembangan aritmetik dan penggantian arahan.

Hanya pengembangan pendakap, pemisahan perkataan dan pengembangan nama laluan boleh menukar bilangan
perkataan pengembangan; pengembangan lain mengembangkan satu perkataan kepada satu perkataan. Satu-satunya
pengecualian untuk ini adalah pengembangan "$@"Dan"${nama[@]}" seperti yang dijelaskan di atas (lihat
PARAMETER).

Brace pengembangan
Brace pengembangan ialah mekanisme yang mana rentetan sewenang-wenangnya boleh dijana. ini
mekanisme adalah serupa dengan nama jalan pengembangan, tetapi nama fail yang dijana tidak perlu wujud.
Corak untuk dijadikan pendakap dikembangkan dalam bentuk pilihan mukadimah, diikuti oleh sama ada a
siri rentetan yang dipisahkan koma atau ungkapan urutan antara sepasang pendakap,
diikuti dengan pilihan kata-kata tambahan. Mukadimah didahulukan pada setiap rentetan yang terkandung
dalam pendakap, dan postskrip kemudiannya dilampirkan pada setiap rentetan yang terhasil, berkembang
kiri ke kanan.

Pengembangan pendakap mungkin bersarang. Keputusan setiap rentetan yang dikembangkan tidak diisih; dibiarkan
mengikut urutan yang betul dipelihara. Contohnya, a{d,c,b}e berkembang menjadi `ade ace abe'.

Ungkapan urutan mengambil bentuk {x..y[..incr]}, Di mana x and y adalah sama ada integer atau
aksara tunggal, dan incr, kenaikan pilihan, ialah integer. Apabila integer adalah
dibekalkan, ungkapan berkembang kepada setiap nombor antara x and y, inklusif. dibekalkan
integer mungkin diawali dengan 0 untuk memaksa setiap sebutan mempunyai lebar yang sama. Apabila sama ada x
or y bermula dengan sifar, cangkerang cuba memaksa semua istilah yang dijana untuk mengandungi
bilangan digit yang sama, padding sifar jika perlu. Apabila aksara dibekalkan,
ungkapan berkembang kepada setiap aksara secara leksikografi antara x and y, inklusif, menggunakan
tempat C lalai. Perhatikan bahawa kedua-duanya x and y mestilah dari jenis yang sama. Apabila
kenaikan dibekalkan, ia digunakan sebagai perbezaan antara setiap istilah. lalai
kenaikan ialah 1 atau -1 mengikut kesesuaian.

Peluasan pendakap dilakukan sebelum sebarang pengembangan lain, dan mana-mana aksara khas untuknya
pengembangan lain dikekalkan dalam hasilnya. Ia hanya tekstual. Bash tidak
menggunakan sebarang tafsiran sintaksis pada konteks pengembangan atau teks antara
pendakap gigi.

Pengembangan pendakap yang dibentuk dengan betul mesti mengandungi pendakap buka dan penutup yang tidak disebut, dan
sekurang-kurangnya satu koma yang tidak disebut atau ungkapan urutan yang sah. Mana-mana pendakap yang salah dibentuk
pengembangan dibiarkan tidak berubah. A { or , boleh dipetik dengan garis miring ke belakang untuk mengelakkannya
dianggap sebahagian daripada ekspresi pendakap. Untuk mengelakkan konflik dengan pengembangan parameter,
rentetan ${ tidak dianggap layak untuk pengembangan pendakap.

Konstruk ini biasanya digunakan sebagai singkatan apabila awalan biasa rentetan menjadi
yang dihasilkan adalah lebih lama daripada contoh di atas:

mkdir /usr/local/src/bash/{lama,baru,dist,pepijat}
or
akar chown /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}

Peluasan pendakap memperkenalkan sedikit ketidakserasian dengan versi sejarah sh. sh
tidak merawat pendakap membuka atau menutup secara khusus apabila ia muncul sebagai sebahagian daripada perkataan, dan
mengekalkannya dalam keluaran. Bash mengeluarkan pendakap daripada perkataan sebagai akibat daripada pendakap
pengembangan. Contohnya, perkataan yang dimasukkan ke sh as fail{1,2} muncul secara identik dalam
pengeluaran. Perkataan yang sama adalah output sebagai file1 file2 selepas pembesaran oleh menampar. Jika tegas
keserasian dengan sh diingini, mulakan menampar dengan +B pilihan atau lumpuhkan pengembangan pendakap
dengan +B pilihan untuk menetapkan perintah (lihat SHELL BUILTIN PERINTAH di bawah).

Tilde pengembangan
Jika perkataan bermula dengan aksara tilde yang tidak dipetik (`~'), semua watak sebelum ini
garis miring pertama yang tidak disebut (atau semua aksara, jika tiada garis miring yang tidak disebut) akan dipertimbangkan
a awalan tilde. Jika tiada satu pun daripada aksara dalam awalan tilde dipetik, aksara itu
dalam awalan tilde berikutan tilde dianggap sebagai mungkin log masuk nama. Sekiranya ini
nama log masuk ialah rentetan nol, tilde digantikan dengan nilai parameter shell
LAMAN UTAMA. Jika LAMAN UTAMA tidak ditetapkan, direktori rumah pengguna yang melaksanakan shell digantikan
sebaliknya. Jika tidak, awalan tilde digantikan dengan direktori rumah yang dikaitkan dengan
nama log masuk yang ditentukan.

Jika awalan tilde ialah `~+', nilai pembolehubah shell JKR menggantikan tilde-
awalan. Jika awalan tilde ialah `~-', nilai pembolehubah shell OLDPWD, sekiranya ia
ditetapkan, digantikan. Jika aksara yang mengikuti tilde dalam awalan tilde terdiri daripada
nombor N, sebagai pilihan awalan dengan `+' atau `-', awalan tilde digantikan dengan
elemen yang sepadan daripada timbunan direktori, kerana ia akan dipaparkan oleh dirs
builtin dipanggil dengan awalan tilde sebagai hujah. Jika watak-watak yang mengikuti
tilde dalam awalan tilde terdiri daripada nombor tanpa pendahuluan `+' atau `-', `+' ialah
diandaikan.

Jika nama log masuk tidak sah, atau pengembangan tilde gagal, perkataan itu tidak berubah.

Setiap penugasan pembolehubah disemak untuk awalan tilde yang tidak disebut sejurus selepas a :
atau yang pertama =. Dalam kes ini, pengembangan tilde juga dilakukan. Akibatnya, seseorang boleh
gunakan nama fail dengan tilde dalam tugasan untuk PATH, MAILPATH, dan CDPATH, dan cangkerang
memberikan nilai yang diperluaskan.

Parameter pengembangan
`$' aksara memperkenalkan pengembangan parameter, penggantian perintah, atau aritmetik
pengembangan. Nama atau simbol parameter yang akan dikembangkan mungkin disertakan dalam pendakap, yang
adalah pilihan tetapi berfungsi untuk melindungi pembolehubah yang akan dikembangkan daripada aksara serta-merta
mengikutinya yang boleh ditafsirkan sebagai sebahagian daripada nama itu.

Apabila pendakap digunakan, pendakap penghujung yang sepadan adalah yang pertama `}' tidak terlepas oleh a
garis miring ke belakang atau dalam rentetan yang disebut, dan bukan dalam pengembangan aritmetik terbenam,
penggantian arahan, atau pengembangan parameter.

${parameter}
Nilai parameter digantikan. Pendakap gigi diperlukan apabila parameter ialah
parameter kedudukan dengan lebih daripada satu digit, atau bila parameter diikuti oleh a
watak yang tidak boleh ditafsirkan sebagai sebahagian daripada namanya. The parameter ialah
parameter shell seperti yang diterangkan di atas PARAMETER) atau rujukan tatasusunan (Arrays).

Jika watak pertama daripada parameter ialah tanda seru (!), ia memperkenalkan tahap
arah yang berubah-ubah. Bash menggunakan nilai pembolehubah yang terbentuk daripada selebihnya
parameter sebagai nama pembolehubah; pembolehubah ini kemudiannya dikembangkan dan nilai itu adalah
digunakan dalam penggantian selebihnya, bukannya nilai parameter sendiri. Ini adalah
dikenali sebagai tidak langsung pengembangan. Pengecualian untuk ini ialah pengembangan ${!awalan*} dan
${!nama[@]} terangkan di bawah. Tanda seru mesti segera mengikut tanda kurung kiri
untuk memperkenalkan indidirection.

Dalam setiap kes di bawah, perkataan tertakluk kepada pengembangan tilde, pengembangan parameter,
penggantian perintah, dan pengembangan aritmetik.

Apabila tidak melakukan pengembangan subrentetan, menggunakan borang yang didokumenkan di bawah (cth, :-), menampar
ujian untuk parameter yang tidak ditetapkan atau batal. Mengeluarkan kolon menyebabkan ujian sahaja
untuk parameter yang tidak ditetapkan.

${parameter:-perkataan}
Penggunaan Lalai Nilai-nilai. Jika parameter tidak ditetapkan atau batal, pengembangan perkataan is
digantikan. Jika tidak, nilai parameter diganti.
${parameter:=perkataan}
Berikan Lalai Nilai-nilai. Jika parameter tidak ditetapkan atau batal, pengembangan perkataan is
ditugaskan untuk parameter. Nilai parameter kemudiannya diganti. Kedudukan
parameter dan parameter khas mungkin tidak ditetapkan dengan cara ini.
${parameter:?perkataan}
paparan ralat if Menyeimbangkan or Unset. Jika parameter adalah batal atau tidak ditetapkan, pengembangan daripada
perkataan (atau mesej untuk kesan itu jika perkataan tidak hadir) ditulis kepada
ralat standard dan shell, jika ia tidak interaktif, keluar. Jika tidak, yang
nilai parameter diganti.
${parameter:+perkataan}
Penggunaan Ganti nilai. Jika parameter adalah batal atau tidak ditetapkan, tiada yang digantikan,
sebaliknya pengembangan perkataan diganti.
${parameter:mengimbangi}
${parameter:mengimbangi:panjang}
Subrentetan pengembangan. Berkembang kepada sehingga panjang aksara nilai parameter
bermula pada watak yang ditentukan oleh mengimbangi. Jika parameter is @, tatasusunan diindeks
dilanggan oleh @ or *, atau nama tatasusunan bersekutu, hasilnya berbeza sebagai
terangkan di bawah. Jika panjang diabaikan, berkembang ke subrentetan nilai
parameter bermula pada watak yang ditentukan oleh mengimbangi dan memanjang hingga akhir
nilai. panjang and mengimbangi ialah ungkapan aritmetik (lihat ARITMETIK PENILAIAN
di bawah).

If mengimbangi menilai kepada nombor kurang daripada sifar, nilai digunakan sebagai offset dalam
aksara daripada akhir nilai parameter. Jika panjang menilai kepada nombor
kurang daripada sifar, ia ditafsirkan sebagai offset dalam aksara dari penghujung
nilai parameter bukannya beberapa aksara, dan pengembangannya ialah
watak antara mengimbangi dan keputusan itu. Ambil perhatian bahawa offset negatif mestilah
dipisahkan daripada kolon oleh sekurang-kurangnya satu ruang untuk mengelakkan keliru dengan :-
pengembangan.

If parameter is @, hasilnya adalah panjang parameter kedudukan bermula pada mengimbangi.
Yang negatif mengimbangi diambil relatif kepada satu kedudukan yang lebih besar daripada kedudukan terbesar
parameter, jadi offset -1 menilai kepada parameter kedudukan terakhir. Ia adalah
ralat pengembangan jika panjang menilai kepada nombor kurang daripada sifar.

If parameter ialah nama tatasusunan diindeks yang dilanggan oleh @ atau *, hasilnya ialah
panjang ahli tatasusunan bermula dengan ${parameter[mengimbangi]}. A negatif mengimbangi
diambil relatif kepada satu yang lebih besar daripada indeks maksimum tatasusunan yang ditentukan. Ia
adalah ralat pengembangan jika panjang menilai kepada nombor kurang daripada sifar.

Pengembangan subrentetan yang digunakan pada tatasusunan bersekutu menghasilkan hasil yang tidak ditentukan.

Pengindeksan subrentetan adalah berasaskan sifar melainkan parameter kedudukan digunakan, dalam
yang mana pengindeksan bermula pada 1 secara lalai. Jika mengimbangi ialah 0, dan kedudukannya
parameter digunakan, $0 didahulukan pada senarai.

${!awalan*}
${!awalan@}
Nama sepadan awalan. Berkembang kepada nama pembolehubah yang namanya bermula dengan
awalan, dipisahkan oleh watak pertama IFS pembolehubah khas. Bila @ is
digunakan dan pengembangan muncul dalam petikan berganda, setiap nama pembolehubah berkembang ke
perkataan yang berasingan.

${!nama[@]}
${!nama[*]}
senarai of pelbagai kunci. Jika nama ialah pembolehubah tatasusunan, berkembang kepada senarai tatasusunan
indeks (kunci) diperuntukkan dalam nama. Jika nama bukan tatasusunan, mengembang kepada 0 jika nama is
tetapkan dan batal sebaliknya. Bila @ digunakan dan pengembangan muncul dalam dua kali ganda
petikan, setiap kunci berkembang kepada perkataan yang berasingan.

${#parameter}
Parameter panjang. Panjang dalam aksara nilai bagi parameter is
digantikan. Jika parameter is * or @, nilai yang digantikan ialah bilangan
parameter kedudukan. Jika parameter ialah nama tatasusunan yang dilanggan oleh * or @, yang
nilai yang digantikan ialah bilangan elemen dalam tatasusunan. Jika parameter merupakan
nama tatasusunan diindeks dilanggan dengan nombor negatif, nombor itu ditafsirkan sebagai
relatif kepada satu yang lebih besar daripada indeks maksimum bagi parameter, jadi indeks negatif
mengira kembali dari penghujung tatasusunan, dan indeks -1 merujuk yang terakhir
elemen.

${parameter#perkataan}
${parameter##perkataan}
Batalkan sepadan awalan pola. Yang perkataan dikembangkan untuk menghasilkan corak sama seperti
dalam pengembangan nama laluan. Jika corak sepadan dengan permulaan nilai
parameter, maka hasil pengembangan ialah nilai yang dikembangkan bagi parameter bersama
corak padanan terpendek (the ``#'' kes) atau corak padanan terpanjang (the
``##'' kes) dipadamkan. Jika parameter is @ or *, operasi penyingkiran corak ialah
digunakan pada setiap parameter kedudukan secara bergilir-gilir, dan pengembangan adalah terhasil
senarai. Jika parameter ialah pembolehubah tatasusunan yang dilanggan dengan @ or *, corak itu
operasi penyingkiran digunakan pada setiap ahli tatasusunan secara bergilir-gilir, dan pengembangan
ialah senarai terhasil.

${parameter%perkataan}
${parameter%%perkataan}
Batalkan sepadan akhiran pola. Yang perkataan dikembangkan untuk menghasilkan corak sama seperti
dalam pengembangan nama laluan. Jika corak sepadan dengan bahagian mengekor yang dikembangkan
nilai parameter, maka hasil pengembangan ialah nilai yang dikembangkan bagi
parameter dengan corak padanan terpendek (``%'' kes) atau yang paling lama
corak padanan (the ``%%'' kes) dipadamkan. Jika parameter is @ or *, corak itu
operasi penyingkiran digunakan pada setiap parameter kedudukan secara bergilir-gilir, dan
pengembangan ialah senarai terhasil. Jika parameter ialah pembolehubah tatasusunan dilanggan
bersama @ or *, operasi penyingkiran corak digunakan pada setiap ahli tatasusunan
seterusnya, dan pengembangan ialah senarai terhasil.

${parameter/pola/rentetan}
corak penggantian. Yang pola dikembangkan untuk menghasilkan corak seperti dalam
pengembangan nama laluan. Parameter dikembangkan dan padanan terpanjang pola terhadap
nilainya digantikan dengan rentetan. Jika pola bermula dengan /, semua perlawanan daripada
pola diganti dengan rentetan. Biasanya hanya perlawanan pertama diganti. Jika
pola bermula dengan #, ia mesti sepadan pada permulaan nilai dikembangkan bagi
parameter. Jika pola bermula dengan %, ia mesti sepadan pada penghujung dikembangkan
nilai parameter. Jika rentetan adalah batal, padanan daripada pola dipadamkan dan /
berikutan pola boleh diketepikan. Jika parameter is @ or *, penggantian
operasi digunakan pada setiap parameter kedudukan secara bergilir-gilir, dan pengembangan ialah
senarai terhasil. Jika parameter ialah pembolehubah tatasusunan yang dilanggan dengan @ or *, yang
operasi penggantian digunakan untuk setiap ahli tatasusunan secara bergilir-gilir, dan
pengembangan ialah senarai terhasil.

${parameter^pola}
${parameter^^pola}
${parameter,pola}
${parameter,,pola}
kes pengubahsuaian. Peluasan ini mengubah suai kes aksara abjad dalam
parameter. Yang pola dikembangkan untuk menghasilkan corak seperti dalam nama laluan
pengembangan. Setiap watak dalam nilai yang diperluaskan parameter diuji terhadap
pola, dan, jika ia sepadan dengan corak, kesnya ditukar. Corak sepatutnya
tidak cuba memadankan lebih daripada satu watak. The ^ operator menukar huruf kecil
huruf padan pola kepada huruf besar; yang , operator menukar huruf besar yang sepadan
huruf kepada huruf kecil. The ^^ and ,, pengembangan menukar setiap aksara yang dipadankan ke dalam
nilai yang diperluaskan; yang ^ and , pengembangan sepadan dan menukar hanya yang pertama
watak dalam nilai yang diperluaskan. Jika pola ditinggalkan, ia dianggap seperti a ?,
yang sepadan dengan setiap watak. Jika parameter is @ or *, pengubahsuaian kes
operasi digunakan pada setiap parameter kedudukan secara bergilir-gilir, dan pengembangan ialah
senarai terhasil. Jika parameter ialah pembolehubah tatasusunan yang dilanggan dengan @ or *, yang
operasi pengubahsuaian kes digunakan untuk setiap ahli tatasusunan secara bergilir-gilir, dan
pengembangan ialah senarai terhasil.

Perintah Penggantian
Perintah penggantian membenarkan output arahan untuk menggantikan nama arahan. di sana
adalah dua bentuk:

$(arahan)
or
`arahan`

Bash melakukan pengembangan dengan melaksanakan arahan dan menggantikan penggantian arahan
dengan output standard arahan, dengan mana-mana baris baharu yang tertinggal dipadamkan. Terbenam
baris baharu tidak dipadamkan, tetapi ia mungkin dialih keluar semasa pemisahan perkataan. Perintah itu
penggantian $(kucing fail) boleh digantikan dengan yang setara tetapi lebih cepat $( fail).

Apabila bentuk penggantian petikan belakang gaya lama digunakan, garis miring ke belakang mengekalkan literalnya
ertinya kecuali apabila diikuti oleh $, `, Atau \. Petikan belakang pertama tidak didahului oleh a
garis miring terbalik menamatkan penggantian arahan. Apabila menggunakan $(arahan) bentuk, semua
aksara antara kurungan membentuk perintah; tiada yang dilayan istimewa.

Penggantian arahan mungkin bersarang. Untuk membuat sarang apabila menggunakan borang sebut harga belakang, escape the
petikan belakang dalaman dengan garis miring ke belakang.

Jika penggantian muncul dalam petikan berganda, pemisahan perkataan dan pengembangan nama laluan
tidak dilakukan pada keputusan.

Aritmetik pengembangan
Peluasan aritmetik membolehkan penilaian ungkapan aritmetik dan
penggantian hasil. Format pengembangan aritmetik ialah:

$((ungkapan))

Format lama $[ungkapan] ditamatkan dan akan dialih keluar dalam versi akan datang
bash.

. ungkapan dianggap seolah-olah dalam petikan berganda, tetapi petikan berganda di dalamnya
kurungan tidak dilayan secara khusus. Semua token dalam ungkapan menjalani parameter
dan pengembangan pembolehubah, penggantian arahan, dan penyingkiran petikan. Hasilnya dianggap sebagai
ungkapan aritmetik yang akan dinilai. Pengembangan aritmetik mungkin bersarang.

Penilaian dilakukan mengikut peraturan yang disenaraikan di bawah ARITMETIK
PENILAIAN. Jika ungkapan tidak sah, menampar mencetak mesej yang menunjukkan kegagalan dan tidak
penggantian berlaku.

Proses Penggantian
Proses penggantian disokong pada sistem yang menyokong paip bernama (FIFO) atau
/dev/fd kaedah menamakan fail terbuka. Ia mengambil bentuk <(senarai) or >(senarai). Yang
proses senarai dijalankan dengan input atau outputnya disambungkan ke a FIFO atau beberapa fail masuk /dev/fd.
Nama fail ini diluluskan sebagai hujah kepada arahan semasa sebagai hasil daripada
pengembangan. Sekiranya >(senarai) borang digunakan, menulis ke fail akan memberikan input untuk senarai.
Jika <(senarai) borang digunakan, fail yang diluluskan sebagai hujah harus dibaca untuk mendapatkan
keluaran dari senarai.

Apabila tersedia, penggantian proses dilakukan serentak dengan parameter dan
pengembangan pembolehubah, penggantian perintah, dan pengembangan aritmetik.

Perkataan Pemisahan
Cangkang mengimbas hasil pengembangan parameter, penggantian perintah dan aritmetik
pengembangan yang tidak berlaku dalam petikan berganda untuk perkataan membelah.

Cangkang merawat setiap watak IFS sebagai pembatas, dan membahagikan hasil yang lain
pengembangan kepada perkataan menggunakan aksara ini sebagai penamat medan. Jika IFS tidak ditetapkan, atau
nilainya adalah tepat , lalai, kemudian jujukan bagi , ,
and pada awal dan akhir hasil pengembangan sebelumnya adalah
diabaikan, dan sebarang urutan IFS aksara bukan pada permulaan atau akhir berfungsi untuk mengehadkan
perkataan. Jika IFS mempunyai nilai selain daripada lalai, kemudian jujukan ruang putih
aksara ruang and tab diabaikan pada awal dan akhir perkataan, selagi
aksara ruang putih adalah dalam nilai IFS (a IFS aksara ruang putih). Apa-apa watak
in IFS itu tidak IFS ruang putih, bersama-sama dengan mana-mana yang bersebelahan IFS aksara ruang putih,
mengehadkan sesuatu bidang. Urutan daripada IFS aksara ruang putih juga dianggap sebagai pembatas.
Sekiranya nilai IFS adalah batal, tiada pemisahan perkataan berlaku.

Argumen nol eksplisit ("" or '') dikekalkan. Hujah nol tersirat yang tidak dipetik,
terhasil daripada pengembangan parameter yang tidak mempunyai nilai, dikeluarkan. Sekiranya
parameter tanpa nilai dikembangkan dalam petikan berganda, hasil hujah nol dan adalah
dikekalkan.

Ambil perhatian bahawa jika tiada pengembangan berlaku, tiada pemisahan dilakukan.

Nama laluan pengembangan
Selepas pemisahan perkataan, melainkan jika -f pilihan telah ditetapkan, menampar mengimbas setiap perkataan untuk
aksara *, ?, dan [. Jika salah satu daripada watak ini muncul, maka perkataan itu dianggap sebagai
a pola, dan digantikan dengan senarai nama fail yang disusun mengikut abjad yang sepadan dengan
corak (lihat corak Pemadanan di bawah). Jika tiada nama fail yang sepadan ditemui, dan shell
pilihan nullglob tidak didayakan, perkataan dibiarkan tidak berubah. Sekiranya nullglob pilihan adalah
ditetapkan, dan tiada padanan ditemui, perkataan itu dialih keluar. Sekiranya failglob pilihan shell ditetapkan,
dan tiada padanan ditemui, mesej ralat dicetak dan arahan tidak dilaksanakan. Jika
pilihan cangkerang nocaseglob didayakan, perlawanan dilakukan tanpa mengambil kira kes itu
daripada aksara abjad. Ambil perhatian bahawa apabila menggunakan ungkapan julat seperti [az] (lihat di bawah),
huruf kes lain mungkin disertakan, bergantung pada tetapan LC_COLLATE. Apabila seorang
corak digunakan untuk pengembangan nama laluan, watak ``.'' pada permulaan nama atau
serta-merta selepas garis miring mesti dipadankan secara eksplisit, melainkan pilihan shell dotglob
ditetapkan. Apabila memadankan nama laluan, aksara slash mesti sentiasa dipadankan secara eksplisit.
Dalam kes lain, yang ``.'' watak tidak dilayan secara istimewa. Lihat penerangan tentang
shopt bawah bawah SHELL BUILTIN PERINTAH untuk penerangan tentang nocaseglob, nullglob,
failglob, dan dotglob pilihan shell.

. GLOBIGNORE pembolehubah shell boleh digunakan untuk menyekat set nama fail yang sepadan a
pola. Jika GLOBIGNORE ditetapkan, setiap nama fail sepadan yang juga sepadan dengan salah satu daripada
corak dalam GLOBIGNORE dikeluarkan daripada senarai perlawanan. Nama fail ``.'' and
``..'' selalu diabaikan apabila GLOBIGNORE ditetapkan dan bukan batal. Walau bagaimanapun, penetapan
GLOBIGNORE kepada nilai bukan nol mempunyai kesan membolehkan dotglob pilihan shell, jadi semua
nama fail lain yang bermula dengan a ``.'' akan sepadan. Untuk mendapatkan tingkah laku lama mengabaikan
nama fail yang bermula dengan a ``.'', buat ``.*'' salah satu corak dalam GLOBIGNORE. Yang
dotglob pilihan dilumpuhkan apabila GLOBIGNORE tidak ditetapkan.

corak Pemadanan

Mana-mana watak yang muncul dalam corak, selain daripada watak corak khas
diterangkan di bawah, sepadan dengan dirinya sendiri. Aksara NUL mungkin tidak berlaku dalam corak. A
garis miring terbalik melarikan diri daripada aksara berikut; garis miring ke belakang yang melarikan diri dibuang apabila
sepadan. Watak corak khas mesti dipetik jika mereka ingin dipadankan
secara literal.

Watak corak khas mempunyai makna berikut:

* Memadankan mana-mana rentetan, termasuk rentetan nol. Apabila globstar shell
pilihan didayakan, dan * digunakan dalam konteks pengembangan nama laluan, dua
bersebelahan *s digunakan sebagai corak tunggal akan sepadan dengan semua fail dan sifar atau lebih
direktori dan subdirektori. Jika diikuti oleh a /, dua bersebelahan *kehendak
hanya sepadan dengan direktori dan subdirektori.
? Padan dengan mana-mana watak tunggal.
[...] Memadankan mana-mana satu daripada aksara yang disertakan. Sepasang watak dipisahkan
dengan tanda sempang menandakan a pelbagai ungkapan; mana-mana watak yang jatuh di antara
kedua-dua aksara itu, termasuk, menggunakan penyusunan tempat semasa
urutan dan set aksara, dipadankan. Jika watak pertama berikut
yang [ ialah ! atau ^ maka mana-mana aksara yang tidak disertakan dipadankan. The
menyusun susunan aksara dalam ungkapan julat ditentukan oleh
tempat semasa dan nilai-nilai LC_COLLATE or LC_ALL pembolehubah shell,
jika ditetapkan. Untuk mendapatkan tafsiran tradisional bagi ungkapan julat,
di mana [iklan] adalah bersamaan dengan [abcd], tetapkan nilai bagi LC_ALL pembolehubah shell
kepada C, atau dayakan globasiranges pilihan shell. A - mungkin dipadankan oleh
memasukkannya sebagai watak pertama atau terakhir dalam set. A ] mungkin dipadankan
dengan memasukkannya sebagai watak pertama dalam set.

Dalam [ and ], watak kelas boleh ditentukan menggunakan sintaks
[:kelas:], Di mana kelas ialah salah satu daripada kelas berikut yang ditakrifkan dalam POSIX
standard:
alnum alfa ASCII kosong cntrl digit graf yang lebih rendah cetak titik ruang atas perkataan
xdigit
Kelas watak sepadan dengan mana-mana watak kepunyaan kelas itu. The perkataan
kelas aksara sepadan dengan huruf, digit dan aksara _.

Dalam [ and ], Sebuah kesetaraan kelas boleh ditentukan menggunakan sintaks
[=c=], yang sepadan dengan semua aksara dengan berat pengumpulan yang sama (seperti
ditakrifkan oleh tempat semasa) sebagai watak c.

Dalam [ and ], sintaks [.lambang.] sepadan dengan simbol penyusunan lambang.

Jika extglob pilihan shell didayakan menggunakan shopt builtin, beberapa corak lanjutan
operator yang sepadan diiktiraf. Dalam huraian berikut, a senarai corak ialah senarai
daripada satu atau lebih corak yang dipisahkan oleh a |. Corak komposit boleh dibentuk menggunakan satu atau
lebih daripada sub-corak berikut:

?(senarai corak)
Memadankan sifar atau satu kejadian bagi corak yang diberikan
*(senarai corak)
Memadankan sifar atau lebih kejadian bagi corak yang diberikan
+(senarai corak)
Memadankan satu atau lebih kejadian bagi corak yang diberikan
@(senarai corak)
Padan dengan salah satu corak yang diberikan
!(senarai corak)
Memadankan apa sahaja kecuali salah satu corak yang diberikan

Quote Penyingkiran
Selepas pengembangan sebelumnya, semua kejadian watak yang tidak disebutkan \, ', dan "
yang tidak terhasil daripada salah satu pengembangan di atas dikeluarkan.

PENGALIHAN


Sebelum arahan dilaksanakan, input dan outputnya mungkin diarahkan semula menggunakan khas
notasi yang ditafsirkan oleh cangkerang. Pengalihan semula membenarkan pemegang fail arahan menjadi
diduplikasi, dibuka, ditutup, dibuat untuk merujuk kepada fail yang berbeza, dan boleh menukar fail
perintah membaca dari dan menulis kepada. Ubah hala juga boleh digunakan untuk mengubah suai pemegang fail dalam
persekitaran pelaksanaan shell semasa. Pengendali ubah hala berikut mungkin mendahului
atau muncul di mana-mana dalam a mudah arahan atau boleh mengikuti a arahan. Ubah hala ialah
diproses mengikut susunan yang muncul, dari kiri ke kanan.

Setiap ubah hala yang mungkin didahului oleh nombor deskriptor fail sebaliknya boleh didahului
dengan perkataan dalam bentuk {varname}. Dalam kes ini, bagi setiap pengendali ubah hala kecuali >&-
dan <&-, shell akan memperuntukkan deskriptor fail yang lebih besar daripada atau sama dengan 10 dan menetapkan
kepada varname. Jika >&- atau <&- didahului oleh {varname}, nilai varname mentakrifkan
deskriptor fail untuk ditutup.

Dalam huraian berikut, jika nombor deskriptor fail ditinggalkan, dan yang pertama
watak pengendali ubah hala ialah <, ubah hala merujuk kepada input standard
(penerangan fail 0). Jika aksara pertama pengendali ubah hala ialah >, yang
pengalihan merujuk kepada output standard (deskriptor fail 1).

Perkataan yang mengikuti operator ubah hala dalam huraian berikut, melainkan
sebaliknya, tertakluk kepada pengembangan pendakap, pengembangan tilde, parameter dan pembolehubah
pengembangan, penggantian perintah, pengembangan aritmetik, penyingkiran petikan, pengembangan nama laluan,
dan pemisahan perkataan. Jika ia berkembang kepada lebih daripada satu perkataan, menampar melaporkan ralat.

Ambil perhatian bahawa susunan ubah hala adalah penting. Sebagai contoh, arahan

ls > dirlist 2>&1

mengarahkan kedua-dua output standard dan ralat standard ke fail dirlist, manakala perintah

ls 2>&1 > dirlist

hanya mengarahkan output standard ke fail dirlist, kerana ralat standard ialah
diduplikasi daripada keluaran piawai sebelum keluaran piawai dihalakan semula ke dirlist.

Bash mengendalikan beberapa nama fail khususnya apabila ia digunakan dalam ubah hala, seperti yang diterangkan
dalam jadual berikut:

/dev/fd/fd
If fd ialah integer yang sah, deskriptor fail fd adalah pendua.
/dev/stdin
Deskriptor fail 0 diduakan.
/dev/stdout
Deskriptor fail 1 diduakan.
/dev/stderr
Deskriptor fail 2 diduakan.
/dev/tcp/tuan rumah/pelabuhan
If tuan rumah ialah nama hos atau alamat Internet yang sah, dan pelabuhan ialah port integer
nombor atau nama perkhidmatan, menampar cuba membuka soket TCP yang sepadan.
/dev/udp/tuan rumah/pelabuhan
If tuan rumah ialah nama hos atau alamat Internet yang sah, dan pelabuhan ialah port integer
nombor atau nama perkhidmatan, menampar cuba membuka soket UDP yang sepadan.

Kegagalan untuk membuka atau mencipta fail menyebabkan ubah hala gagal.

Ubah hala menggunakan deskriptor fail yang lebih besar daripada 9 harus digunakan dengan berhati-hati, kerana ia mungkin
konflik dengan deskriptor fail yang digunakan oleh shell secara dalaman.

Ambil perhatian bahawa exec arahan terbina boleh membuat ubah hala berkuat kuasa dalam shell semasa.

Mengarahkan semula Input
Pengalihan semula input menyebabkan fail yang namanya terhasil daripada pengembangan perkataan menjadi
dibuka untuk dibaca pada deskriptor fail n, atau input standard (penerangan fail 0) jika n is
tidak dinyatakan.

Format umum untuk mengubah hala input ialah:

[n]<perkataan

Mengarahkan semula Output
Pengalihan semula output menyebabkan fail yang namanya terhasil daripada pengembangan perkataan menjadi
dibuka untuk menulis pada deskriptor fail n, atau output standard (penerangan fail 1) jika n
tidak dinyatakan. Jika fail tidak wujud ia dicipta; jika ia wujud ia adalah
dipenggal kepada saiz sifar.

Format umum untuk mengubah hala keluaran ialah:

[n]>perkataan

Jika pengendali ubah hala ialah >, Dan noclobber pilihan untuk menetapkan builtin telah
didayakan, ubah hala akan gagal jika fail yang namanya terhasil daripada pengembangan
perkataan wujud dan merupakan fail biasa. Jika pengendali ubah hala ialah >|, atau ubah hala
pengendali adalah > dan juga noclobber pilihan untuk menetapkan arahan terbina tidak didayakan, the
pengalihan dicuba walaupun fail dinamakan oleh perkataan wujud.

Melampirkan Dihalakan semula Output
Pengalihan semula output dalam cara ini menyebabkan fail yang namanya terhasil daripada
pengembangan daripada perkataan dibuka untuk dilampirkan pada deskriptor fail n, atau output standard
(penerangan fail 1) jika n tidak dinyatakan. Jika fail tidak wujud, ia dicipta.

Format umum untuk menambahkan output ialah:

[n]>>perkataan

Mengarahkan semula Standard Output and Standard ralat
Pembinaan ini membenarkan kedua-dua output standard (deskriptor fail 1) dan ralat standard
output (penerangan fail 2) untuk diubah hala ke fail yang namanya pengembangan
perkataan.

Terdapat dua format untuk mengubah hala output standard dan ralat standard:

&>perkataan
and
>&perkataan

Daripada kedua-dua bentuk, yang pertama diutamakan. Ini secara semantik bersamaan dengan

>perkataan 2>&1

Apabila menggunakan borang kedua, perkataan mungkin tidak berkembang kepada nombor atau -. Jika ia berlaku, lain-lain
pengendali pengalihan terpakai (lihat Pendua File Deskriptor di bawah) untuk keserasian
sebab.

Melampirkan Standard Output and Standard ralat
Pembinaan ini membenarkan kedua-dua output standard (deskriptor fail 1) dan ralat standard
output (penerangan fail 2) untuk dilampirkan pada fail yang namanya pengembangan perkataan.

Format untuk menambahkan output standard dan ralat standard ialah:

&>>perkataan

Ini secara semantik bersamaan dengan

>>perkataan 2>&1

(Lihat Pendua File Deskriptor di bawah).

Di sini dokumen
Jenis pengalihan ini mengarahkan shell membaca input daripada sumber semasa sehingga a
baris yang mengandungi sahaja pembatas (tanpa kosong mengekor) dilihat. Semua baris dibaca
sehingga titik itu kemudian digunakan sebagai input standard untuk arahan.

Format dokumen di sini ialah:

<<[-]perkataan
di sini-dokumen
pembatas

Tiada parameter dan pengembangan pembolehubah, penggantian arahan, pengembangan aritmetik, atau
pengembangan nama laluan dilakukan pada perkataan. Jika ada aksara dalam perkataan dipetik, yang
pembatas adalah hasil daripada penyingkiran sebut harga pada perkataan, dan baris dalam dokumen di sini ialah
tidak diperluaskan. Jika perkataan tidak disebut, semua baris dokumen di sini tertakluk kepada
pengembangan parameter, penggantian perintah, dan pengembangan aritmetik, aksara
turutan \ diabaikan, dan \ mesti digunakan untuk memetik watak \, $, dan `.

Jika pengendali ubah hala ialah <<-, maka semua aksara tab terkemuka dilucutkan daripadanya
baris input dan baris yang mengandungi pembatas. Ini membenarkan di sini-dokumen dalam shell
skrip untuk diinden secara semula jadi.

Di sini Rentetan
Satu varian dokumen di sini, formatnya ialah:

<<perkataan

. perkataan mengalami pengembangan pendakap, pengembangan tilde, parameter dan pengembangan berubah,
penggantian perintah, pengembangan aritmetik dan penyingkiran petikan. Peluasan nama laluan dan
pembelahan perkataan tidak dilakukan. Hasilnya dibekalkan sebagai rentetan tunggal kepada
arahan pada input standardnya.

Pendua File Deskriptor
Pengendali ubah hala

[n]<&perkataan

digunakan untuk menduplikasi deskriptor fail input. Jika perkataan mengembang kepada satu atau lebih digit, iaitu
deskriptor fail dilambangkan dengan n dibuat untuk menjadi salinan deskriptor fail tersebut. Jika digit
in perkataan jangan nyatakan deskriptor fail yang dibuka untuk input, ralat ubah hala berlaku. Jika
perkataan menilai untuk -, deskriptor fail n ditutup. Jika n tidak dinyatakan, standard
input (penerangan fail 0) digunakan.

Pengendali

[n]>&perkataan

digunakan sama dengan deskriptor fail output pendua. Jika n tidak dinyatakan, iaitu
output standard (deskriptor fail 1) digunakan. Jika digit masuk perkataan jangan nyatakan fail
deskriptor terbuka untuk output, ralat pengalihan berlaku. Jika perkataan menilai untuk -, fail
deskriptor n ditutup. Sebagai kes khas, jika n ditinggalkan, dan perkataan tidak berkembang ke
satu atau lebih digit atau -, keluaran standard dan ralat standard diubah hala sebagai
diterangkan sebelum ini.

bergerak File Deskriptor
Pengendali ubah hala

[n]<&digit-

menggerakkan deskriptor fail digit ke fail deskriptor n, atau input standard (file
deskriptor 0) jika n tidak dinyatakan. digit ditutup selepas diduakan kepada n.

Begitu juga, pengendali ubah hala

[n]>&digit-

menggerakkan deskriptor fail digit ke fail deskriptor n, atau output standard (file
deskriptor 1) jika n tidak dinyatakan.

Pembukaan File Deskriptor Untuk Reading and Penulisan
Pengendali ubah hala

[n]<>perkataan

menyebabkan fail yang namanya pengembangan perkataan untuk dibuka untuk kedua-dua bacaan dan
menulis pada deskriptor fail n, atau pada deskriptor fail 0 jika n tidak dinyatakan. Jika fail
tidak wujud, ia dicipta.

ALIASES


alias benarkan rentetan digantikan dengan perkataan apabila ia digunakan sebagai perkataan pertama a
perintah mudah. Cangkang mengekalkan senarai alias yang mungkin ditetapkan dan dinyahsetkan dengan
alias and Unalias arahan terbina (lihat SHELL BUILTIN PERINTAH di bawah). Perkataan pertama daripada
setiap arahan mudah, jika tidak disebut, disemak untuk melihat sama ada ia mempunyai alias. Jika ya, perkataan itu
digantikan dengan teks alias. watak-watak /, $, `, dan = dan mana-mana cangkerang
metakarakter atau memetik aksara yang disenaraikan di atas mungkin tidak muncul dalam nama alias. The
teks gantian mungkin mengandungi sebarang input shell yang sah, termasuk metacharacters shell. The
perkataan pertama teks gantian diuji untuk alias, tetapi perkataan yang serupa dengan
alias yang dikembangkan tidak dikembangkan untuk kali kedua. Ini bermakna seseorang mungkin alias ls
kepada ls -F, sebagai contoh, dan menampar tidak cuba mengembangkan teks gantian secara rekursif.
Jika aksara terakhir nilai alias ialah a kosong, kemudian perkataan perintah seterusnya mengikuti
alias juga disemak untuk pengembangan alias.

Alias ​​dicipta dan disenaraikan dengan alias arahan, dan dikeluarkan dengan Unalias
perintah.

Tiada mekanisme untuk menggunakan hujah dalam teks gantian. Jika hujah adalah
diperlukan, fungsi shell harus digunakan (lihat FUNGSI di bawah).

Alias ​​tidak dikembangkan apabila shell tidak interaktif, melainkan jika kembangkan_alias
pilihan shell ditetapkan menggunakan shopt (lihat penerangan tentang shopt di bawah SHELL BUILTIN PERINTAH
di bawah).

Peraturan mengenai definisi dan penggunaan alias agak mengelirukan. Bash
sentiasa membaca sekurang-kurangnya satu baris input lengkap sebelum melaksanakan mana-mana arahan pada
garisan itu. Alias ​​dikembangkan apabila arahan dibaca, bukan apabila ia dilaksanakan.
Oleh itu, definisi alias yang muncul pada baris yang sama dengan arahan lain tidak diambil
kesan sehingga baris input seterusnya dibaca. Perintah mengikuti definisi alias
pada baris itu tidak dipengaruhi oleh alias baharu. Tingkah laku ini juga menjadi isu apabila
fungsi dilaksanakan. Alias ​​dikembangkan apabila definisi fungsi dibaca, bukan apabila
fungsi itu dilaksanakan, kerana definisi fungsi itu sendiri adalah perintah kompaun. Sebagai
akibatnya, alias yang ditakrifkan dalam fungsi tidak tersedia sehingga selepas fungsi itu
dilaksanakan. Untuk selamat, sentiasa letakkan definisi alias pada baris yang berasingan dan jangan gunakan
alias dalam perintah majmuk.

Untuk hampir setiap tujuan, alias digantikan oleh fungsi shell.

FUNGSI


Fungsi shell, ditakrifkan seperti yang diterangkan di atas di bawah SHELL GRAMMAR, menyimpan satu siri
arahan untuk pelaksanaan kemudian. Apabila nama fungsi shell digunakan sebagai mudah
nama arahan, senarai arahan yang dikaitkan dengan nama fungsi itu dilaksanakan.
Fungsi dilaksanakan dalam konteks shell semasa; tiada proses baru dicipta untuk
tafsirkannya (bezakan ini dengan pelaksanaan skrip shell). Apabila sesuatu fungsi adalah
dilaksanakan, argumen kepada fungsi menjadi parameter kedudukan semasanya
perlaksanaan. Parameter khas # dikemas kini untuk mencerminkan perubahan. Parameter khas 0
tidak berubah. Elemen pertama bagi FUNCNAME pembolehubah ditetapkan kepada nama
berfungsi semasa fungsi sedang dilaksanakan.

Semua aspek lain dalam persekitaran pelaksanaan shell adalah sama antara fungsi dan
pemanggilnya dengan pengecualian ini: the HUTANG and PULANG BALIK perangkap (lihat penerangan tentang
perangkap terbina di bawah SHELL BUILTIN PERINTAH di bawah) tidak diwarisi melainkan fungsi mempunyai
telah diberikan mengesan atribut (lihat penerangan tentang mengisytiharkan terbina di bawah) atau
-o functrace pilihan shell telah didayakan dengan menetapkan builtin (dalam hal ini semua
fungsi mewarisi HUTANG and PULANG BALIK perangkap), dan ERR perangkap tidak diwarisi melainkan
yang -o errtrace pilihan shell telah didayakan.

Pembolehubah setempat kepada fungsi boleh diisytiharkan dengan tempatan arahan terbina.
Biasanya, pembolehubah dan nilainya dikongsi antara fungsi dan pemanggilnya.

. PALING SENANG pembolehubah, jika ditetapkan kepada nilai angka yang lebih besar daripada 0, mentakrifkan maksimum
tahap bersarang fungsi. Seruan fungsi yang melebihi had menyebabkan keseluruhan
perintah menggugurkan kandungan.

Jika arahan terbina pulangan dilaksanakan dalam fungsi, fungsi selesai dan
pelaksanaan diteruskan dengan arahan seterusnya selepas panggilan fungsi. Sebarang arahan yang berkaitan
dengan PULANG BALIK perangkap dilaksanakan sebelum pelaksanaan disambung semula. Apabila fungsi selesai,
nilai parameter kedudukan dan parameter khas # dikembalikan kepada nilai
mereka ada sebelum pelaksanaan fungsi itu.

Nama fungsi dan definisi mungkin disenaraikan dengan -f pilihan untuk mengisytiharkan or set taip
arahan terbina. The -F pilihan untuk mengisytiharkan or set taip akan menyenaraikan nama fungsi sahaja
(dan pilihan fail sumber dan nombor baris, jika extdebug pilihan shell didayakan).
Fungsi boleh dieksport supaya subkulit secara automatik menentukannya dengan -f
pilihan untuk mengeksport terbina. Definisi fungsi boleh dipadamkan menggunakan -f pilihan untuk
yang tidak tenteram terbina. Ambil perhatian bahawa fungsi shell dan pembolehubah dengan nama yang sama mungkin terhasil
dalam berbilang entri yang dinamakan serupa dalam persekitaran yang diserahkan kepada anak-anak shell.
Penjagaan harus diambil dalam kes di mana ini boleh menyebabkan masalah.

Fungsi mungkin rekursif. The PALING SENANG pembolehubah boleh digunakan untuk mengehadkan kedalaman
timbunan panggilan fungsi dan hadkan bilangan seruan fungsi. Secara lalai, tiada had
dikenakan ke atas bilangan panggilan rekursif.

ARITMETIK PENILAIAN


Cangkang membenarkan ungkapan aritmetik untuk dinilai, dalam keadaan tertentu (lihat
yang biarkan and mengisytiharkan arahan terbina dan Aritmetik pengembangan). Penilaian dilakukan dalam
integer lebar tetap tanpa semakan limpahan, walaupun pembahagian dengan 0 terperangkap dan
dibenderakan sebagai ralat. Pengendali dan keutamaan, pergaulan dan nilainya ialah
sama seperti dalam bahasa C. Senarai pengendali berikut dikumpulkan ke dalam tahap
pengendali keutamaan yang sama. Tahap disenaraikan mengikut keutamaan yang berkurangan.

id++ id--
pembolehubah selepas kenaikan dan pasca pengurangan
++id --id
pra-kenaikan dan pra-penurunan berubah
- + satu tolak dan tambah
! ~ penafian logik dan bitwise
** eksponen
* / % darab, bahagi, baki
+ - penambahan, penolakan
<< >> kiri dan kanan beralih bitwise
<= >= < >
perbandingan
== != kesamarataan dan ketidaksamaan
& bitwise DAN
^ bitwise eksklusif ATAU
| bitwise ATAU
&& logik DAN
|| logik ATAU
expr?expr:expr
pengendali bersyarat
= *= /= %= += -= << = >> = &= ^= |=
tugasan
expr1 , expr2
koma

Pembolehubah shell dibenarkan sebagai operan; pengembangan parameter dilakukan sebelum
ekspresi dinilai. Dalam ungkapan, pembolehubah shell juga boleh dirujuk oleh
nama tanpa menggunakan sintaks pengembangan parameter. Pembolehubah shell yang batal atau tidak ditetapkan
menilai kepada 0 apabila dirujuk dengan nama tanpa menggunakan sintaks pengembangan parameter. The
nilai pembolehubah dinilai sebagai ungkapan aritmetik apabila ia dirujuk, atau
apabila pembolehubah yang telah diberi integer atribut menggunakan mengisytiharkan -i ditugaskan a
nilai. Nilai nol dinilai kepada 0. Pembolehubah shell tidak perlu mempunyainya integer atribut
dihidupkan untuk digunakan dalam ungkapan.

Pemalar dengan 0 di hadapan ditafsirkan sebagai nombor perlapanan. 0x atau 0X terkemuka menandakan
perenambelasan. Jika tidak, nombor dalam bentuk [asas#]n, di mana pilihan asas ialah
nombor perpuluhan antara 2 dan 64 mewakili asas aritmetik, dan n ialah nombor dalam
pangkalan itu. Jika asas# ditinggalkan, maka asas 10 digunakan. Apabila menyatakan n, digit
lebih besar< daripada 9 diwakili oleh huruf kecil, huruf besar, @, dan _,
mengikut susunan itu. Jika asas adalah kurang daripada atau sama dengan 36, huruf kecil dan huruf besar boleh
digunakan secara bergantian untuk mewakili nombor antara 10 dan 35.

Operator dinilai mengikut keutamaan. Sub-ungkapan dalam kurungan ialah
dinilai dahulu dan boleh mengatasi peraturan keutamaan di atas.

SYARAT EKSPRESI


Ungkapan bersyarat digunakan oleh [[ perintah kompaun dan ujian and [ dibina
arahan untuk menguji atribut fail dan melakukan perbandingan rentetan dan aritmetik.
Ungkapan terbentuk daripada primer unari atau binari berikut. Jika ada fail hujah
kepada salah satu yang utama adalah dalam bentuk /dev/fd/n, kemudian deskriptor fail n disemak. Jika
yang fail hujah kepada salah satu daripada utama adalah salah satu daripada /dev/stdin, /dev/stdout, Atau
/dev/stderr, deskriptor fail 0, 1, atau 2, masing-masing, diperiksa.

Melainkan dinyatakan sebaliknya, primer yang beroperasi pada fail mengikut pautan simbolik dan
beroperasi pada sasaran pautan, bukannya pautan itu sendiri.

Apabila digunakan dengan [[, yang < and > operator mengisih secara leksikografi menggunakan tempat semasa.
. ujian isihan arahan menggunakan pesanan ASCII.

-a fail
Benar jika fail wujud.
-b fail
Benar jika fail wujud dan merupakan fail khas blok.
-c fail
Benar jika fail wujud dan merupakan fail khas aksara.
-d fail
Benar jika fail wujud dan merupakan direktori.
-e fail
Benar jika fail wujud.
-f fail
Benar jika fail wujud dan merupakan fail biasa.
-g fail
Benar jika fail wujud dan ialah set-group-id.
-h fail
Benar jika fail wujud dan merupakan pautan simbolik.
-k fail
Benar jika fail wujud dan bit ``melekit'nya ditetapkan.
-p fail
Benar jika fail wujud dan merupakan paip bernama (FIFO).
-r fail
Benar jika fail wujud dan boleh dibaca.
-s fail
Benar jika fail wujud dan mempunyai saiz lebih besar daripada sifar.
-t fd Benar jika deskriptor fail fd terbuka dan merujuk kepada terminal.
-u fail
Benar jika fail wujud dan bit set-user-idnya ditetapkan.
-w fail
Benar jika fail wujud dan boleh ditulis.
-x fail
Benar jika fail wujud dan boleh dilaksanakan.
-G fail
Benar jika fail wujud dan dimiliki oleh id kumpulan berkesan.
-L fail
Benar jika fail wujud dan merupakan pautan simbolik.
-N fail
Benar jika fail wujud dan telah diubah suai sejak kali terakhir dibaca.
-O fail
Benar jika fail wujud dan dimiliki oleh id pengguna yang berkesan.
-S fail
Benar jika fail wujud dan merupakan soket.
file1 -jika file2
Benar jika file1 and file2 rujuk kepada peranti dan nombor inod yang sama.
file1 -nt file2
Benar jika file1 adalah lebih baru (mengikut tarikh pengubahsuaian) daripada file2, atau jika file1
wujud dan file2 tidak.
file1 -ot file2
Benar jika file1 lebih tua dari file2, atau jika file2 wujud dan file1 tidak.
-o optname
Benar jika pilihan shell optname didayakan. Lihat senarai pilihan di bawah
penerangan tentang -o pilihan untuk menetapkan terbina di bawah.
-v varname
Benar jika pembolehubah shell varname ditetapkan (telah diberikan nilai).
-R varname
Benar jika pembolehubah shell varname ditetapkan dan merupakan rujukan nama.
-z rentetan
Benar jika panjang rentetan adalah sifar.
rentetan
-n rentetan
Benar jika panjang rentetan bukan sifar.

string1 == string2
string1 = string2
Benar jika rentetannya sama. = hendaklah digunakan dengan ujian arahan untuk POSIX
pematuhan. Apabila digunakan dengan [[ arahan, ini melakukan padanan corak sebagai
diterangkan di atas (Kompaun arahan).

string1 != string2
Benar jika rentetan tidak sama.

string1 < string2
Benar jika string1 macam sebelum ni string2 secara leksikografik.

string1 > string2
Benar jika string1 macam-macam selepas string2 secara leksikografik.

arg1 OP arg2
OP adalah salah satu -persamaan, - ialah, -lt, -tempat, -gt, Atau -ge. Pengendali binari aritmetik ini
kembali benar jika arg1 adalah sama dengan, tidak sama dengan, kurang daripada, kurang daripada atau sama dengan,
lebih besar daripada, atau lebih besar daripada atau sama dengan arg2, Masing-masing. arg1 and arg2 mungkin
integer positif atau negatif.

MUDAH COMMAND EXPANSION


Apabila arahan mudah dilaksanakan, shell melakukan pengembangan berikut,
tugasan, dan ubah hala, dari kiri ke kanan.

1. Perkataan yang telah ditandakan oleh penghurai sebagai tugasan berubah-ubah (yang mendahului
nama arahan) dan ubah hala disimpan untuk pemprosesan kemudian.

2. Perkataan yang bukan tugasan berubah-ubah atau ubah hala dikembangkan. Jika ada
perkataan kekal selepas pengembangan, perkataan pertama diambil sebagai nama perintah
dan perkataan yang selebihnya adalah hujah.

3. Ubah hala dilakukan seperti yang diterangkan di atas di bawah PENGALIHAN.

4. Teks selepas = dalam setiap tugasan pembolehubah mengalami pengembangan tilde,
pengembangan parameter, penggantian perintah, pengembangan aritmetik dan penyingkiran petikan
sebelum ditugaskan kepada pembolehubah.

Jika tiada nama arahan terhasil, tugasan pembolehubah mempengaruhi persekitaran shell semasa.
Jika tidak, pembolehubah ditambahkan pada persekitaran perintah yang dilaksanakan dan tidak
menjejaskan persekitaran shell semasa. Jika mana-mana tugasan cuba memberikan a
nilai kepada pembolehubah baca sahaja, ralat berlaku, dan arahan keluar dengan bukan sifar
status.

Jika tiada nama arahan terhasil, ubah hala dilakukan, tetapi tidak menjejaskan arus
persekitaran cangkang. Ralat ubah hala menyebabkan arahan keluar dengan status bukan sifar.

Jika terdapat nama arahan yang ditinggalkan selepas pengembangan, pelaksanaan diteruskan seperti yang diterangkan di bawah.
Jika tidak, arahan keluar. Jika salah satu pengembangan mengandungi penggantian arahan,
status keluar arahan ialah status keluar bagi penggantian arahan terakhir
dilakukan. Jika tiada penggantian arahan, arahan itu akan keluar dengan status
sifar.

COMMAND PERLAKSANAAN


Selepas arahan telah dipecahkan kepada perkataan, jika ia menghasilkan perintah mudah dan a
senarai hujah pilihan, tindakan berikut diambil.

Jika nama arahan tidak mengandungi garis miring, shell cuba mencarinya. Jika ada
fungsi shell dengan nama itu, fungsi itu digunakan seperti yang diterangkan di atas dalam FUNGSI.
Jika nama tidak sepadan dengan fungsi, shell mencarinya dalam senarai shell
binaan. Jika padanan ditemui, binaan itu akan dipanggil.

Jika nama itu bukan fungsi shell mahupun builtin, dan tidak mengandungi garis miring, menampar
mencari setiap elemen PATH untuk direktori yang mengandungi fail boleh laku oleh itu
nama. Bash menggunakan jadual hash untuk mengingati nama laluan penuh fail boleh laku (lihat hash
di bawah SHELL BUILTIN PERINTAH di bawah). Carian penuh direktori dalam PATH is
dilakukan hanya jika arahan tidak ditemui dalam jadual cincang. Jika carian adalah
tidak berjaya, shell mencari fungsi shell yang ditentukan bernama
command_not_found_handle. Jika fungsi itu wujud, ia digunakan dengan yang asal
perintah dan hujah arahan asal sebagai hujahnya, dan fungsi keluar
status menjadi status keluar shell. Jika fungsi itu tidak ditakrifkan, shell
mencetak mesej ralat dan mengembalikan status keluar 127.

Jika carian berjaya, atau jika nama arahan mengandungi satu atau lebih garis miring, the
shell melaksanakan program yang dinamakan dalam persekitaran pelaksanaan yang berasingan. Hujah 0 ditetapkan
kepada nama yang diberikan, dan baki argumen kepada arahan ditetapkan kepada argumen
diberikan, jika ada.

Jika pelaksanaan ini gagal kerana fail tidak dalam format boleh laku dan fail tidak
direktori, ia diandaikan sebagai a shell skrip, fail yang mengandungi arahan shell. A
subkulit dihasilkan untuk melaksanakannya. Subkulit ini memulakan semula dirinya, supaya kesannya
adalah seolah-olah shell baru telah digunakan untuk mengendalikan skrip, dengan pengecualian bahawa
lokasi arahan yang diingati oleh ibu bapa (lihat hash bawah bawah SHELL BUILTIN
PERINTAH) disimpan oleh kanak-kanak itu.

Jika program adalah fail yang bermula dengan #!, baki baris pertama menyatakan an
jurubahasa untuk program tersebut. Cangkang melaksanakan penterjemah yang ditentukan semasa beroperasi
sistem yang tidak mengendalikan sendiri format boleh laku ini. Hujah-hujah kepada
penterjemah terdiri daripada satu hujah pilihan berikut nama penterjemah pada
baris pertama program, diikuti dengan nama program, diikuti dengan arahan
hujah, jika ada.

COMMAND PERLAKSANAAN PERSEKITARAN


Cangkang mempunyai pelaksanaan persekitaran, yang terdiri daripada yang berikut:

· buka fail yang diwarisi oleh shell semasa seruan, seperti yang diubah suai oleh ubah hala
dibekalkan ke exec dibina

· direktori kerja semasa seperti yang ditetapkan oleh cd, pushd, Atau popd, atau diwarisi oleh
shell semasa seruan

· topeng mod penciptaan fail seperti yang ditetapkan oleh umask atau diwarisi daripada induk shell

· perangkap semasa ditetapkan oleh perangkap

· parameter shell yang ditetapkan oleh pembolehubah tugasan atau dengan menetapkan atau diwarisi daripada
induk cangkerang dalam persekitaran

· fungsi shell yang ditakrifkan semasa pelaksanaan atau diwarisi daripada induk shell dalam
alam sekitar

· pilihan didayakan semasa seruan (sama ada secara lalai atau dengan argumen baris perintah) atau
by menetapkan

· pilihan didayakan oleh shopt

· alias shell yang ditakrifkan dengan alias

· pelbagai ID proses, termasuk pekerjaan latar belakang, nilai $$, Dan
nilai PPID

Apabila arahan mudah selain daripada fungsi terbina dalam atau shell akan dilaksanakan, ia adalah
digunakan dalam persekitaran pelaksanaan berasingan yang terdiri daripada yang berikut. Melainkan
jika tidak dinyatakan, nilai diwarisi daripada shell.

· fail terbuka shell, serta sebarang pengubahsuaian dan penambahan yang ditentukan oleh
ubah hala kepada arahan

· direktori kerja semasa

· topeng mod penciptaan fail

· pembolehubah shell dan fungsi yang ditandakan untuk eksport, bersama-sama dengan pembolehubah yang dieksport untuk
arahan, diluluskan dalam persekitaran

· perangkap yang ditangkap oleh cangkerang ditetapkan semula kepada nilai yang diwarisi daripada cangkerang
induk, dan perangkap yang diabaikan oleh cangkerang diabaikan

Perintah yang digunakan dalam persekitaran yang berasingan ini tidak boleh menjejaskan pelaksanaan shell
persekitaran.

Penggantian perintah, perintah dikumpulkan dengan kurungan, dan perintah tak segerak adalah
digunakan dalam persekitaran subkulit yang merupakan pendua persekitaran shell, kecuali
bahawa perangkap yang ditangkap oleh cangkerang ditetapkan semula kepada nilai yang diwarisi cangkerang daripadanya
ibu bapa semasa memohon. Perintah terbina yang digunakan sebagai sebahagian daripada saluran paip juga
dilaksanakan dalam persekitaran subkulit. Perubahan yang dibuat pada persekitaran subkulit tidak boleh
menjejaskan persekitaran pelaksanaan shell.

Subkulit yang dihasilkan untuk melaksanakan penggantian perintah mewarisi nilai -e pilihan dari
cangkerang induk. Apabila tidak masuk posix mod, menampar membersihkan -e pilihan dalam subkulit tersebut.

Jika arahan diikuti oleh a & dan kawalan kerja tidak aktif, input standard lalai
kerana arahan adalah fail kosong / dev / null. Jika tidak, arahan yang dipanggil mewarisi
deskriptor fail shell panggilan seperti yang diubah suai oleh ubah hala.

PERSEKITARAN


Apabila program dipanggil, ia diberikan tatasusunan rentetan yang dipanggil persekitaran. Ini adalah
senarai nama-nilai pasangan, daripada bentuk nama=nilai.

Cangkang menyediakan beberapa cara untuk memanipulasi persekitaran. Pada seruan, shell
mengimbas persekitarannya sendiri dan mencipta parameter untuk setiap nama yang ditemui, secara automatik
menandakannya untuk mengeksport kepada proses kanak-kanak. Perintah yang dilaksanakan mewarisi persekitaran. The
mengeksport and mengisytiharkan -x arahan membenarkan parameter dan fungsi ditambah dan dipadamkan
daripada persekitaran. Jika nilai parameter dalam persekitaran diubah suai, nilai baharu
nilai menjadi sebahagian daripada persekitaran, menggantikan yang lama. Persekitaran yang diwarisi oleh
sebarang arahan yang dilaksanakan terdiri daripada persekitaran awal shell, yang nilainya mungkin
diubah suai dalam cangkerang, kurang mana-mana pasangan yang dikeluarkan oleh tidak tenteram arahan, serta sebarang tambahan melalui
yang mengeksport and mengisytiharkan -x menyuruh.

Persekitaran untuk mana-mana mudah arahan atau fungsi boleh ditambah buat sementara waktu oleh
memberi awalan dengan penetapan parameter, seperti yang diterangkan di atas dalam PARAMETER. Ini
penyataan tugasan hanya mempengaruhi persekitaran yang dilihat oleh arahan itu.

Jika -k pilihan ditetapkan (lihat menetapkan arahan terbina di bawah), kemudian semua parameter
tugasan diletakkan dalam persekitaran untuk arahan, bukan hanya yang mendahului
nama arahan.

Bila menampar memanggil arahan luaran, pembolehubah _ ditetapkan kepada nama fail penuh
perintah dan diserahkan kepada perintah itu dalam persekitarannya.

EXIT STATUS


Status keluar perintah yang dilaksanakan ialah nilai yang dikembalikan oleh waitpid panggilan sistem atau
fungsi yang setara. Status keluar jatuh antara 0 dan 255, walaupun, seperti yang dijelaskan di bawah,
shell mungkin menggunakan nilai melebihi 125 secara khusus. Keluar status daripada shell builtin dan
arahan kompaun juga terhad kepada julat ini. Dalam keadaan tertentu, cangkerang
akan menggunakan nilai khas untuk menunjukkan mod kegagalan tertentu.

Untuk tujuan shell, arahan yang keluar dengan status keluar sifar telah berjaya. An
status keluar sifar menunjukkan kejayaan. Status keluar bukan sifar menunjukkan kegagalan. Apabila a
arahan ditamatkan pada isyarat maut N, menampar menggunakan nilai 128+N sebagai status keluar.

Jika arahan tidak ditemui, proses anak yang dibuat untuk melaksanakannya mengembalikan status
127. Jika arahan ditemui tetapi tidak boleh dilaksanakan, status pulangan ialah 126.

Jika arahan gagal kerana ralat semasa pengembangan atau pengalihan, status keluar ialah
lebih besar daripada sifar.

Perintah terbina dalam Shell mengembalikan status 0 (benar) jika berjaya, dan bukan sifar (palsu) jika
ralat berlaku semasa mereka melaksanakan. Semua binaan mengembalikan status keluar 2 untuk ditunjukkan
penggunaan yang tidak betul.

Bash sendiri mengembalikan status keluar perintah terakhir yang dilaksanakan, melainkan ralat sintaks
berlaku, dalam hal ini ia keluar dengan nilai bukan sifar. Lihat juga keluar arahan terbina
di bawah.

ISYARAT


Bila menampar adalah interaktif, jika tiada sebarang perangkap, ia mengabaikan TANDATANGAN (supaya membunuh 0
tidak membunuh shell interaktif), dan SIGINT ditangkap dan dikendalikan (supaya tunggu
builtin boleh terganggu). Dalam semua kes, menampar mengabaikan TANDATANGAN. Jika kawalan kerja ada
kesan, menampar mengabaikan SIGTTIN, SIGTTOU, dan SIGTSTP.

Arahan bukan terbina yang dijalankan oleh menampar mempunyai pengendali isyarat yang ditetapkan kepada nilai yang diwarisi oleh
cangkerang daripada induknya. Apabila kawalan kerja tidak berkuat kuasa, arahan tak segerak diabaikan
SIGINT and TANDATANGAN sebagai tambahan kepada pengendali yang diwarisi ini. Perintah dijalankan akibat daripada
penggantian arahan mengabaikan isyarat kawalan kerja yang dijana papan kekunci SIGTTIN, SIGTTOU,
and SIGTSTP.

Cangkang keluar secara lalai apabila menerima a PENDAPATAN. Sebelum keluar, shell interaktif
menghantar semula PENDAPATAN kepada semua pekerjaan, berjalan atau berhenti. Pekerjaan yang dihentikan dihantar TANDATANGAN kepada
memastikan bahawa mereka menerima PENDAPATAN. Untuk menghalang shell daripada menghantar isyarat kepada a
kerja tertentu, ia harus dialih keluar daripada jadual kerja dengan tidak dibenarkan terbina (lihat
SHELL BUILTIN PERINTAH di bawah) atau ditandakan untuk tidak menerima PENDAPATAN menggunakan tidak dibenarkan -h.

Jika huponexit pilihan shell telah ditetapkan dengan shopt, menampar menghantar a PENDAPATAN kepada semua pekerjaan
apabila shell log masuk interaktif keluar.

If menampar sedang menunggu arahan untuk dilengkapkan dan menerima isyarat yang mempunyai perangkap
telah ditetapkan, perangkap tidak akan dilaksanakan sehingga arahan selesai. Bila menampar sedang menunggu
untuk arahan tak segerak melalui tunggu builtin, penerimaan isyarat yang a
perangkap telah ditetapkan akan menyebabkan tunggu builtin untuk kembali dengan segera dengan status keluar
lebih besar daripada 128, serta-merta selepas itu perangkap dilaksanakan.

JOB KAWALAN


Kerja kawalan merujuk kepada keupayaan untuk berhenti secara selektif (Menggantung) pelaksanaan proses
dan teruskan (resume) pelaksanaan mereka pada satu masa kemudian. Pengguna biasanya menggunakan ini
kemudahan melalui antara muka interaktif yang dibekalkan bersama oleh kernel sistem pengendalian
pemandu terminal dan menampar.

Cangkang bersekutu a kerja dengan setiap saluran paip. Ia menyimpan jadual yang sedang dilaksanakan
pekerjaan, yang mungkin disenaraikan dengan pekerjaan perintah. Bila menampar memulakan kerja secara tidak segerak
(di dalam latar belakang), ia mencetak baris yang kelihatan seperti:

[1] 25647/XNUMX/XNUMX

menunjukkan bahawa tugas ini ialah tugas nombor 1 dan ID proses proses terakhir masuk
talian paip yang dikaitkan dengan kerja ini ialah 25647. Semua proses dalam satu saluran paip
adalah ahli pekerjaan yang sama. Bash menggunakan kerja abstraksi sebagai asas kawalan kerja.

Untuk memudahkan pelaksanaan antara muka pengguna kepada kawalan kerja, operasi
sistem mengekalkan tanggapan a semasa terminal proses kumpulan ID. Ahli ini
kumpulan proses (proses yang ID kumpulan prosesnya sama dengan proses terminal semasa
ID kumpulan) menerima isyarat yang dihasilkan papan kekunci seperti SIGINT. Proses-proses ini dikatakan
berada dalam latar depan. Latar Belakang proses ialah proses yang ID kumpulan prosesnya berbeza
terminal; proses sedemikian adalah kebal kepada isyarat yang dihasilkan papan kekunci. Hanya latar depan
proses dibenarkan untuk membaca daripada atau, jika pengguna menyatakan demikian dengan stty tostop, tulis kepada
terminal itu. Proses latar belakang yang cuba membaca daripada (tulis ke apabila stty tostop
sedang berkuat kuasa) terminal dihantar a SIGTTIN (SIGTTOU) isyarat oleh terminal kernel
pemandu, yang, melainkan ditangkap, menangguhkan proses.

Jika sistem pengendalian yang menampar berjalan menyokong kawalan kerja, menampar mengandungi
kemudahan untuk menggunakannya. Menaip Menggantung watak (biasanya ^Z, Control-Z) manakala a
proses sedang berjalan menyebabkan proses itu dihentikan dan mengembalikan kawalan kepada menampar. Menaip
yang lambat Menggantung watak (biasanya ^Y, Control-Y) menyebabkan proses dihentikan
apabila ia cuba membaca input daripada terminal, dan kawalan untuk dikembalikan menampar. Yang
pengguna kemudian boleh memanipulasi keadaan kerja ini, menggunakan bg perintah untuk meneruskannya dalam
latar belakang, yang fg perintah untuk meneruskannya di latar depan, atau membunuh perintah untuk membunuh
ia. A ^Z berkuat kuasa serta-merta, dan mempunyai kesan sampingan tambahan yang menyebabkan belum selesai
keluaran dan kepala taip untuk dibuang.

Terdapat beberapa cara untuk merujuk kepada kerja dalam shell. watak % memperkenalkan a
spesifikasi kerja (jobspec). Nombor kerja n boleh disebut sebagai %n. Pekerjaan juga mungkin
merujuk kepada menggunakan awalan nama yang digunakan untuk memulakannya, atau menggunakan subrentetan yang muncul
dalam baris arahannya. Sebagai contoh, %ce merujuk kepada berhenti ce pekerjaan. Jika awalan sepadan
lebih daripada satu pekerjaan, menampar melaporkan ralat. menggunakan %?ce, sebaliknya, merujuk kepada mana-mana
kerja yang mengandungi rentetan ce dalam baris arahannya. Jika subrentetan sepadan dengan lebih daripada satu
pekerjaan, menampar melaporkan ralat. Simbol-simbol tersebut %% and %+ merujuk kepada tanggapan cangkerang tentang
semasa kerja, yang merupakan kerja terakhir yang dihentikan semasa berada di latar depan atau dimulakan
latar belakang. The sebelumnya kerja boleh dirujuk menggunakan %-. Jika ada sahaja
pekerjaan, %+ and %- kedua-duanya boleh digunakan untuk merujuk kepada pekerjaan itu. Dalam output yang berkaitan dengan pekerjaan (cth,
keluaran daripada pekerjaan perintah), tugas semasa sentiasa dibenderakan dengan a +, Dan
pekerjaan terdahulu dengan a -. Satu % (tanpa spesifikasi kerja yang disertakan) juga merujuk kepada
pekerjaan semasa.

Hanya menamakan pekerjaan boleh digunakan untuk membawanya ke latar depan: %1 adalah sinonim untuk ``fg
% 1'', membawa tugas 1 dari latar belakang ke latar depan. Begitu juga, ``% 1 &'' resume
kerja 1 di latar belakang, bersamaan dengan ``bg % 1''.

Shell belajar serta-merta apabila sesuatu kerja berubah keadaan. Biasanya, menampar menunggu sehingga ia
akan mencetak gesaan sebelum melaporkan perubahan dalam status kerja supaya tidak
mengganggu sebarang output lain. Sekiranya -b pilihan untuk menetapkan arahan terbina didayakan, menampar
melaporkan perubahan tersebut dengan segera. Sebarang perangkap pada SIGCHLD dilaksanakan untuk setiap kanak-kanak itu
jalan keluar.

Jika percubaan untuk keluar menampar dibuat semasa pekerjaan dihentikan (atau, jika kerja semak shell
pilihan telah didayakan menggunakan shopt builtin, running), shell mencetak amaran
mesej, dan, jika kerja semak pilihan didayakan, menyenaraikan pekerjaan dan statusnya. The
pekerjaan arahan kemudiannya boleh digunakan untuk memeriksa status mereka. Jika percubaan kedua untuk keluar adalah
dibuat tanpa arahan campur tangan, shell tidak mencetak amaran lain, dan sebarang
pekerjaan yang dihentikan ditamatkan.

MENGGASUNG


Apabila melaksanakan secara interaktif, menampar memaparkan gesaan utama PS1 apabila ia bersedia untuk
membaca arahan, dan gesaan kedua PS2 apabila ia memerlukan lebih banyak input untuk melengkapkan a
perintah. Bash membenarkan rentetan gesaan ini disesuaikan dengan memasukkan beberapa
aksara khas lari segaris ke belakang yang dinyahkod seperti berikut:
\a watak loceng ASCII (07)
\d tarikh dalam format "Tarikh Bulan Hari Minggu" (cth, "Selasa 26 Mei")
\D{format}
yang format diturunkan ke masa strft(3) dan hasilnya dimasukkan ke dalam
rentetan segera; kosong format menghasilkan masa khusus setempat
perwakilan. Pendakap gigi diperlukan
\e watak melarikan diri ASCII (033)
\h nama hos sehingga `.' yang pertama
\H nama hos
\j bilangan pekerjaan yang diuruskan oleh shell pada masa ini
\l nama asas nama peranti terminal shell
\n baris baru
\r perjalanan balik kereta
\s nama cangkerang, nama dasar $0 (bahagian selepas perlawanan akhir
tebas)
\t masa semasa dalam format HH:MM:SS 24 jam
\T masa semasa dalam format HH:MM:SS 12 jam
\@ masa semasa dalam format 12 jam pagi/petang
\A masa semasa dalam format HH:MM 24 jam
\u nama pengguna pengguna semasa
\v versi menampar (cth, 2.00)
\V pembebasan menampar, versi + tahap tampalan (cth, 2.00.0)
\w direktori kerja semasa, dengan $ HOME disingkatkan dengan tilde (menggunakan
nilai PROMPT_DIRTRIM pembolehubah)
\W nama asas direktori kerja semasa, dengan $ HOME disingkatkan dengan a
tilde
\! nombor sejarah arahan ini
\# nombor arahan arahan ini
\$ jika UID berkesan ialah 0, a #, sebaliknya a $
\nnn aksara yang sepadan dengan nombor perlapanan nnn
\\ garis miring ke belakang
\[ mulakan urutan aksara bukan cetakan, yang boleh digunakan untuk membenamkan a
urutan kawalan terminal ke dalam gesaan
\] menamatkan urutan aksara bukan cetakan

Nombor arahan dan nombor sejarah biasanya berbeza: nombor sejarah a
arahan ialah kedudukannya dalam senarai sejarah, yang mungkin termasuk arahan yang dipulihkan daripada
fail sejarah (lihat SEJARAH di bawah), manakala nombor arahan ialah kedudukan dalam urutan
daripada arahan yang dilaksanakan semasa sesi shell semasa. Selepas rentetan dinyahkod, ia adalah
dikembangkan melalui pengembangan parameter, penggantian perintah, pengembangan aritmetik dan petikan
penyingkiran, tertakluk kepada nilai promptvars pilihan shell (lihat penerangan tentang
shopt perintah di bawah SHELL BUILTIN PERINTAH di bawah).

TALIAN BACA


Ini ialah perpustakaan yang mengendalikan input bacaan apabila menggunakan cangkerang interaktif, melainkan jika
--noediting pilihan diberikan semasa invokasi shell. Penyuntingan baris juga digunakan apabila menggunakan
-e pilihan untuk membaca terbina. Secara lalai, arahan pengeditan baris adalah serupa dengan arahan tersebut
daripada Emacs. Antara muka penyuntingan baris gaya vi juga tersedia. Suntingan baris boleh
didayakan pada bila-bila masa menggunakan -o emacs or -o vi pilihan kepada menetapkan terbina (lihat SHELL
BUILTIN PERINTAH di bawah). Untuk mematikan pengeditan baris selepas shell berjalan, gunakan +o
emacs or +o vi pilihan kepada menetapkan terbina dalam.

Bacaan notasi
Dalam bahagian ini, tatatanda gaya Emacs digunakan untuk menandakan ketukan kekunci. Kekunci kawalan adalah
dilambangkan dengan C-utama, cth, Cn bermaksud Kawalan-N. Begitu juga, meta kekunci dilambangkan dengan M-utama,
jadi Mx bermaksud Meta-X. (Pada papan kekunci tanpa a meta kunci, M-x bermaksud ESC x, iaitu, tekan butang
Escape key kemudiannya x kunci. Ini menjadikan ESC sebagai meta awalan. Gabungan MC-x cara
ESC-Control-x, atau tekan kekunci Escape kemudian tahan kekunci Kawalan sambil menekan kekunci x
kunci.)

Perintah baris baca boleh diberikan angka hujah, yang biasanya bertindak sebagai kiraan ulangan.
Kadang-kadang, bagaimanapun, ia adalah tanda hujah yang penting. Lulus a
hujah negatif kepada arahan yang bertindak ke arah hadapan (cth, talian bunuh) sebab
perintah itu untuk bertindak ke arah belakang. Perintah yang tingkah lakunya dengan hujah
menyimpang daripada ini dinyatakan di bawah.

Apabila perintah diterangkan sebagai membunuh teks, teks yang dipadamkan disimpan untuk masa hadapan yang mungkin
mendapatkan semula (menarik perhatian). Teks yang dibunuh disimpan dalam a membunuh cincin. Berturut-turut membunuh sebab
teks yang akan dikumpul menjadi satu unit, yang boleh ditarik sekali gus. Perintah yang
jangan bunuh teks asingkan ketulan teks pada cincin bunuh.

Bacaan Pengawalan
Readline disesuaikan dengan meletakkan arahan dalam fail permulaan (the inputrc fail).
Nama fail ini diambil daripada nilai INPUTRC pembolehubah. Jika pembolehubah itu
tidak ditetapkan, lalainya ialah ~ / .inputrc. Apabila program yang menggunakan perpustakaan baris baca
dimulakan, fail permulaan dibaca, dan pengikatan dan pembolehubah utama ditetapkan.
Terdapat hanya beberapa binaan asas yang dibenarkan dalam fail permulaan baris baca. kosong
baris diabaikan. Garisan yang bermula dengan a # adalah komen. Garisan yang bermula dengan a $
menunjukkan binaan bersyarat. Baris lain menandakan pengikatan kunci dan tetapan berubah.

Pengikatan kunci lalai boleh ditukar dengan inputrc fail. Program lain yang menggunakan
perpustakaan ini boleh menambah arahan dan binding mereka sendiri.

Sebagai contoh, meletakkan

M-Control-u: hujah-sejagat
or
C-Meta-u: hujah-universal
ke inputrc akan membuat MCu melaksanakan arahan readline hujah universal.

Nama watak simbolik berikut diiktiraf: RUBOUT, THE, ESC, LFD, BARIS BARU,
RET, PULANG BALIK, SPC, SPACE, dan TAB.

Selain nama arahan, readline membenarkan kunci diikat pada rentetan iaitu
dimasukkan apabila kekunci ditekan (a makro).

Bacaan Utama Pengikatan
Sintaks untuk mengawal pengikatan kunci dalam inputrc fail adalah mudah. Semua itu
yang diperlukan ialah nama perintah atau teks makro dan urutan kunci yang kepadanya
harus diikat. Nama boleh dinyatakan dalam salah satu daripada dua cara: sebagai nama kunci simbolik,
mungkin dengan Meta- or Kawalan- awalan, atau sebagai urutan utama.

Apabila menggunakan borang nama kunci:nama fungsi or makro, nama kunci ialah nama kunci yang dieja
keluar dalam bahasa Inggeris. Sebagai contoh:

Control-u: hujah-universal
Meta-Rubout: perkataan-membunuh-mundur
Kawalan-o: "> output"

Dalam contoh di atas, Cu terikat kepada fungsi hujah universal, M-DEL terikat dengan
fungsi perkataan-bunuh-mundur, dan Co terikat untuk menjalankan makro yang dinyatakan di sebelah kanan
sebelah tangan (iaitu, untuk memasukkan teks ``> output'' ke dalam baris).

Dalam bentuk kedua, "keyseq":nama fungsi or makro, keyseq berbeza daripada nama kunci di atas dalam
rentetan yang menandakan keseluruhan jujukan kunci boleh ditentukan dengan meletakkan jujukan
dalam petikan berganda. Beberapa escape kunci gaya GNU Emacs boleh digunakan, seperti yang berikut
contoh, tetapi nama watak simbolik tidak dikenali.

"\Cu": hujah universal
"\Cx\Cr": baca semula-init-file
"\e[11~": "Kunci Fungsi 1"

Dalam contoh ini, Cu sekali lagi terikat kepada fungsi hujah universal. Cx Cr adalah terikat
ke fungsi baca semula-init-file, dan ESC [ 1 1 ~ terikat untuk memasukkan teks ``Fungsi
Kunci 1''.

Set lengkap urutan pelarian gaya GNU Emacs ialah
\C- awalan kawalan
\M- awalan meta
\e watak melarikan diri
\\ garis belakang
\" literal "
\' literal '

Sebagai tambahan kepada urutan pelarian gaya GNU Emacs, set kedua pelarian garisan belakang adalah
didapati:
\a amaran (loceng)
\b backspace
\d memadam
\f suapan bentuk
\n baris baru
\r perjalanan balik kereta
\t tab mendatar
\v tab menegak
\nnn aksara lapan bit yang nilainya ialah nilai perlapanan nnn (satu hingga tiga
digit)
\xHH aksara lapan-bit yang nilainya ialah nilai perenambelasan HH (satu atau dua
digit hex)

Apabila memasukkan teks makro, petikan tunggal atau berganda mesti digunakan untuk menunjukkan a
definisi makro. Teks yang tidak dipetik dianggap sebagai nama fungsi. Dalam badan makro, yang
larian segaris ke belakang yang diterangkan di atas dikembangkan. Backslash akan memetik mana-mana watak lain
dalam teks makro, termasuk " dan '.

Bash membenarkan pengikatan kekunci garis baca semasa untuk dipaparkan atau diubah suai dengan mengikat
arahan terbina. Mod penyuntingan boleh ditukar semasa penggunaan interaktif dengan menggunakan -o
pilihan untuk menetapkan arahan terbina (lihat SHELL BUILTIN PERINTAH di bawah).

Bacaan Pembolehubah
Readline mempunyai pembolehubah yang boleh digunakan untuk menyesuaikan tingkah lakunya lagi. Pembolehubah boleh
ditetapkan dalam inputrc fail dengan pernyataan borang

menetapkan nama ubah nilai

Kecuali jika dinyatakan, pembolehubah baris baca boleh mengambil nilai On or off (tanpa mengambil kira
kes). Nama pembolehubah yang tidak dikenali diabaikan. Apabila nilai pembolehubah dibaca, kosongkan atau
nilai nol, "on" (tidak sensitif huruf besar-besaran), dan "1" adalah bersamaan dengan On. Semua nilai lain adalah
bersamaan dengan off. Pembolehubah dan nilai lalainya ialah:

ala loceng (boleh didengar)
Mengawal perkara yang berlaku apabila talian baca mahu membunyikan loceng terminal. Jika ditetapkan kepada
tiada, readline tidak pernah membunyikan loceng. Jika ditetapkan kepada dilihat, readline menggunakan visible
loceng jika ada. Jika ditetapkan kepada boleh didengar, garis baca cuba membunyikan
loceng terminal.
bind-tty-special-chars (Hidup)
Sekiranya ditetapkan kepada On, readline cuba untuk mengikat aksara kawalan yang dirawat khas oleh
pemacu terminal kernel kepada baris baca yang setara.
statistik berwarna (Mati)
Sekiranya ditetapkan kepada On, readline memaparkan kemungkinan penyiapan menggunakan warna yang berbeza untuk
menunjukkan jenis fail mereka. Definisi warna diambil daripada nilai
LS_COLORS pembolehubah persekitaran.
komen-mulakan (``#'')
Rentetan yang disisipkan apabila garis baca sisipan-komen arahan dilaksanakan.
Perintah ini terikat kepada M-# dalam mod emacs dan kepada # dalam mod arahan vi.
selesai-abaikan-kes (Mati)
Sekiranya ditetapkan kepada On, readline melakukan pemadanan dan penyiapan nama fail dalam a
fesyen tidak peka huruf besar-besaran.
panjang-paparan-awalan-penyusunan (0)
Panjang dalam aksara awalan biasa senarai kemungkinan penyiapan
yang dipaparkan tanpa pengubahsuaian. Apabila ditetapkan kepada nilai yang lebih besar daripada sifar,
awalan biasa yang lebih panjang daripada nilai ini digantikan dengan elipsis apabila
memaparkan kemungkinan siap.
item-pertanyaan-penyelesaian (100)
Ini menentukan apabila pengguna ditanya tentang melihat bilangan yang mungkin
penyiapan yang dihasilkan oleh kemungkinan-penyelesaian perintah. Ia boleh ditetapkan kepada mana-mana
nilai integer lebih besar daripada atau sama dengan sifar. Jika bilangan penyiapan yang mungkin
adalah lebih besar daripada atau sama dengan nilai pembolehubah ini, pengguna ditanya sama ada
atau tidak dia mahu melihatnya; jika tidak, ia hanya disenaraikan di terminal.
menukar-meta (Hidup)
Sekiranya ditetapkan kepada On, readline akan menukar aksara dengan set bit kelapan kepada ASCII
urutan kunci dengan menanggalkan bit kelapan dan menetapkan awalan aksara melarikan diri (dalam
kesan, menggunakan melarikan diri sebagai meta awalan).
lumpuhkan-penyiapan (Mati)
Sekiranya ditetapkan kepada On, readline akan menghalang pelengkapan perkataan. Watak pelengkap akan
dimasukkan ke dalam baris seolah-olah mereka telah dipetakan sisipan diri.
mod penyuntingan (emacs)
Mengawal sama ada baris baca bermula dengan set pengikatan kunci yang serupa dengan Emacs or vi.
mod penyuntingan boleh ditetapkan kepada sama ada emacs or vi.
aksara-kawalan gema (Hidup)
Apabila ditetapkan ke On, pada sistem pengendalian yang menunjukkan mereka menyokongnya, garis baca bergema
aksara yang sepadan dengan isyarat yang dihasilkan daripada papan kekunci.
dayakan-pad kekunci (Mati)
Apabila ditetapkan ke On, readline akan cuba mendayakan pad kekunci aplikasi apabila sudah
dipanggil. Sesetengah sistem memerlukan ini untuk membolehkan kekunci anak panah.
enable-meta-key (Hidup)
Apabila ditetapkan ke On, readline akan cuba mendayakan mana-mana kunci pengubah suai meta terminal
mendakwa menyokong apabila ia dipanggil. Pada banyak terminal, kunci meta digunakan untuk
menghantar aksara lapan-bit.
kembangkan-tilde (Mati)
Sekiranya ditetapkan kepada On, pengembangan tilde dilakukan apabila baris baca cuba melengkapkan perkataan.
sejarah-preserve-point (Mati)
Sekiranya ditetapkan kepada On, kod sejarah cuba meletakkan titik pada lokasi yang sama pada setiap satu
garis sejarah diambil dengan sejarah-sebelumnya or sejarah seterusnya.
saiz sejarah (0)
Tetapkan bilangan maksimum entri sejarah yang disimpan dalam senarai sejarah. Jika ditetapkan kepada
sifar, sebarang entri sejarah sedia ada dipadamkan dan tiada entri baharu disimpan. Jika
ditetapkan kepada nilai kurang daripada sifar, bilangan entri sejarah tidak terhad. Oleh
lalai, bilangan entri sejarah tidak terhad.
mod-skrol mendatar (Mati)
Apabila ditetapkan ke On, menjadikan talian baca menggunakan satu baris untuk paparan, menatal input
secara mendatar pada satu garisan skrin apabila ia menjadi lebih panjang daripada lebar skrin
daripada membalut ke baris baru.
input-meta (Mati)
Sekiranya ditetapkan kepada On, readline akan mendayakan input lapan-bit (iaitu, ia tidak akan menanggalkan
bit tinggi daripada aksara yang dibacanya), tanpa mengira apa yang terminal menuntutnya
boleh sokong. Nama meta-bendera adalah sinonim untuk pembolehubah ini.
isearch-terminators (``C-[C-J'')
Rentetan aksara yang harus menamatkan carian tambahan tanpa
seterusnya melaksanakan watak sebagai arahan. Jika pembolehubah ini belum
diberi nilai, watak-watak ESC and CJ akan menamatkan carian tambahan.
peta kunci (emacs)
Tetapkan peta kekunci garis baca semasa. Set nama peta kunci yang sah ialah emacs,
emacs-standard, emacs-meta, emacs-ctlx, vi, arahan vi, dan sisipan vi. vi is
bersamaan dengan arahan vi; emacs adalah bersamaan dengan emacs-standard. Nilai lalai
is emacs; nilai mod penyuntingan juga mempengaruhi peta kekunci lalai.
keyseq-masa tamat (500)
Menentukan tempoh garis baca akan tunggu watak bila baca ambik
jujukan kunci (yang boleh membentuk jujukan kunci lengkap menggunakan input baca jadi
jauh, atau boleh mengambil input tambahan untuk melengkapkan urutan kunci yang lebih panjang). Jika tiada input
diterima dalam masa tamat, garis baca akan menggunakan kunci yang lebih pendek tetapi lengkap
urutan. Nilai dinyatakan dalam milisaat, jadi nilai 1000 bermakna itu
garis baca akan menunggu satu saat untuk input tambahan. Jika pembolehubah ini ditetapkan kepada a
nilai kurang daripada atau sama dengan sifar, atau kepada nilai bukan angka, garis baca akan tunggu
sehingga kekunci lain ditekan untuk menentukan urutan kekunci yang hendak dilengkapkan.
mark-direktori (Hidup)
Sekiranya ditetapkan kepada On, nama direktori yang lengkap mempunyai tanda miring yang dilampirkan.
tanda-diubah suai-garis (Mati)
Sekiranya ditetapkan kepada On, baris sejarah yang telah diubah suai dipaparkan dengan yang sebelumnya
asterisk (*).
mark-symlinked-direktori (Mati)
Sekiranya ditetapkan kepada On, nama lengkap yang merupakan pautan simbolik ke direktori mempunyai garis miring
dilampirkan (tertakluk kepada nilai mark-direktori).
fail-fail tersembunyi perlawanan (Hidup)
Pembolehubah ini, apabila ditetapkan kepada On, menyebabkan baris baca sepadan dengan fail yang namanya bermula
dengan `.' (fail tersembunyi) apabila melakukan penyiapan nama fail. Jika ditetapkan kepada off, yang
memimpin `.' mesti dibekalkan oleh pengguna dalam nama fail untuk dilengkapkan.
menu-lengkap-paparan-awalan (Mati)
Sekiranya ditetapkan kepada On, penyiapan menu memaparkan awalan biasa senarai kemungkinan
penyiapan (yang mungkin kosong) sebelum berbasikal melalui senarai.
keluaran-meta (Mati)
Sekiranya ditetapkan kepada On, readline akan memaparkan aksara dengan set bit kelapan secara langsung
dan bukannya sebagai urutan pelarian awalan meta.
penyiapan halaman (Hidup)
Sekiranya ditetapkan kepada On, readline menggunakan dalaman lebih-seperti kelui untuk memaparkan skrin penuh
kemungkinan siap pada satu masa.
cetakan-penyiapan-mendatar (Mati)
Sekiranya ditetapkan kepada On, readline akan memaparkan pelengkapan dengan padanan yang diisih secara mendatar
susunan abjad, bukannya ke bawah skrin.
kembalikan-semua-di-baris baharu (Mati)
Sekiranya ditetapkan kepada On, readline akan membuat asal semua perubahan pada baris sejarah sebelum kembali bila
talian terima dilaksanakan. Secara lalai, baris sejarah boleh diubah suai dan dikekalkan
senarai asal individu merentas panggilan ke garis baca.
show-all-if-ambik (Mati)
Ini mengubah tingkah laku lalai fungsi penyiapan. Jika ditetapkan kepada On, perkataan
yang mempunyai lebih daripada satu kemungkinan penyiapan menyebabkan perlawanan disenaraikan
serta-merta dan bukannya membunyikan loceng.
tunjukkan-semua-jika-tidak diubah suai (Mati)
Ini mengubah tingkah laku lalai bagi fungsi penyiapan dalam cara yang serupa
kepada show-all-if-ambik. Jika ditetapkan kepada On, perkataan yang mempunyai lebih daripada satu kemungkinan
penyiapan tanpa sebarang kemungkinan penyiapan separa (kemungkinan penyiapan tidak
berkongsi awalan biasa) menyebabkan padanan disenaraikan serta-merta dan bukannya
membunyikan loceng.
tunjuk-mod-segera (Mati)
Sekiranya ditetapkan kepada On, tambahkan aksara pada permulaan gesaan yang menunjukkan pengeditan
mod: emacs (@), arahan vi (:) atau sisipan vi (+).
langkau-lengkap-teks (Mati)
Sekiranya ditetapkan kepada On, ini mengubah tingkah laku penyiapan lalai apabila memasukkan satu
sepadan ke dalam barisan. Ia hanya aktif apabila melakukan penyiapan di tengah-tengah
satu perkataan. Jika didayakan, readline tidak memasukkan aksara daripada pelengkapan itu
padankan aksara demi titik dalam perkataan yang sedang dilengkapkan, jadi sebahagian daripada perkataan itu
mengikuti kursor tidak diduplikasi.
statistik-terlihat (Mati)
Sekiranya ditetapkan kepada On, aksara yang menandakan jenis fail seperti yang dilaporkan oleh stat(2) dilampirkan
kepada nama fail apabila menyenaraikan kemungkinan penyiapan.

Bacaan bersyarat Konstruk
Readline melaksanakan kemudahan yang serupa dengan ciri kompilasi bersyarat
prapemproses C yang membenarkan pengikatan kunci dan tetapan pembolehubah dilakukan sebagai
hasil ujian. Terdapat empat arahan parser yang digunakan.

$jika . $jika construct membolehkan pengikatan dibuat berdasarkan mod penyuntingan, the
terminal sedang digunakan, atau aplikasi menggunakan readline. Teks ujian
memanjang ke hujung baris; tiada aksara diperlukan untuk mengasingkannya.

mod . mod= bentuk $jika arahan digunakan untuk menguji sama ada readline masuk
emacs atau mod vi. Ini boleh digunakan bersama-sama dengan menetapkan peta kunci
perintah, sebagai contoh, untuk menetapkan pengikatan dalam emacs-standard and emacs-ctlx
keymaps hanya jika readline bermula dalam mod emacs.

jangka . istilah= borang boleh digunakan untuk memasukkan pengikatan kunci khusus terminal,
mungkin untuk mengikat output jujukan kunci oleh kekunci fungsi terminal.
Perkataan di sebelah kanan = diuji terhadap kedua-dua nama penuh
terminal dan bahagian nama terminal sebelum yang pertama -. ini
membolehkan AHD untuk memadankan kedua-duanya AHD and matahari-cmd, Misalnya.

permohonan
. permohonan construct digunakan untuk memasukkan tetapan khusus aplikasi.
Setiap program yang menggunakan perpustakaan baris baca menetapkan permohonan nama, Dan
fail permulaan boleh menguji nilai tertentu. Ini boleh digunakan untuk
mengikat jujukan kunci kepada fungsi yang berguna untuk program tertentu. Untuk
contoh, arahan berikut menambah urutan kunci yang memetik arus
atau perkataan sebelumnya dalam menampar:

$jika Bash
# Petik perkataan semasa atau sebelumnya
"\C-xq": "\eb\"\ef\""
$endif

$endif Perintah ini, seperti yang dilihat dalam contoh sebelumnya, menamatkan an $jika perintah.

$else Perintah dalam cabang ini $jika arahan dilaksanakan jika ujian gagal.

$termasuk
Arahan ini mengambil satu nama fail sebagai hujah dan membaca arahan dan
pengikatan daripada fail itu. Sebagai contoh, arahan berikut akan dibaca
/etc/inputrc:

$termasuk /etc/inputrc

Mencari
Readline menyediakan arahan untuk mencari melalui sejarah arahan (lihat SEJARAH di bawah)
untuk baris yang mengandungi rentetan tertentu. Terdapat dua mod carian: tambahan and bukan
tambahan.

Carian tambahan bermula sebelum pengguna selesai menaip rentetan carian. Seperti masing-masing
watak rentetan carian ditaip, baris baca memaparkan entri seterusnya daripada sejarah
sepadan dengan rentetan yang ditaip setakat ini. Carian tambahan hanya memerlukan seberapa banyak aksara
mengikut keperluan untuk mencari catatan sejarah yang dikehendaki. Watak-watak yang terdapat dalam nilai
isearch-terminators pembolehubah digunakan untuk menamatkan carian tambahan. Jika itu
pembolehubah belum diberikan nilai aksara Escape dan Control-J akan ditamatkan
carian tambahan. Control-G akan membatalkan carian tambahan dan memulihkannya
baris asal. Apabila carian ditamatkan, entri sejarah yang mengandungi carian
rentetan menjadi baris semasa.

Untuk mencari entri padanan lain dalam senarai sejarah, taip Control-S atau Control-R sebagai
sesuai. Ini akan mencari ke belakang atau ke hadapan dalam sejarah untuk entri seterusnya
sepadan dengan rentetan carian yang ditaip setakat ini. Sebarang jujukan kunci lain yang terikat pada garis baca
arahan akan menamatkan carian dan melaksanakan arahan itu. Sebagai contoh, a baris baru akan
tamatkan carian dan terima baris, dengan itu melaksanakan arahan daripada sejarah
senarai.

Readline mengingati rentetan carian tambahan yang terakhir. Jika dua Control-R ditaip
tanpa sebarang aksara campur tangan mentakrifkan rentetan carian baharu, sebarang carian yang diingati
rentetan digunakan.

Carian bukan tambahan membaca keseluruhan rentetan carian sebelum mula mencari
garis sejarah yang sepadan. Rentetan carian boleh ditaip oleh pengguna atau menjadi sebahagian daripada
kandungan baris semasa.

Bacaan Perintah Nama
Berikut ialah senarai nama arahan dan jujukan kunci lalai kepada
yang mereka terikat. Nama arahan tanpa urutan kunci yang disertakan tidak terikat
lalai. Dalam huraian berikut, titik merujuk kepada kedudukan kursor semasa, dan
tanda merujuk kepada kedudukan kursor yang disimpan oleh set-mark perintah. Teks antara
titik dan tanda dirujuk sebagai rantau.

arahan Untuk bergerak
permulaan-of-line (Ca)
Beralih ke permulaan baris semasa.
hujung talian (Ce)
Bergerak ke hujung baris.
ke hadapan-char (Cf)
Bergerak ke hadapan watak.
backward-char (Cb)
Undurkan watak.
perkataan hadapan (Mf)
Bergerak ke hadapan ke penghujung perkataan seterusnya. Perkataan terdiri daripada alfanumerik
aksara (huruf dan digit).
perkataan belakang (Mb)
Beralih kembali ke permulaan perkataan semasa atau sebelumnya. Perkataan terdiri daripada
aksara alfanumerik (huruf dan digit).
shell-forward-word
Bergerak ke hadapan ke penghujung perkataan seterusnya. Perkataan dibatasi oleh cangkang yang tidak disebut
metakarakter.
shell-backward-word
Beralih kembali ke permulaan perkataan semasa atau sebelumnya. Perkataan dibatasi oleh
metakarakter shell tidak disebut.
skrin jelas (Cl)
Kosongkan skrin meninggalkan garisan semasa di bahagian atas skrin. Dengan sebuah
hujah, muat semula baris semasa tanpa mengosongkan skrin.
lukis semula-garis-arus
Muat semula baris semasa.

arahan Untuk Memanipulasi yang Sejarah
talian terima (Baris baru, kembali)
Terima baris tanpa mengira di mana kursor berada. Jika baris ini tidak kosong, tambah
ia ke senarai sejarah mengikut keadaan HISTCONTROL pembolehubah. Sekiranya
baris ialah baris sejarah yang diubah suai, kemudian pulihkan baris sejarah kepada asalnya
negeri.
sejarah-sebelumnya (Cp)
Ambil arahan sebelumnya daripada senarai sejarah, bergerak kembali dalam senarai.
sejarah seterusnya (Cn)
Ambil arahan seterusnya daripada senarai sejarah, bergerak ke hadapan dalam senarai.
permulaan-sejarah (M-<)
Beralih ke baris pertama dalam sejarah.
akhir-sejarah (M->)
Beralih ke penghujung sejarah input, iaitu, baris yang sedang dimasukkan.
terbalik-sejarah-carian (Cr)
Cari ke belakang bermula pada baris semasa dan bergerak `naik' melalui sejarah sebagai
perlu. Ini adalah carian tambahan.
ke hadapan-sejarah-carian (Cs)
Cari ke hadapan bermula pada baris semasa dan bergerak `turun' melalui sejarah
sebagai keperluan. Ini adalah carian tambahan.
bukan-incremental-reverse-search-sejarah (Mp)
Cari ke belakang melalui sejarah bermula pada baris semasa menggunakan bukan-
carian tambahan untuk rentetan yang dibekalkan oleh pengguna.
bukan-incremental-forward-search-sejarah (Mn)
Cari ke hadapan melalui sejarah menggunakan carian bukan tambahan untuk rentetan
dibekalkan oleh pengguna.
sejarah-cari-ke hadapan
Cari ke hadapan melalui sejarah untuk rentetan aksara antara permulaan
daripada garis semasa dan titik. Ini ialah carian bukan tambahan.
sejarah-cari-belakang
Cari ke belakang melalui sejarah untuk rentetan aksara antara permulaan
daripada garis semasa dan titik. Ini ialah carian bukan tambahan.
yank-nth-arg (MCy)
Masukkan hujah pertama ke arahan sebelumnya (biasanya perkataan kedua pada
baris sebelumnya) pada titik. Dengan hujah n, masukkan nperkataan ke dari sebelumnya
perintah (perkataan dalam perintah sebelumnya bermula dengan perkataan 0). Hujah yang negatif
memasukkan nperkataan ke dari akhir perintah sebelumnya. Sekali hujah n is
dikira, hujah diekstrak seolah-olah "!n"Perluasan sejarah telah berlaku
dinyatakan.
yank-last-arg (M-., M-_)
Masukkan hujah terakhir ke perintah sebelumnya (perkataan terakhir dari sebelumnya
catatan sejarah). Dengan hujah berangka, berkelakuan betul-betul seperti yank-nth-arg.
Panggilan berturut-turut ke yank-last-arg kembali melalui senarai sejarah, memasukkan
perkataan terakhir (atau perkataan yang ditentukan oleh hujah untuk panggilan pertama) bagi setiap baris dalam
pusing. Sebarang hujah berangka yang dibekalkan kepada panggilan berturut-turut ini menentukan
arahan untuk bergerak melalui sejarah. Hujah negatif menukar arah
melalui sejarah (belakang atau hadapan). Kemudahan pengembangan sejarah digunakan
untuk mengekstrak perkataan terakhir, seolah-olah pengembangan sejarah "!$" telah ditentukan.
shell-expand-line (MCe)
Kembangkan garisan seperti yang dilakukan oleh shell. Ini melakukan pengembangan alias dan sejarah sebagai
serta semua peluasan kata cangkang. Lihat SEJARAH EXPANSION di bawah untuk a
penerangan tentang perluasan sejarah.
sejarah-perluas-garis (M-^)
Lakukan pengembangan sejarah pada baris semasa. Lihat SEJARAH EXPANSION di bawah untuk a
penerangan tentang perluasan sejarah.
ruang ajaib
Lakukan pengembangan sejarah pada baris semasa dan masukkan ruang. Lihat SEJARAH
EXPANSION di bawah untuk penerangan tentang pengembangan sejarah.
alias-expand-line
Lakukan pengembangan alias pada baris semasa. Lihat ALIASES di atas untuk penerangan
pengembangan alias.
history-and-alias-expand-line
Lakukan sejarah dan pengembangan alias pada baris semasa.
sisipkan-hujah-terakhir (M-., M-_)
Sinonim untuk yank-last-arg.
beroperasi-dan-dapat-seterusnya (Co)
Terima baris semasa untuk pelaksanaan dan ambil baris seterusnya berbanding dengan
baris semasa daripada sejarah untuk penyuntingan. Sebarang hujah tidak diendahkan.
edit-and-execute-command (C-xC-e)
Panggil editor pada baris arahan semasa, dan laksanakan hasilnya sebagai shell
menyuruh. Bash percubaan untuk memohon $VISUAL, EDITOR $, dan emacs sebagai editor, dalam
perintah itu.

arahan Untuk menukar teks
akhir fail (Biasanya Cd)
Aksara yang menunjukkan akhir fail sebagai ditetapkan, sebagai contoh, oleh ``stty''. Jika ini
aksara dibaca apabila tiada aksara pada baris, dan titik adalah pada
permulaan baris, Readline mentafsirkannya sebagai akhir input dan pulangan EOF.
delete-char (Cd)
Padamkan watak pada titik. Jika fungsi ini terikat kepada aksara yang sama seperti
tty EOF watak, sebagai Cd lazimnya, lihat di atas untuk kesannya.
backward-delete-char (Rubout)
Padamkan aksara di belakang kursor. Apabila diberi hujah berangka, simpan
teks dipadamkan pada cincin bunuh.
ke hadapan-belakang-padam-char
Padamkan aksara di bawah kursor, melainkan kursor berada di hujung baris,
dalam hal ini aksara di belakang kursor dipadamkan.
quoted-insert (Cq, CV)
Tambahkan aksara seterusnya yang ditaip pada kata kerja baris. Ini adalah cara untuk memasukkan
watak suka Cq, Sebagai contoh.
sisipan tab (CV TAB)
Sisipkan aksara tab.
sisipan diri (a, b, A, 1, !, ...)
Masukkan aksara yang ditaip.
transpose-chars (Ct)
Seret watak sebelum arahkan ke hadapan ke atas watak pada titik, gerakkan titik
ke hadapan juga. Jika titik berada di penghujung garisan, maka ini menukarkan kedua-duanya
aksara sebelum titik. Hujah negatif tidak mempunyai kesan.
transpose-perkataan (Mt)
Seret perkataan sebelum titik melepasi perkataan demi titik, gerakkan titik ke atas perkataan itu
juga. Jika titik berada di penghujung baris, ini menukarkan dua perkataan terakhir pada
garisan itu.
perkataan besar (Mu)
Huruf besar perkataan semasa (atau berikut). Dengan hujah negatif, huruf besar
perkataan sebelumnya, tetapi jangan alihkan titik.
huruf kecil-perkataan (Ml)
Huruf kecil perkataan semasa (atau berikut). Dengan hujah negatif, huruf kecil
perkataan sebelumnya, tetapi jangan alihkan titik.
huruf besar-perkataan (Mc)
Gunakan huruf besar perkataan semasa (atau berikut). Dengan hujah negatif, gunakan huruf besar
perkataan sebelumnya, tetapi jangan alihkan titik.
mod tulis ganti
Togol mod tulis ganti. Dengan hujah angka positif yang jelas, beralih kepada
mod tulis ganti. Dengan hujah angka bukan positif yang jelas, tukar kepada sisipan
mod. Perintah ini hanya memberi kesan emacs mod; vi mod tidak menulis ganti secara berbeza.
Setiap panggilan ke readline() bermula dalam mod sisipan. Dalam mod tulis ganti, aksara terikat
kepada sisipan diri menggantikan teks pada titik dan bukannya menolak teks ke kanan.
Watak terikat kepada backward-delete-char gantikan watak sebelum titik dengan a
angkasa lepas. Secara lalai, arahan ini tidak terikat.

Membunuh and Menyampah
talian bunuh (Ck)
Matikan teks dari titik ke hujung baris.
barisan-pembunuh-belakang (Cx Rubout)
Bunuh ke belakang ke permulaan baris.
unix-line-discard (Cu)
Bunuh ke belakang dari titik ke permulaan baris. Teks yang dibunuh disimpan pada
cincin bunuh.
membunuh-seluruh-baris
Bunuh semua aksara pada baris semasa, tidak kira di mana titik itu.
perkataan bunuh (Md)
Bunuh dari titik ke penghujung perkataan semasa, atau jika di antara perkataan, hingga ke penghujung
perkataan seterusnya. Sempadan perkataan adalah sama seperti yang digunakan oleh perkataan hadapan.
perkataan-bunuh-mundur (M-Rubout)
Matikan perkataan di sebalik titik. Sempadan perkataan adalah sama seperti yang digunakan oleh
perkataan belakang.
shell-kill-word (Md)
Bunuh dari titik ke penghujung perkataan semasa, atau jika di antara perkataan, hingga ke penghujung
perkataan seterusnya. Sempadan perkataan adalah sama seperti yang digunakan oleh shell-forward-word.
shell-mundur-kill-word (M-Rubout)
Matikan perkataan di sebalik titik. Sempadan perkataan adalah sama seperti yang digunakan oleh
shell-backward-word.
unix-word-rubout (Cw)
Matikan perkataan di belakang titik, menggunakan ruang putih sebagai sempadan perkataan. Teks terbunuh
disimpan pada cincin bunuh.
unix-filename-rubout
Matikan perkataan di belakang titik, menggunakan ruang putih dan aksara garis miring sebagai perkataan
sempadan. Teks yang dibunuh disimpan pada cincin bunuh.
padam-ruang-mendatar (M-\)
Padamkan semua ruang dan tab di sekeliling titik.
wilayah bunuh
Matikan teks di rantau semasa.
copy-region-as-kill
Salin teks di rantau ini ke penimbal bunuh.
salin-perkataan-belakang
Salin perkataan sebelum menunjuk ke penimbal bunuh. Perkataan sempadan adalah sama dengan
perkataan belakang.
salin-maju-perkataan
Salin perkataan berikut titik ke penimbal bunuh. Perkataan sempadan adalah sama
as perkataan hadapan.
yank (Cy)
Tarik bahagian atas gelang bunuh ke dalam penimbal pada titik.
yank-pop (saya)
Putar cincin bunuh, dan tarik bahagian atas baharu. Hanya berfungsi mengikut yank or yank-pop.

Angka Argumen
digit-hujah (M-0, M-1, ... M--)
Tambahkan digit ini pada hujah yang sudah terkumpul atau mulakan hujah baharu. M--
memulakan hujah negatif.
hujah universal
Ini adalah satu lagi cara untuk menentukan hujah. Jika arahan ini diikuti oleh satu atau
lebih banyak digit, secara pilihan dengan tanda tolak di hadapan, digit tersebut mentakrifkan
hujah. Jika arahan diikuti dengan digit, laksanakan hujah universal lagi
menamatkan hujah berangka, tetapi sebaliknya diabaikan. Sebagai kes khas, jika ini
arahan serta-merta diikuti oleh aksara yang bukan digit atau tolak
tanda, kiraan hujah untuk arahan seterusnya didarab dengan empat. Hujahnya
count pada mulanya adalah satu, jadi melaksanakan fungsi ini pada kali pertama menjadikan
hujah dikira empat, kali kedua menjadikan hujah dikira enam belas, dan seterusnya.

Selesai
melengkapkan (TAB)
Percubaan untuk melakukan penyiapan pada teks sebelum titik. Bash percubaan selesai
memperlakukan teks sebagai pembolehubah (jika teks bermula dengan $), nama pengguna (jika teks
bermula dengan ~), nama hos (jika teks bermula dengan @), atau arahan (termasuk alias
dan fungsi) secara bergilir-gilir. Jika tiada satu pun daripada ini menghasilkan padanan, pelengkapan nama fail adalah
cuba.
kemungkinan-penyelesaian (M-?)
Senaraikan kemungkinan penyiapan teks sebelum titik.
sisipan-penyelesaian (M-*)
Masukkan semua pelengkapan teks sebelum titik yang akan dijana oleh
kemungkinan-penyelesaian.
menu-lengkap
Sama seperti melengkapkan, tetapi menggantikan perkataan yang akan dilengkapkan dengan satu padanan daripada
senarai kemungkinan siap. Pelaksanaan berulang menu-lengkap langkah-langkah
melalui senarai kemungkinan penyiapan, memasukkan setiap perlawanan secara bergilir-gilir. Pada penghujungnya
daripada senarai penyiapan, loceng dibunyikan (tertakluk kepada tetapan ala loceng)
dan teks asal dipulihkan. Hujah daripada n bergerak n kedudukan ke hadapan dalam
senarai perlawanan; hujah negatif boleh digunakan untuk bergerak ke belakang melalui
senarai. Perintah ini bertujuan untuk terikat TAB, tetapi tidak terikat secara lalai.
menu-lengkap-belakang
Sama dengan menu-lengkap, tetapi bergerak ke belakang melalui senarai yang mungkin
selesai, seolah-olah menu-lengkap telah diberi hujah negatif. Perintah ini
tidak terikat secara lalai.
delete-char-or-list
Memadam aksara di bawah kursor jika tidak pada permulaan atau penghujung baris
(seperti delete-char). Jika di hujung baris, berkelakuan sama dengan
kemungkinan-penyelesaian. Perintah ini tidak terikat secara lalai.
nama fail lengkap (M-/)
Cuba pelengkapan nama fail pada teks sebelum titik.
kemungkinan-nama-fail-penyelesaian (Cx /)
Senaraikan kemungkinan penyiapan teks sebelum titik, menganggapnya sebagai nama fail.
nama pengguna lengkap (M-~)
Cuba selesaikan teks sebelum titik, anggap ia sebagai nama pengguna.
kemungkinan-nama-pengguna-penyelesaian (Cx ~)
Senaraikan kemungkinan penyiapan teks sebelum titik, menganggapnya sebagai nama pengguna.
pembolehubah lengkap (M-$)
Cuba selesaikan teks sebelum titik, anggap ia sebagai pembolehubah shell.
kemungkinan-pembolehubah-penyiapan (Cx $)
Senaraikan kemungkinan penyiapan teks sebelum titik, menganggapnya sebagai cangkerang
berubah-ubah.
nama hos lengkap (M-@)
Cuba melengkapkan teks sebelum titik, menganggapnya sebagai nama hos.
kemungkinan-nama-penyelesaian (Cx @)
Senaraikan kemungkinan pelengkapan teks sebelum titik, menganggapnya sebagai nama hos.
perintah lengkap (M-!)
Cuba selesaikan teks sebelum titik, anggap ia sebagai nama arahan.
Penyelesaian perintah cuba memadankan teks dengan alias, perkataan terpelihara,
fungsi shell, binaan shell, dan akhirnya nama fail boleh laku, dalam susunan itu.
kemungkinan-perintah-penyelesaian (Cx !)
Senaraikan kemungkinan penyiapan teks sebelum titik, menganggapnya sebagai arahan
nama.
dinamik-lengkap-sejarah (M-TAB)
Cuba selesaikan teks sebelum titik, bandingkan teks dengan baris dari
senarai sejarah untuk kemungkinan penyelesaian perlawanan.
dabbrev-expand
Cuba selesaikan menu pada teks sebelum titik, bandingkan teks dengan baris
daripada senarai sejarah untuk perlawanan yang mungkin selesai.
lengkap ke dalam pendakap (M-{)
Lakukan penyiapan nama fail dan masukkan senarai kemungkinan penyiapan yang disertakan
dalam pendakap supaya senarai tersedia untuk shell (lihat Brace pengembangan di atas).

Keyboard Makro
mula-kbd-makro (Cx ()
Mula menyimpan aksara yang ditaip ke dalam makro papan kekunci semasa.
akhir-kbd-makro (Cx ))
Berhenti menyimpan aksara yang ditaip ke dalam makro papan kekunci semasa dan simpan
definisi.
panggil-kbd-makro terakhir (Cx e)
Laksanakan semula makro papan kekunci terakhir yang ditakrifkan, dengan membuat aksara dalam makro
kelihatan seperti ditaip pada papan kekunci.
cetak-kbd-makro terakhir ()
Cetak makro papan kekunci terakhir yang ditakrifkan dalam format yang sesuai untuk inputrc fail.

Lain-lain
baca semula-init-file (Cx Cr)
Baca dalam kandungan inputrc fail, dan memasukkan sebarang pengikatan atau pembolehubah
tugasan yang terdapat di sana.
abort (Cg)
Hentikan arahan pengeditan semasa dan bunyikan loceng terminal (tertakluk kepada
tetapan daripada ala loceng).
do-huruf besar-versi (Ma, Mb, M-x, ...)
Jika watak metafied x adalah huruf kecil, jalankan arahan yang terikat pada
huruf besar yang sepadan.
awalan-meta (ESC)
Metafy watak seterusnya ditaip. ESC f adalah bersamaan dengan Meta-f.
membatalkan (C-_, Cx Cu)
Buat asal tambahan, diingati secara berasingan untuk setiap baris.
garisan balik (Encik)
Buat asal semua perubahan yang dibuat pada baris ini. Ini seperti melaksanakan membatalkan perintah cukup
kali untuk mengembalikan garisan kepada keadaan asalnya.
tilde-expand (M-&)
Lakukan pengembangan tilde pada perkataan semasa.
set-mark (C-@, M- )
Tetapkan tanda ke titik. Jika hujah berangka dibekalkan, tanda ditetapkan kepada
jawatan itu.
pertukaran-titik-dan-tanda (Cx Cx)
Tukar titik dengan tanda. Kedudukan kursor semasa ditetapkan kepada yang disimpan
kedudukan, dan kedudukan kursor lama disimpan sebagai tanda.
pencarian watak (C-])
Watak dibaca dan titik dipindahkan ke kejadian seterusnya watak itu. A
carian kiraan negatif untuk kejadian sebelumnya.
watak-cari-belakang (MC-])
Watak dibaca dan titik dipindahkan ke kejadian sebelumnya
watak. Kiraan negatif mencari kejadian berikutnya.
langkau-csi-jujukan
Baca aksara yang mencukupi untuk menggunakan jujukan berbilang kunci seperti yang ditakrifkan
kekunci seperti Rumah dan Tamat. Urutan sedemikian bermula dengan Penunjuk Urutan Kawalan
(CSI), biasanya ESC-[. Jika urutan ini terikat kepada "\[", kekunci yang menghasilkan sedemikian
jujukan tidak akan mempunyai kesan melainkan terikat secara eksplisit kepada arahan baris baca,
bukannya memasukkan aksara sesat ke dalam penimbal penyuntingan. Ini tidak terikat oleh
lalai, tetapi biasanya terikat kepada ESC-[.
sisipan-komen (M-#)
Tanpa hujah berangka, nilai garis baca komen-mulakan pemboleh ubah ialah
disisipkan pada permulaan baris semasa. Jika argumen berangka dibekalkan,
arahan ini bertindak sebagai togol: jika aksara pada permulaan baris berfungsi
tidak sepadan dengan nilai komen-mulakan, nilai dimasukkan, jika tidak
watak dalam komen-mulakan dipadamkan dari awal baris. Dalam sama ada
kes, baris itu diterima seolah-olah baris baharu telah ditaip. Nilai lalai bagi
komen-mulakan menyebabkan arahan ini menjadikan baris semasa sebagai komen shell. Sekiranya
hujah berangka menyebabkan aksara ulasan dialih keluar, baris itu akan
dilaksanakan oleh cangkerang.
glob-lengkap-perkataan (Mg)
Perkataan sebelum titik dianggap sebagai corak untuk pengembangan nama laluan, dengan
asterisk dilampirkan secara tersirat. Corak ini digunakan untuk menjana senarai padanan
nama fail untuk kemungkinan penyiapan.
glob-kembangkan-perkataan (Cx *)
Perkataan sebelum titik dianggap sebagai corak untuk pengembangan nama laluan dan senarai
nama fail yang sepadan dimasukkan, menggantikan perkataan. Jika hujah berangka ialah
dibekalkan, asterisk dilampirkan sebelum pengembangan nama laluan.
pengembangan-senarai glob (Cx g)
Senarai pengembangan yang akan dihasilkan oleh glob-kembangkan-perkataan is
dipaparkan, dan garisan dilukis semula. Jika hujah berangka dibekalkan, asterisk
dilampirkan sebelum pengembangan nama laluan.
dump-fungsi
Cetak semua fungsi dan pengikatan utamanya ke strim output baris baca.
Jika argumen berangka dibekalkan, output diformatkan sedemikian rupa sehingga ia
boleh dijadikan sebahagian daripada an inputrc fail.
pembolehubah dump
Cetak semua pembolehubah baris baca yang boleh ditetapkan dan nilainya ke baris baca
aliran keluaran. Jika hujah berangka dibekalkan, output diformatkan sedemikian
cara ia boleh dijadikan sebahagian daripada an inputrc fail.
dump-makro
Cetak semua jujukan kunci baris baca yang terikat pada makro dan rentetannya
pengeluaran. Jika hujah berangka dibekalkan, output diformatkan sedemikian
bahawa ia boleh dijadikan sebahagian daripada an inputrc fail.
paparan-shell-versi (Cx CV)
Paparkan maklumat versi tentang contoh semasa bagi menampar.

Boleh diprogramkan Selesai
Apabila penyiapan perkataan cuba untuk hujah kepada perintah yang mana pelengkapan
spesifikasi (a compspec) telah ditakrifkan menggunakan melengkapkan terbina (lihat SHELL BUILTIN
PERINTAH di bawah), kemudahan penyiapan boleh atur cara digunakan.

Pertama, nama arahan dikenal pasti. Jika perkataan arahan ialah rentetan kosong
(penyelesaian cuba pada permulaan baris kosong), sebarang compspec yang ditakrifkan dengan -E
pilihan untuk melengkapkan digunakan. Jika compspec telah ditakrifkan untuk arahan itu, compspec
digunakan untuk menjana senarai kemungkinan pelengkap bagi perkataan itu. Jika kata perintah ialah
nama laluan penuh, compspec untuk nama laluan penuh dicari dahulu. Jika tiada compspec
ditemui untuk nama laluan penuh, percubaan dibuat untuk mencari compspec untuk bahagian tersebut
berikutan garisan terakhir. Jika carian tersebut tidak menghasilkan compspec, mana-mana compspec
ditakrifkan dengan -D pilihan untuk melengkapkan digunakan sebagai lalai.

Setelah compspec ditemui, ia digunakan untuk menjana senarai perkataan yang sepadan. Sekiranya
compspec tidak dijumpai, lalai menampar penyiapan seperti yang dinyatakan di atas di bawah Selesai is
dilakukan.

Pertama, tindakan yang ditentukan oleh compspec digunakan. Hanya padanan yang diawali dengan
perkataan yang sedang disiapkan dikembalikan. Apabila -f or -d pilihan digunakan untuk nama fail atau
nama direktori selesai, pembolehubah shell FIGNORE digunakan untuk menapis padanan.

Sebarang penyiapan yang ditentukan oleh corak pengembangan nama laluan kepada -G pilihan dijana
seterusnya. Perkataan yang dijana oleh corak tidak perlu sepadan dengan perkataan yang dilengkapkan. The
GLOBIGNORE pembolehubah shell tidak digunakan untuk menapis padanan, tetapi FIGNORE pemboleh ubah ialah
terpakai.

Seterusnya, rentetan yang ditentukan sebagai hujah kepada -W pilihan dipertimbangkan. Rentetannya ialah
perpecahan pertama menggunakan aksara dalam IFS pembolehubah khas sebagai pembatas. Shell memetik
dihormati. Setiap perkataan kemudiannya dikembangkan menggunakan pengembangan pendakap, pengembangan tilde, parameter
dan pengembangan pembolehubah, penggantian perintah, dan pengembangan aritmetik, seperti yang diterangkan di atas
di bawah EXPANSION. Keputusan dibahagikan menggunakan peraturan yang diterangkan di atas di bawah Perkataan
Pemisahan. Hasil pengembangan dipadankan awalan dengan perkataan makhluk
selesai, dan perkataan yang sepadan menjadi pelengkap yang mungkin.

Selepas padanan ini dijana, sebarang fungsi shell atau arahan yang ditentukan dengan
-F and -C pilihan digunakan. Apabila arahan atau fungsi dipanggil, COMP_LINE,
COMP_POINT, COMP_KEY, dan COMP_TYPE pembolehubah diberi nilai seperti yang diterangkan di atas di bawah
Shell Pembolehubah. Jika fungsi shell sedang digunakan, the COMP_WORDS and COMP_CWORD
pembolehubah juga ditetapkan. Apabila fungsi atau arahan digunakan, hujah pertama ($1)
ialah nama perintah yang hujahnya sedang diselesaikan, hujah kedua ($2)
adakah perkataan itu sedang disempurnakan, dan hujah ketiga ($3) ialah perkataan yang mendahului perkataan
sedang diselesaikan pada baris arahan semasa. Tiada penapisan penyiapan yang dijana
terhadap perkataan yang sedang diselesaikan dilakukan; fungsi atau arahan telah lengkap
kebebasan dalam menghasilkan perlawanan.

Mana-mana fungsi yang dinyatakan dengan -F dipanggil terlebih dahulu. Fungsi ini boleh menggunakan mana-mana shell
kemudahan, termasuk compgen builtin yang diterangkan di bawah, untuk menjana padanan. Ia
mesti meletakkan penyiapan yang mungkin dalam MEMATUHI pembolehubah tatasusunan, satu bagi setiap elemen tatasusunan.

Seterusnya, sebarang arahan yang dinyatakan dengan -C pilihan digunakan dalam persekitaran yang setara dengan
penggantian perintah. Ia harus mencetak senarai penyiapan, satu setiap baris, ke
keluaran standard. Garis miring ke belakang boleh digunakan untuk melepaskan baris baharu, jika perlu.

Selepas semua kemungkinan penyiapan dijana, mana-mana penapis yang ditentukan dengan -X
pilihan digunakan pada senarai. Penapis ialah corak seperti yang digunakan untuk pengembangan nama laluan; a
& dalam corak digantikan dengan teks perkataan yang sedang dilengkapkan. A literal & mungkin
melarikan diri dengan garis miring ke belakang; garis miring ke belakang dikeluarkan sebelum mencuba perlawanan. mana-mana
penyiapan yang sepadan dengan corak akan dialih keluar daripada senarai. Seorang terkemuka ! menafikan
corak itu; dalam kes ini sebarang penyiapan yang tidak sepadan dengan corak akan dialih keluar.

Akhir sekali, sebarang awalan dan akhiran yang ditentukan dengan -P and -S pilihan ditambah pada setiap satu
ahli senarai penyiapan, dan hasilnya dikembalikan kepada kod siap baris baca
sebagai senarai kemungkinan penyiapan.

Jika tindakan yang digunakan sebelum ini tidak menjana sebarang padanan, dan -o diname pilihan
telah dibekalkan kepada melengkapkan apabila compspec ditakrifkan, penyiapan nama direktori ialah
cuba.

Jika -o plusdirs pilihan telah dibekalkan kepada melengkapkan apabila compspec ditakrifkan,
pelengkapan nama direktori dicuba dan sebarang padanan ditambah pada keputusan
tindakan lain.

Secara lalai, jika compspec ditemui, apa sahaja yang dijana akan dikembalikan kepada siap
kod sebagai set penuh kemungkinan penyelesaian. lalai menampar penyiapan tidak
cuba, dan lalai baris baca pelengkapan nama fail dinyahdayakan. Sekiranya -o
bashdefault pilihan telah dibekalkan kepada melengkapkan apabila compspec ditakrifkan, the menampar
penyiapan lalai dicuba jika compspec tidak menghasilkan padanan. Sekiranya -o lalai
pilihan telah dibekalkan kepada melengkapkan apabila compspec ditakrifkan, lalai readline
penyiapan akan dilakukan jika compspec (dan, jika cuba, fail lalai menampar
siap) menjana tiada padanan.

Apabila compspec menunjukkan bahawa penyiapan nama direktori dikehendaki, programmable
fungsi penyiapan memaksa garis baca untuk menambahkan garis miring pada nama yang telah dilengkapkan
pautan simbolik ke direktori, tertakluk kepada nilai mark-direktori garis baca
pembolehubah, tanpa mengira tetapan mark-symlinked-direktori pembolehubah readline.

Terdapat beberapa sokongan untuk mengubah suai penyiapan secara dinamik. Ini paling berguna apabila
digunakan dalam kombinasi dengan penyiapan lalai yang ditentukan dengan melengkapkan -D. Ada kemungkinan
untuk fungsi shell yang dilaksanakan sebagai pengendali penyiapan untuk menunjukkan bahawa penyiapan sepatutnya
dicuba semula dengan mengembalikan status keluar 124. Jika fungsi shell mengembalikan 124, dan berubah
compspec yang dikaitkan dengan arahan yang sedang dicuba untuk menyelesaikannya (disediakan
sebagai hujah pertama apabila fungsi itu dilaksanakan), penyiapan boleh atur cara dimulakan semula
dari awal, dengan percubaan untuk mencari compspec baharu untuk arahan itu. Ini membenarkan
satu set penyiapan untuk dibina secara dinamik semasa penyiapan cuba, bukannya menjadi
dimuatkan sekaligus.

Sebagai contoh, dengan mengandaikan bahawa terdapat perpustakaan compspecs, setiap satu disimpan dalam fail
sepadan dengan nama arahan, fungsi penyelesaian lalai berikut akan
muatkan penyiapan secara dinamik:

_completion_loader()
{
. "/etc/bash_completion.d/$1.sh" >/dev/null 2>&1 && return 124
}
lengkapkan -D -F _completion_loader -o bashdefault -o lalai

SEJARAH


Apabila -o sejarah pilihan untuk menetapkan builtin didayakan, shell menyediakan akses kepada
arahan sejarah, senarai arahan yang ditaip sebelum ini. Nilai daripada HISTSIZE
pembolehubah digunakan sebagai bilangan arahan untuk disimpan dalam senarai sejarah. Teks daripada
lepas HISTSIZE arahan (lalai 500) disimpan. Shell menyimpan setiap arahan dalam
senarai sejarah sebelum parameter dan pengembangan pembolehubah (lihat EXPANSION di atas) tetapi selepas
pengembangan sejarah dilakukan, tertakluk kepada nilai pembolehubah shell HISTIGNORE
and HISTCONTROL.

Pada permulaan, sejarah dimulakan daripada fail yang dinamakan oleh pembolehubah FAIL SEJARAH
(lalai ~ / .bash_history). Fail yang dinamakan dengan nilai FAIL SEJARAH dipotong, jika
perlu, untuk mengandungi tidak lebih daripada bilangan baris yang ditentukan oleh nilai
HISTFAILSize. Jika HISTFAILSize tidak ditetapkan, atau ditetapkan kepada null, nilai bukan angka atau angka
nilai kurang daripada sifar, fail sejarah tidak dipotong. Apabila fail sejarah dibaca,
baris yang bermula dengan aksara ulasan sejarah diikuti serta-merta dengan digit adalah
ditafsirkan sebagai cap masa untuk baris sejarah sebelumnya. Cap masa ini adalah pilihan
dipaparkan bergantung pada nilai FORMAT MASA SEJARAH pembolehubah. Apabila cangkerang dengan
sejarah membolehkan keluar, yang terakhir $HISTSIZE baris disalin daripada senarai sejarah ke
$HISTFILE. Jika histappend pilihan shell didayakan (lihat penerangan tentang shopt di bawah
SHELL BUILTIN PERINTAH di bawah), baris dilampirkan pada fail sejarah, jika tidak
fail sejarah ditimpa. Jika FAIL SEJARAH tidak ditetapkan, atau jika fail sejarah tidak boleh ditulis,
sejarah tidak disimpan. Sekiranya FORMAT MASA SEJARAH pembolehubah ditetapkan, setem masa ditulis
ke fail sejarah, ditandakan dengan watak ulasan sejarah, supaya ia boleh disimpan
merentasi sesi shell. Ini menggunakan aksara ulasan sejarah untuk membezakan cap masa
daripada garis sejarah yang lain. Selepas menyimpan sejarah, fail sejarah dipotong ke
mengandungi tidak lebih daripada HISTFAILSize garisan. Jika HISTFAILSize tidak ditetapkan, atau ditetapkan kepada nol, bukan
nilai angka, atau nilai angka kurang daripada sifar, fail sejarah tidak dipotong.

Perintah terbina fc (Lihat SHELL BUILTIN PERINTAH di bawah) boleh digunakan untuk menyenaraikan atau mengedit dan
laksana semula sebahagian daripada senarai sejarah. The sejarah builtin boleh digunakan untuk memaparkan atau
ubah suai senarai sejarah dan manipulasi fail sejarah. Apabila menggunakan penyuntingan baris arahan,
arahan carian tersedia dalam setiap mod pengeditan yang menyediakan akses kepada sejarah
senarai.

Cangkang membenarkan kawalan ke atas arahan yang disimpan pada senarai sejarah. The
HISTCONTROL and HISTIGNORE pembolehubah boleh ditetapkan untuk menyebabkan shell hanya menyimpan subset
daripada arahan yang dimasukkan. The cmdhist pilihan shell, jika didayakan, menyebabkan shell
cuba menyimpan setiap baris perintah berbilang baris dalam entri sejarah yang sama, sambil menambah
koma bertitik di mana perlu untuk mengekalkan ketepatan sintaksis. The ahli lithik pilihan shell
menyebabkan shell menyimpan arahan dengan baris baharu terbenam dan bukannya koma bertitik. Lihat
penerangan tentang shopt terbina di bawah di bawah SHELL BUILTIN PERINTAH untuk mendapatkan maklumat
menetapkan dan menyahset pilihan shell.

SEJARAH EXPANSION


Cangkang menyokong ciri pengembangan sejarah yang serupa dengan pengembangan sejarah dalam
csh. Bahagian ini menerangkan ciri sintaks yang tersedia. Ciri ini didayakan
secara lalai untuk cengkerang interaktif, dan boleh dilumpuhkan menggunakan +H pilihan untuk menetapkan
arahan terbina (lihat SHELL BUILTIN PERINTAH di bawah). Cengkerang bukan interaktif tidak berfungsi
pengembangan sejarah secara lalai.

Peluasan sejarah memperkenalkan perkataan daripada senarai sejarah ke dalam aliran input, menjadikannya
mudah untuk mengulang perintah, masukkan argumen ke perintah sebelumnya ke dalam input semasa
baris, atau betulkan ralat dalam arahan sebelumnya dengan cepat.

Peluasan sejarah dilakukan serta-merta selepas baris lengkap dibaca, sebelum shell
memecahkannya menjadi kata-kata. Ia berlaku dalam dua bahagian. Yang pertama ialah menentukan baris mana
daripada senarai sejarah untuk digunakan semasa penggantian. Yang kedua ialah memilih bahagian
baris itu untuk dimasukkan ke dalam baris semasa. Barisan yang dipilih daripada sejarah ialah
kategori acara, dan bahagian baris itu yang ditindaklanjuti ialah perkataan. Pelbagai pengubah adalah
tersedia untuk memanipulasi perkataan yang dipilih. Baris dipecahkan menjadi perkataan yang sama
fesyen seperti ketika membaca input, supaya beberapa metacharacter-kata yang dipisahkan dikelilingi oleh
petikan dianggap satu perkataan. Peluasan sejarah diperkenalkan dengan kemunculan
watak pengembangan sejarah, iaitu ! secara lalai. Segaris ke belakang sahaja (\) dan bujang
petikan boleh memetik watak pengembangan sejarah.

Beberapa aksara menghalang pengembangan sejarah jika ditemui serta-merta selepas sejarah
aksara pengembangan, walaupun ia tidak disebut: ruang, tab, baris baharu, pemulangan pengangkutan dan =.
Jika extglob pilihan shell didayakan, ( juga akan menghalang pengembangan.

Beberapa pilihan shell boleh ditetapkan dengan shopt builtin boleh digunakan untuk menyesuaikan tingkah laku
pengembangan sejarah. Sekiranya histverify pilihan shell didayakan (lihat penerangan tentang
yang shopt terbina di bawah), dan garis baca sedang digunakan, penggantian sejarah tidak digunakan
segera dihantar ke penghurai shell. Sebaliknya, baris yang dikembangkan dimuatkan semula ke dalam
garis baca menyunting penimbal untuk pengubahsuaian selanjutnya. Jika garis baca sedang digunakan, dan
histreedit pilihan shell didayakan, penggantian sejarah yang gagal akan dimuat semula ke dalam
yang garis baca menyunting penimbal untuk pembetulan. The -p pilihan untuk sejarah arahan terbina
boleh digunakan untuk melihat perkara yang akan dilakukan oleh pengembangan sejarah sebelum menggunakannya. The -s pilihan untuk
sejarah builtin boleh digunakan untuk menambah arahan pada penghujung senarai sejarah tanpa
benar-benar melaksanakannya, supaya mereka tersedia untuk dipanggil semula seterusnya.

Cangkang membenarkan kawalan pelbagai aksara yang digunakan oleh mekanisme pengembangan sejarah
(lihat penerangan tentang hischars atas bawah Shell Pembolehubah). Cangkang menggunakan
aksara ulasan sejarah untuk menandakan cap masa sejarah semasa menulis fail sejarah.

Acara Penama
Penentu acara ialah rujukan kepada entri baris arahan dalam senarai sejarah. Melainkan
rujukan adalah mutlak, peristiwa adalah relatif kepada kedudukan semasa dalam sejarah
senarai.

! Mulakan penggantian sejarah, kecuali apabila diikuti dengan a kosong, barisan baharu, gerabak
kembali, = atau ( (apabila extglob pilihan shell didayakan menggunakan shopt terbina).
!n Rujuk baris arahan n.
!-n Rujuk kepada arahan semasa tolak n.
!! Rujuk arahan sebelumnya. Ini adalah sinonim untuk `!-1'.
!rentetan
Rujuk kepada arahan terkini sebelum kedudukan semasa dalam senarai sejarah
bermula dengan rentetan.
!?rentetan[?]
Rujuk kepada arahan terkini sebelum kedudukan semasa dalam senarai sejarah
yang mengandungi rentetan. yang mengekori ? boleh ditinggalkan jika rentetan diikuti serta merta
oleh baris baharu.
^string1^string2^
Penggantian cepat. Ulangi arahan sebelumnya, ganti string1 bersama string2.
Bersamaan dengan ``!!:s/string1/string2/'' (lihat Pengubah di bawah).
!# Seluruh baris arahan ditaip setakat ini.

Perkataan Penama
Penanda perkataan digunakan untuk memilih perkataan yang dikehendaki daripada acara tersebut. A : memisahkan acara
spesifikasi daripada perkataan penunjuk. Ia mungkin ditinggalkan jika perkataan penunjuk bermula
dengan ^, $, *, -, Atau %. Perkataan dinomborkan dari awal baris, dengan
perkataan pertama dilambangkan dengan 0 (sifar). Perkataan dimasukkan ke dalam baris semasa dipisahkan
oleh ruang tunggal.

0 (sifar)
Perkataan sifar. Untuk shell, ini adalah perkataan arahan.
n . nperkataan ke.
^ Hujah pertama. Iaitu, perkataan 1.
$ Perkataan terakhir. Ini biasanya hujah terakhir, tetapi akan berkembang ke sifar
perkataan jika hanya terdapat satu perkataan dalam baris.
% Perkataan dipadankan dengan `?rentetan?' cari.
x-y Rangkaian perkataan; `-y' menyingkatkan `0-y'.
* Semua perkataan kecuali yang sifar. Ini adalah sinonim untuk `1-$'. Ia bukan satu kesilapan
untuk digunakan * jika terdapat hanya satu perkataan dalam acara itu; rentetan kosong dikembalikan
kes itu.
x* Singkatan x-$.
x- Singkatan x-$ seperti x*, tetapi meninggalkan perkataan terakhir.

Jika penunjuk perkataan dibekalkan tanpa spesifikasi acara, arahan sebelumnya ialah
digunakan sebagai acara.

Pengubah
Selepas penunjuk perkataan pilihan, mungkin terdapat urutan satu atau lebih daripada
pengubah suai berikut, setiap satu didahului oleh `:'.

h Keluarkan komponen nama fail yang tertinggal, hanya tinggalkan kepala.
t Keluarkan semua komponen nama fail terkemuka, tinggalkan ekor.
r Alih keluar akhiran mengekor borang . Xxx, meninggalkan nama asas.
e Alih keluar semua kecuali akhiran mengekor.
p Cetak arahan baharu tetapi jangan laksanakannya.
q Petik perkataan yang diganti, terlepas daripada penggantian selanjutnya.
x Petikan perkataan yang digantikan dengan q, tetapi memecahkan kata-kata di kosong dan baris baharu.
s/lama/baru/
Pengganti baru untuk kejadian pertama lama dalam barisan acara. Sebarang pembatas
boleh digunakan di tempat /. Pembatas akhir adalah pilihan jika ia adalah yang terakhir
watak baris acara. Pembatas boleh dipetik dalam lama and baru dengan
garis miring ke belakang tunggal. Jika & muncul dalam baru, ia digantikan dengan lama. Segaris ke belakang tunggal
akan memetik &. Jika lama adalah batal, ia ditetapkan kepada yang terakhir lama diganti, atau, jika tidak
penggantian sejarah terdahulu berlaku, yang terakhir rentetan dalam !?rentetan[?]
carian.
& Ulangi penggantian sebelumnya.
g Menyebabkan perubahan digunakan pada keseluruhan baris acara. Ini digunakan dalam
sempena `:s' (cth, `:gs/lama/baru/') atau `:&'. Jika digunakan dengan `:s', mana-mana
pembatas boleh digunakan sebagai ganti /, dan pembatas akhir adalah pilihan jika ada
watak terakhir baris acara. An a boleh digunakan sebagai sinonim untuk g.
G Terapkan yang berikut `s' pengubah suai sekali pada setiap perkataan dalam baris acara.

SHELL BUILTIN PERINTAH


Melainkan dinyatakan sebaliknya, setiap arahan terbina didokumenkan dalam bahagian ini sebagai menerima
pilihan didahului oleh - menerima -- untuk menandakan berakhirnya pilihan. The :, benar, palsu,
and ujian builtin tidak menerima pilihan dan tidak merawat -- khasnya. The keluar, logout,
memecahkan, terus, biarkan, dan peralihan builtins menerima dan memproses hujah bermula dengan -
tanpa memerlukan --. Binaan lain yang menerima hujah tetapi tidak dinyatakan sebagai
menerima pilihan mentafsir hujah bermula dengan - sebagai pilihan yang tidak sah dan memerlukan --
untuk mengelakkan tafsiran ini.
: [hujah]
Tiada kesan; arahan tidak melakukan apa-apa selain berkembang hujah dan melaksanakan apa-apa
ubah hala yang ditentukan. Kod keluar sifar dikembalikan.

. nama fail [hujah]
sumber nama fail [hujah]
Baca dan laksanakan arahan daripada nama fail dalam persekitaran shell semasa dan kembali
status keluar perintah terakhir yang dilaksanakan daripada nama fail. Jika nama fail tidak
mengandungi garis miring, nama fail dalam PATH digunakan untuk mencari direktori yang mengandungi
nama fail. Fail yang dicari dalam PATH tidak perlu boleh dilaksanakan. Bila menampar tidak
in posix mod, direktori semasa dicari jika tiada fail ditemui dalam PATH. Jika
yang laluan sumber pilihan untuk shopt arahan terbina dimatikan, the PATH tidak
dicari. Jika ada hujah dibekalkan, ia menjadi parameter kedudukan
apabila nama fail dilaksanakan. Jika tidak, parameter kedudukan tidak berubah. The
status pulangan ialah status perintah terakhir yang dikeluarkan dalam skrip (0 jika tidak
arahan dilaksanakan), dan palsu jika nama fail tidak ditemui atau tidak boleh dibaca.

alias [-p] [nama[=nilai] ...]
Alias tanpa hujah atau dengan -p pilihan mencetak senarai alias dalam
bentuk alias nama=nilai pada keluaran standard. Apabila hujah dibekalkan, alias adalah
ditakrifkan untuk setiap nama yang nilai diberikan. Ruang belakang di nilai menyebabkannya
perkataan seterusnya untuk diperiksa untuk penggantian alias apabila alias dikembangkan. Untuk
setiap nama dalam senarai hujah yang tidak nilai dibekalkan, nama dan nilai
alias dicetak. Alias kembali benar melainkan a nama diberikan yang tidak
alias telah ditakrifkan.

bg [jobspec ...]
Sambung semula setiap kerja yang digantung jobspec di latar belakang, seolah-olah ia telah dimulakan dengan
&. Jika jobspec tidak hadir, tanggapan shell tentang semasa kerja digunakan. bg
jobspec mengembalikan 0 melainkan dijalankan apabila kawalan kerja dilumpuhkan atau, apabila dijalankan dengan kerja
kawalan didayakan, mana-mana yang ditentukan jobspec tidak ditemui atau dimulakan tanpa pekerjaan
kawalan.

mengikat [-m peta kunci] [-lpsvPSVX]
mengikat [-m peta kunci] [-q fungsi] [-u fungsi] [-r keyseq]
mengikat [-m peta kunci] -f nama fail
mengikat [-m peta kunci] -x keyseq:perintah shell
mengikat [-m peta kunci] keyseq:nama fungsi
mengikat readline-command
Paparan semasa garis baca pengikatan kunci dan fungsi, ikat urutan kunci kepada a
garis baca fungsi atau makro, atau set a garis baca pembolehubah. Setiap hujah bukan pilihan
adalah perintah seperti yang akan muncul dalam .inputrc, tetapi setiap pengikatan atau perintah mestilah
diluluskan sebagai hujah yang berasingan; cth, '"\Cx\Cr": baca semula-init-file'. Pilihan, jika
dibekalkan, mempunyai makna berikut:
-m peta kunci
Penggunaan peta kunci sebagai peta utama yang akan dipengaruhi oleh pengikatan berikutnya.
Diterima peta kunci nama adalah emacs, emacs-standard, emacs-meta, emacs-ctlx,
vi, vi-move, arahan vi, dan sisipan vi. vi adalah bersamaan dengan arahan vi;
emacs adalah bersamaan dengan emacs-standard.
-l Senaraikan nama semua garis baca fungsi.
-p paparan garis baca nama fungsi dan pengikatan dengan cara yang boleh
baca semula.
-P Senaraikan semasa garis baca nama fungsi dan ikatan.
-s paparan garis baca jujukan kunci terikat pada makro dan rentetan yang dikeluarkannya
dengan cara yang boleh dibaca semula.
-S paparan garis baca jujukan kunci terikat pada makro dan rentetan yang dikeluarkannya.
-v paparan garis baca pembolehubah nama dan nilai dengan cara yang boleh
baca semula.
-V Senaraikan semasa garis baca nama pembolehubah dan nilai.
-f nama fail
Baca pengikatan utama daripada nama fail.
-q fungsi
Pertanyaan tentang kekunci yang menggunakan nama tersebut fungsi.
-u fungsi
Nyahikat semua kunci yang terikat pada yang dinamakan fungsi.
-r keyseq
Alih keluar sebarang pengikatan semasa untuk keyseq.
-x keyseq:perintah shell
Punca perintah shell untuk dilaksanakan pada bila-bila masa keyseq dimasukkan. Bila
perintah shell dilaksanakan, shell menetapkan READLINE_LINE pembolehubah kepada
kandungan garis baca penampan talian dan READLINE_POINT pembolehubah kepada
lokasi semasa titik sisipan. Jika arahan yang dilaksanakan berubah
nilai READLINE_LINE or READLINE_POINT, nilai baharu tersebut ialah
tercermin dalam keadaan penyuntingan.
-X Senaraikan semua jujukan kunci yang terikat pada arahan shell dan arahan yang berkaitan
dalam format yang boleh digunakan semula sebagai input.

Nilai pulangan ialah 0 melainkan pilihan yang tidak dikenali diberikan atau ralat berlaku.

memecahkan [n]
Keluar dari dalam a Untuk, manakala, sehingga, Atau pilih gelung. Jika n ditentukan, putus n
peringkat. n mestilah ≥ 1. Jika n adalah lebih besar daripada bilangan gelung penutup, semua
gelung penutup terkeluar. Nilai pulangan ialah 0 melainkan n tidak lebih besar daripada atau
sama dengan 1.

dibina binaan cangkerang [hujah]
Jalankan shell builtin yang ditentukan, luluskannya hujah, dan kembalikan pintu keluarnya
status. Ini berguna apabila mentakrifkan fungsi yang namanya sama dengan shell
builtin, mengekalkan fungsi builtin dalam fungsi. The cd
builtin biasanya ditakrifkan semula dengan cara ini. Status pemulangan adalah palsu jika
binaan cangkerang bukan perintah terbina dalam shell.

pemanggil [expr]
Mengembalikan konteks sebarang panggilan subrutin aktif (fungsi shell atau skrip
dilaksanakan dengan . or sumber binaan). Tanpa expr, pemanggil memaparkan garisan
nombor dan nama fail sumber bagi panggilan subrutin semasa. Jika bukan negatif
integer dibekalkan sebagai expr, pemanggil memaparkan nombor baris, nama subrutin dan
fail sumber yang sepadan dengan kedudukan itu dalam timbunan panggilan pelaksanaan semasa.
Maklumat tambahan ini boleh digunakan, sebagai contoh, untuk mencetak surih tindanan. The
bingkai semasa ialah bingkai 0. Nilai pulangan ialah 0 melainkan shell tidak melaksanakan
panggilan subrutin atau expr tidak sepadan dengan kedudukan yang sah dalam panggilan
timbunan.

cd [-L|[-P [-e]] [-@]] [dir]
Tukar direktori semasa kepada dir. jika dir tidak dibekalkan, nilai LAMAN UTAMA
pembolehubah shell adalah lalai. Sebarang hujah tambahan berikut dir tidak dipedulikan.
Pemboleh ubah CDPATH mentakrifkan laluan carian untuk direktori yang mengandungi dir: setiap satu
nama direktori dalam CDPATH sedang dicari dir. Nama direktori alternatif dalam
CDPATH dipisahkan oleh titik bertindih (:). Nama direktori nol dalam CDPATH adalah sama
sebagai direktori semasa, iaitu, ``.''. Jika dir bermula dengan garis miring (/), kemudian CDPATH
tidak digunakan. The -P punca pilihan cd untuk menggunakan struktur direktori fizikal oleh
menyelesaikan pautan simbolik semasa melintasi dir dan sebelum memproses contoh ..
in dir (lihat juga -P pilihan untuk menetapkan arahan terbina); yang -L kuasa pilihan
pautan simbolik untuk diikuti dengan menyelesaikan pautan selepas memproses contoh
.. in dir. Jika .. muncul di dir, ia diproses dengan mengalih keluar serta-merta
komponen nama laluan sebelumnya daripada dir, kembali ke garis miring atau permulaan dir. Jika
yang -e pilihan dibekalkan dengan -P, dan direktori kerja semasa tidak boleh
berjaya ditentukan selepas perubahan direktori yang berjaya, cd akan mengembalikan sebuah
status tidak berjaya. Pada sistem yang menyokongnya, -@ pilihan membentangkan
atribut lanjutan yang dikaitkan dengan fail sebagai direktori. Hujah daripada - is
ditukar kepada $OLDPWD sebelum penukaran direktori dicuba. Jika tidak kosong
nama direktori daripada CDPATH digunakan, atau jika - ialah hujah pertama, dan
penukaran direktori berjaya, nama laluan mutlak bagi direktori kerja baharu
ditulis kepada keluaran piawai. Nilai pulangan adalah benar jika direktori itu adalah
berjaya diubah; palsu sebaliknya.

arahan [-pVv] arahan [berhujah ...]
Main arahan bersama args menekan carian fungsi shell biasa. Hanya terbina
perintah atau perintah yang terdapat dalam PATH dilaksanakan. Sekiranya -p pilihan diberi,
pencarian untuk arahan dilakukan menggunakan nilai lalai untuk PATH itu dia
dijamin untuk mencari semua utiliti standard. Jika sama ada -V or -v pilihan adalah
dibekalkan, penerangan tentang arahan dicetak. The -v pilihan menyebabkan satu perkataan
menunjukkan arahan atau nama fail yang digunakan untuk memanggil arahan untuk dipaparkan; yang -V
pilihan menghasilkan penerangan yang lebih terperinci. Sekiranya -V or -v pilihan dibekalkan,
status keluar ialah 0 jika arahan ditemui, dan 1 jika tidak. Jika tiada pilihan
dibekalkan dan ralat berlaku atau arahan tidak dapat ditemui, status keluar ialah 127.
Jika tidak, status keluar dari arahan builtin ialah status keluar dari arahan.

compgen [pilihan] [perkataan]
Hasilkan padanan penyelesaian yang mungkin untuk perkataan mengikut pilihans, yang mungkin
menjadi sebarang pilihan yang diterima oleh melengkapkan builtin dengan pengecualian -p and -r, dan
tulis padanan pada output standard. Apabila menggunakan -F or -C pilihan, yang
pelbagai pembolehubah shell yang ditetapkan oleh kemudahan penyiapan boleh atur cara, manakala
tersedia, tidak akan mempunyai nilai berguna.

Padanan akan dijana dengan cara yang sama seperti penyiapan boleh atur cara
kod telah menjananya secara langsung daripada spesifikasi penyiapan dengan yang sama
bendera. Jika perkataan ditentukan, hanya penyiapan yang sepadan perkataan akan
dipaparkan.

Nilai pulangan adalah benar melainkan pilihan yang tidak sah dibekalkan, atau tiada padanan
dihasilkan.

melengkapkan [-abcdefgjksuv] [-o comp-opsyen] [-DE] [-A tindakan] [-G globpat] [-W senarai perkataan] [-F
fungsi] [-C arahan]
[-X filterpat] [-P awalan] [-S akhiran] nama [nama ...]
melengkapkan -pr [-DE] [nama ...]
Nyatakan bagaimana hujah untuk setiap nama hendaklah dilengkapkan. Sekiranya -p pilihan adalah
dibekalkan, atau jika tiada pilihan dibekalkan, spesifikasi siap sedia ada adalah
dicetak dengan cara yang membolehkannya digunakan semula sebagai input. The -r pilihan membuang a
spesifikasi penyiapan bagi setiap nama, atau, jika tidak namas dibekalkan, semua
spesifikasi penyiapan. The -D pilihan menunjukkan bahawa pilihan yang tinggal dan
tindakan harus digunakan pada penyelesaian perintah `` lalai'; iaitu penyempurnaan
mencuba arahan yang belum ditakrifkan sebelum ini penyelesaiannya. The -E
pilihan menunjukkan bahawa pilihan dan tindakan yang tinggal harus digunakan untuk ``kosong''
penyelesaian arahan; iaitu, percubaan penyelesaian pada baris kosong.

Proses mengaplikasikan spesifikasi penyiapan ini apabila penyiapan perkataan adalah
percubaan diterangkan di atas di bawah Boleh diprogramkan Selesai.

Pilihan lain, jika dinyatakan, mempunyai makna berikut. Hujah-hujah kepada -G,
-W, dan -X pilihan (dan, jika perlu, -P and -S pilihan) hendaklah dipetik kepada
melindungi mereka daripada pengembangan sebelum melengkapkan builtin dipanggil.
-o comp-opsyen
. comp-opsyen mengawal beberapa aspek tingkah laku compspec di luar
generasi penyiapan yang mudah. comp-opsyen mungkin salah satu daripada:
bashdefault
Lakukan baki lalai menampar siap jika compspec
tidak menjana padanan.
lalai Gunakan pelengkapan nama fail lalai readline jika fail compspec
tidak menjana padanan.
diname
Lakukan penyiapan nama direktori jika compspec menjana no
perlawanan.
nama fail
Beritahu readline bahawa compspec menjana nama fail, jadi ia boleh
melakukan sebarang pemprosesan khusus nama fail (seperti menambah garis miring ke
nama direktori, memetik aksara khas, atau menindas
ruang belakang). Bertujuan untuk digunakan dengan fungsi shell.
tiada sebut harga Beritahu readline untuk tidak memetik perkataan yang telah lengkap jika ada
nama fail (memetik nama fail adalah lalai).
tiada ruang Beritahu baris baca untuk tidak menambah ruang (lalai) pada perkataan
selesai di hujung baris.
plusdirs
Selepas sebarang padanan yang ditakrifkan oleh compspec dijana, direktori
pelengkapan nama dicuba dan sebarang padanan ditambah pada
hasil daripada tindakan lain.
-A tindakan
. tindakan mungkin salah satu daripada yang berikut untuk menjana senarai yang mungkin
penyiapan:
alias Nama alias. Boleh juga dinyatakan sebagai -a.
arrayvar
Nama pembolehubah tatasusunan.
mengikat Bacaan nama pengikat kunci.
dibina Nama perintah terbina dalam shell. Boleh juga dinyatakan sebagai -b.
arahan Nama perintah. Boleh juga dinyatakan sebagai -c.
direktori
Nama direktori. Boleh juga dinyatakan sebagai -d.
orang kurang upaya
Nama binaan shell yang dilumpuhkan.
membolehkan Nama binaan shell yang didayakan.
mengeksport Nama pembolehubah shell yang dieksport. Boleh juga dinyatakan sebagai -e.
fail Nama fail. Boleh juga dinyatakan sebagai -f.
fungsi
Nama fungsi shell.
kumpulan Nama kumpulan. Boleh juga dinyatakan sebagai -g.
helptopic
Topik bantuan seperti yang diterima oleh membantu terbina dalam.
nama hos
Nama hos, seperti yang diambil daripada fail yang ditentukan oleh HOSTFILE shell
berubah-ubah.
kerja Nama kerja, jika kawalan kerja aktif. Boleh juga dinyatakan sebagai -j.
kata kunci Kata-kata simpanan Shell. Boleh juga dinyatakan sebagai -k.
berlari Nama pekerjaan yang dijalankan, jika kawalan kerja aktif.
perkhidmatan Nama perkhidmatan. Boleh juga dinyatakan sebagai -s.
setopt Hujah yang sah untuk -o pilihan untuk menetapkan terbina dalam.
shopt Nama pilihan Shell seperti yang diterima oleh shopt terbina dalam.
isyarat Nama isyarat.
berhenti Nama kerja yang dihentikan, jika kawalan kerja aktif.
pengguna Nama pengguna. Boleh juga dinyatakan sebagai -u.
berubah-ubah
Nama semua pembolehubah shell. Boleh juga dinyatakan sebagai -v.
-C arahan
arahan dilaksanakan dalam persekitaran subkulit, dan outputnya digunakan sebagai
penyiapan yang mungkin.
-F fungsi
Fungsi cangkerang fungsi dilaksanakan dalam persekitaran shell semasa.
Apabila fungsi itu dilaksanakan, hujah pertama ($1) ialah nama bagi
perintah yang hujahnya sedang diselesaikan, hujah kedua ($2) adalah
perkataan sedang dilengkapkan, dan hujah ketiga ($3) ialah perkataan di hadapan
perkataan sedang dilengkapkan pada baris arahan semasa. Apabila ia selesai,
penyiapan yang mungkin diperolehi daripada nilai MEMATUHI
pembolehubah tatasusunan.
-G globpat
Corak pengembangan nama laluan globpat diperluaskan untuk menjana yang mungkin
penyiapan.
-P awalan
awalan ditambah pada permulaan setiap penyiapan yang mungkin
pilihan lain telah digunakan.
-S akhiran
akhiran dilampirkan pada setiap penyiapan yang mungkin selepas semua pilihan lain ada
telah diaplikasikan.
-W senarai perkataan
. senarai perkataan dipecahkan menggunakan aksara dalam IFS pembolehubah khas sebagai
pembatas, dan setiap perkataan yang terhasil dikembangkan. Penyiapan yang mungkin
ialah ahli senarai terhasil yang sepadan dengan perkataan yang sedang dilengkapkan.
-X filterpat
filterpat ialah corak seperti yang digunakan untuk pengembangan nama laluan. Ia digunakan untuk
senarai kemungkinan penyiapan yang dijana oleh pilihan sebelumnya dan
hujah, dan setiap padanan penyelesaian filterpat dikeluarkan daripada senarai.
Yang terkemuka ! in filterpat menafikan corak; dalam kes ini, sebarang penyiapan
tidak sepadan filterpat dikeluarkan.

Nilai pulangan adalah benar melainkan pilihan yang tidak sah dibekalkan, pilihan selain daripada
-p or -r dibekalkan tanpa a nama hujah, percubaan dibuat untuk mengeluarkan a
spesifikasi penyiapan untuk a nama yang mana tiada spesifikasi wujud, atau ralat
berlaku menambah spesifikasi penyiapan.

kompos [-o pilihan] [-DE] [+o pilihan] [nama]
Ubah suai pilihan penyiapan untuk setiap satu nama mengikut pilihans, atau untuk
sedang melaksanakan penyiapan jika tidak namas dibekalkan. Jika tidak pilihans diberikan,
memaparkan pilihan penyiapan untuk setiap nama atau penyiapan semasa. The
nilai yang mungkin bagi pilihan adakah yang sah untuk melengkapkan builtin yang diterangkan di atas.
. -D pilihan menunjukkan bahawa pilihan yang tinggal harus digunakan pada `` lalai''
penyelesaian arahan; iaitu, percubaan penyelesaian pada arahan yang tidak
penyiapan telah ditakrifkan sebelum ini. The -E pilihan menunjukkan bahawa baki
pilihan hendaklah digunakan untuk pelengkapan arahan ``kosong'; iaitu percubaan penyiapan
pada baris kosong.

Nilai pulangan adalah benar melainkan pilihan yang tidak sah dibekalkan, percubaan dibuat
untuk mengubah suai pilihan untuk a nama yang tiada spesifikasi penyiapan wujud, atau
ralat keluaran berlaku.

terus [n]
Sambung semula lelaran seterusnya lampiran Untuk, manakala, sehingga, Atau pilih gelung. Jika n
dinyatakan, sambung semula di ngelung penutup ke-. n mestilah ≥ 1. Jika n lebih besar
daripada bilangan gelung penutup, gelung penutup terakhir (``peringkat atas''
gelung) disambung semula. Nilai pulangan ialah 0 melainkan n tidak lebih besar daripada atau sama dengan
1.

mengisytiharkan [-aAfFgilnrtux] [-p] [nama[=nilai] ...]
set taip [-aAfFgilnrtux] [-p] [nama[=nilai] ...]
Isytiharkan pembolehubah dan/atau berikan mereka atribut. Jika tidak namas diberikan kemudian paparan
nilai pembolehubah. The -p pilihan akan memaparkan atribut dan nilai
setiap nama. Apabila -p digunakan dengan nama hujah, pilihan tambahan, selain daripada -f
and -F, diabaikan. Bila -p dibekalkan tanpa nama hujah, ia akan dipaparkan
atribut dan nilai semua pembolehubah yang mempunyai atribut yang ditentukan oleh
pilihan tambahan. Jika tiada pilihan lain dibekalkan dengan -p, mengisytiharkan akan dipaparkan
atribut dan nilai semua pembolehubah shell. The -f pilihan akan menyekat
paparan kepada fungsi shell. The -F pilihan menghalang paparan fungsi
takrifan; hanya nama fungsi dan atribut dicetak. Sekiranya extdebug
pilihan shell didayakan menggunakan shopt, nama fail sumber dan nombor baris di mana
fungsi ditakrifkan dipaparkan juga. The -F pilihan membayangkan -f. Yang -g
pilihan memaksa pembolehubah dibuat atau diubah suai pada skop global, walaupun apabila
mengisytiharkan dilaksanakan dalam fungsi shell. Ia diabaikan dalam semua kes lain. The
pilihan berikut boleh digunakan untuk menyekat output kepada pembolehubah dengan yang ditentukan
atribut atau untuk memberikan atribut pembolehubah:
-a setiap nama ialah pembolehubah tatasusunan yang diindeks (lihat Arrays di atas).
-A setiap nama ialah pembolehubah tatasusunan bersekutu (lihat Arrays di atas).
-f Gunakan nama fungsi sahaja.
-i Pembolehubah dianggap sebagai integer; penilaian aritmetik (lihat ARITMETIK
PENILAIAN di atas) dilakukan apabila pembolehubah diberikan nilai.
-l Apabila pembolehubah diberikan nilai, semua aksara huruf besar adalah
ditukar kepada huruf kecil. Atribut huruf besar dilumpuhkan.
-n Berikan setiap satu nama yang nameref atribut, menjadikannya rujukan nama kepada yang lain
pembolehubah. Pembolehubah lain itu ditakrifkan oleh nilai nama. Semua
rujukan dan tugasan kepada nama, kecuali untuk menukar -n atribut
itu sendiri, dilakukan pada pembolehubah yang dirujuk oleh namanilai. The -n
atribut tidak boleh digunakan pada pembolehubah tatasusunan.
-r Membuat namas baca sahaja. Nama-nama ini kemudiannya tidak boleh diberikan nilai oleh
penyataan tugasan berikutnya atau tidak ditetapkan.
-t Berikan setiap satu nama yang mengesan atribut. Fungsi yang dikesan mewarisi HUTANG and
PULANG BALIK perangkap dari cangkerang panggilan. Atribut jejak tidak mempunyai keistimewaan
makna bagi pembolehubah.
-u Apabila pembolehubah diberikan nilai, semua aksara huruf kecil adalah
ditukar kepada huruf besar. Atribut huruf kecil dilumpuhkan.
-x Menandakan namas untuk eksport ke arahan seterusnya melalui persekitaran.

Menggunakan `+' dan bukannya `-' sebaliknya mematikan atribut, dengan pengecualian itu
+a tidak boleh digunakan untuk memusnahkan pembolehubah tatasusunan dan +r tidak akan mengalih keluar baca sahaja
atribut. Apabila digunakan dalam fungsi, mengisytiharkan and set taip buat masing-masing nama tempatan, sebagai
dengan tempatan perintah, melainkan jika -g pilihan dibekalkan. Jika nama pembolehubah ialah
diikuti dengan =nilai, nilai pembolehubah ditetapkan kepada nilai. Semasa menggunakan -a or -A
dan sintaks penugasan kompaun untuk mencipta pembolehubah tatasusunan, atribut tambahan
tidak berkuat kuasa sehingga tugasan berikutnya. Nilai pulangan ialah 0 melainkan an
pilihan tidak sah ditemui, percubaan dibuat untuk mentakrifkan fungsi menggunakan ``-f
foo=bar'', percubaan dibuat untuk memberikan nilai kepada pembolehubah baca sahaja, percubaan
dibuat untuk memberikan nilai kepada pembolehubah tatasusunan tanpa menggunakan kompaun
sintaks tugasan (lihat Arrays di atas), salah satu daripada nama bukan cangkerang yang sah
nama ubah, percubaan dibuat untuk mematikan status baca sahaja untuk baca sahaja
pembolehubah, percubaan dibuat untuk mematikan status tatasusunan untuk pembolehubah tatasusunan, atau satu
percubaan dibuat untuk memaparkan fungsi yang tidak wujud dengan -f.

dirs [-clpv] [+n] [-n]
Tanpa pilihan, memaparkan senarai direktori yang sedang diingati. The
paparan lalai adalah pada satu baris dengan nama direktori dipisahkan oleh ruang.
Direktori ditambahkan pada senarai dengan pushd perintah; yang popd arahan mengalih keluar
entri daripada senarai.
-c Kosongkan timbunan direktori dengan memadam semua entri.
-l Menghasilkan penyenaraian menggunakan nama laluan penuh; format penyenaraian lalai menggunakan a
tilde untuk menandakan direktori rumah.
-p Cetak susunan direktori dengan satu entri setiap baris.
-v Cetak susunan direktori dengan satu entri setiap baris, awalan setiap entri dengan
indeksnya dalam timbunan.
+n Memaparkan npengiraan kemasukan ke dari kiri senarai yang ditunjukkan oleh dirs apabila
dipanggil tanpa pilihan, bermula dengan sifar.
-n Memaparkan nentri ke dikira dari kanan senarai yang ditunjukkan oleh dirs
apabila dipanggil tanpa pilihan, bermula dengan sifar.

Nilai pulangan ialah 0 melainkan pilihan yang tidak sah dibekalkan atau n indeks di luar
hujung timbunan direktori.

tidak dibenarkan [-ar] [-h] [jobspec ...]
Tanpa pilihan, keluarkan setiap satu jobspec daripada jadual pekerjaan aktif. Jika jobspec is
tidak hadir, dan tidak juga -a tidak juga -r pilihan dibekalkan, yang semasa kerja is
digunakan. Sekiranya -h pilihan diberikan, setiap satu jobspec tidak dikeluarkan dari meja, tetapi
ditanda supaya PENDAPATAN tidak dihantar ke kerja jika shell menerima a PENDAPATAN. Jika
tidak jobspec dibekalkan, yang -a pilihan bermaksud mengalih keluar atau menandakan semua kerja; yang -r
pilihan tanpa a jobspec hujah mengehadkan operasi untuk menjalankan kerja. Pulangannya
nilai ialah 0 melainkan a jobspec tidak menyatakan pekerjaan yang sah.

echo [-neE] [berhujah ...]
Keluarkan berhujahs, dipisahkan oleh ruang, diikuti dengan baris baharu. Status pulangan ialah
0 melainkan ralat tulis berlaku. Jika -n ditentukan, baris baharu yang mengekori ialah
ditindas. Sekiranya -e pilihan diberikan, tafsiran garis miring terbalik berikut-
aksara yang dilepaskan didayakan. The -E pilihan melumpuhkan tafsiran ini
aksara melarikan diri, walaupun pada sistem yang ditafsirkan secara lalai. The
xpg_echo pilihan shell boleh digunakan untuk menentukan secara dinamik sama ada echo
mengembangkan aksara melarikan diri ini secara lalai. echo tidak mentafsir -- bermaksud
akhir pilihan. echo mentafsir urutan pelarian berikut:
\a amaran (loceng)
\b backspace
\c menekan keluaran selanjutnya
\e
\E watak melarikan diri
\f suapan bentuk
\n baris baru
\r perjalanan balik kereta
\t tab mendatar
\v tab menegak
\\ garis belakang
\0nnn aksara lapan bit yang nilainya ialah nilai perlapanan nnn (sifar hingga tiga
digit perlapanan)
\xHH aksara lapan-bit yang nilainya ialah nilai perenambelasan HH (satu atau dua
digit hex)
\uHHHH aksara Unicode (ISO/IEC 10646) yang nilainya ialah nilai perenambelasan
HHHH (satu hingga empat digit heks)
\UHHHHHHH
aksara Unicode (ISO/IEC 10646) yang nilainya ialah nilai perenambelasan
HHHHHHH (satu hingga lapan digit heks)

membolehkan [-a] [-dnps] [-f nama fail] [nama ...]
Dayakan dan lumpuhkan arahan shell terbina dalam. Melumpuhkan builtin membenarkan cakera
arahan yang mempunyai nama yang sama dengan shell builtin untuk dilaksanakan tanpa
menentukan nama laluan penuh, walaupun shell biasanya mencari binaan
sebelum arahan cakera. Jika -n digunakan, masing-masing nama dilumpuhkan; jika tidak, nama adalah
didayakan. Sebagai contoh, untuk menggunakan ujian binari ditemui melalui PATH bukannya
versi terbina dalam shell, jalankan ``dayakan -n test''. The -f pilihan bermaksud memuatkan yang baharu
arahan terbina nama daripada objek kongsi nama fail, pada sistem yang menyokong dinamik
memuatkan. The -d pilihan akan memadamkan binaan yang dimuatkan sebelum ini -f. Jika tidak
nama hujah diberikan, atau jika -p pilihan dibekalkan, senarai binaan shell
dicetak. Tanpa argumen pilihan lain, senarai itu terdiri daripada semua shell yang didayakan
binaan. Jika -n dibekalkan, hanya binaan yang dilumpuhkan dicetak. Jika -a is
dibekalkan, senarai yang dicetak termasuk semua binaan, dengan petunjuk sama ada atau
tidak setiap satu didayakan. Jika -s dibekalkan, output adalah terhad kepada POSIX
khas binaan. Nilai pulangan ialah 0 melainkan a nama bukan shell builtin atau
terdapat ralat memuatkan terbina baharu daripada objek kongsi.

menipu [berhujah ...]
. berhujahs dibaca dan digabungkan bersama menjadi satu arahan. Perintah ini ialah
kemudian dibaca dan dilaksanakan oleh shell, dan status keluarnya dikembalikan sebagai nilai
of menipu. Jika tiada args, atau hanya argumen nol, menipu mengembalikan 0.

exec [-cl] [-a nama] [arahan [hujah]]
If arahan ditentukan, ia menggantikan cangkerang. Tiada proses baharu dibuat. The
hujah menjadi hujah kepada arahan. Jika -l pilihan dibekalkan, shell
meletakkan sengkang pada permulaan hujah sifar yang dihantar ke arahan. Ini adalah
apa log masuk(1) tidak. The -c punca pilihan arahan untuk dilaksanakan dengan kosong
persekitaran. Jika -a dibekalkan, cangkerang berlalu nama sebagai hujah sifar kepada
perintah yang dilaksanakan. Jika arahan tidak boleh dilaksanakan atas sebab tertentu, bukan
shell interaktif keluar, melainkan jika execfail pilihan shell didayakan. Dalam itu
kes, ia mengembalikan kegagalan. Cangkang interaktif mengembalikan kegagalan jika fail tidak boleh
dilaksanakan. Jika arahan tidak dinyatakan, sebarang ubah hala berkuat kuasa dalam
shell semasa, dan status pulangan ialah 0. Jika terdapat ralat pengalihan, fail
status pulangan ialah 1.

keluar [n]
Menyebabkan shell keluar dengan status n. Jika n ditinggalkan, status keluar ialah
arahan terakhir yang dilaksanakan. Perangkap pada EXIT dilaksanakan sebelum shell
tamat.

mengeksport [-fn] [nama[=perkataan]] ...
mengeksport -p
Yang dibekalkan nama ditandakan untuk eksport automatik ke persekitaran
kemudiannya melaksanakan perintah. Sekiranya -f pilihan diberikan, iaitu nama rujuk kepada
fungsi. Jika tidak nama diberikan, atau jika -p pilihan dibekalkan, senarai nama
daripada semua pembolehubah yang dieksport dicetak. The -n pilihan menyebabkan harta eksport kepada
dikeluarkan daripada setiap nama. Jika nama pembolehubah diikuti dengan =perkataan, nilai
pembolehubah ditetapkan kepada perkataan. mengeksport mengembalikan status keluar 0 melainkan tidak sah
pilihan ditemui, salah satu daripada nama bukan nama pembolehubah shell yang sah, atau -f
dibekalkan dengan a nama itu bukan fungsi.

fc [-e ename] [-lnr] [pertama] [lepas]
fc -s [tepuk=rep] [cmd]
Borang pertama memilih julat arahan daripada pertama kepada lepas daripada senarai sejarah
dan memaparkan atau mengedit dan melaksanakannya semula. pertama and lepas boleh dinyatakan sebagai a
rentetan (untuk mencari perintah terakhir bermula dengan rentetan itu) atau sebagai nombor (an
indeks ke dalam senarai sejarah, di mana nombor negatif digunakan sebagai offset daripada
nombor arahan semasa). Jika lepas tidak ditentukan ia ditetapkan kepada arahan semasa
untuk penyenaraian (supaya ``fc -l -10'' mencetak 10 arahan terakhir) dan untuk pertama
sebaliknya. Jika pertama tidak ditentukan ia ditetapkan kepada arahan sebelumnya untuk mengedit
dan -16 untuk penyenaraian.

. -n pilihan menyekat nombor arahan semasa menyenaraikan. The -r pilihan terbalik
susunan perintah. Sekiranya -l pilihan diberikan, arahan disenaraikan pada
keluaran standard. Jika tidak, editor yang diberikan oleh ename dipanggil pada fail
mengandungi perintah tersebut. Jika ename tidak diberikan, nilai yang FCEDIT berubah-ubah
digunakan, dan nilai EDITOR if FCEDIT tidak ditetapkan. Jika tiada pembolehubah ditetapkan,
vi digunakan. Apabila pengeditan selesai, arahan yang diedit akan digemakan dan dilaksanakan.

Dalam bentuk kedua, arahan dilaksanakan semula selepas setiap contoh tepuk diganti
by rep. Perintah ditafsirkan sama seperti pertama atas. Alias ​​yang berguna untuk digunakan
ini ialah ``r="fc -s"'', supaya menaip ``r cc'' menjalankan perintah terakhir bermula dengan
``cc'' dan menaip ``r'' melaksanakan semula arahan terakhir.

Jika borang pertama digunakan, nilai pulangan ialah 0 melainkan pilihan yang tidak sah
dihadapi atau pertama or lepas nyatakan garis sejarah di luar julat. Sekiranya -e pilihan
dibekalkan, nilai pulangan ialah nilai perintah terakhir yang dilaksanakan atau kegagalan
jika ralat berlaku dengan fail sementara arahan. Jika bentuk kedua ialah
digunakan, status pemulangan ialah perintah yang dilaksanakan semula, melainkan cmd tidak
nyatakan baris sejarah yang sah, dalam hal ini fc mengembalikan kegagalan.

fg [jobspec]
resume jobspec di latar depan, dan menjadikannya sebagai tugas semasa. Jika jobspec tidak
sekarang, tanggapan cangkerang tentang semasa kerja digunakan. Nilai pulangan ialah itu
daripada arahan yang diletakkan di latar depan, atau kegagalan jika dijalankan semasa kawalan kerja
dilumpuhkan atau, apabila dijalankan dengan kawalan kerja didayakan, jika jobspec tidak menyatakan yang sah
pekerjaan atau jobspec menentukan kerja yang dimulakan tanpa kawalan kerja.

getopts optstring nama [args]
getopts digunakan oleh prosedur shell untuk menghuraikan parameter kedudukan. optstring
mengandungi aksara pilihan untuk diiktiraf; jika sesuatu watak diikuti oleh a
kolon, pilihan itu dijangka mempunyai hujah, yang harus dipisahkan daripada
ia dengan ruang putih. Aksara bertindih dan tanda soal tidak boleh digunakan sebagai
aksara pilihan. Setiap kali ia dipanggil, getopts meletakkan pilihan seterusnya dalam
pembolehubah shell nama, memulakan nama jika ia tidak wujud, dan indeks
hujah seterusnya untuk diproses menjadi pembolehubah OPTIND. OPTIND dimulakan kepada 1
setiap kali shell atau skrip shell digunakan. Apabila pilihan memerlukan satu
hujah, getopts meletakkan hujah itu ke dalam pembolehubah OPTARG. cangkerang tidak
tidak ditetapkan semula OPTIND secara automatik; ia mesti ditetapkan semula secara manual antara berbilang panggilan ke
getopts dalam seruan shell yang sama jika set parameter baharu akan digunakan.

Apabila akhir pilihan ditemui, getopts keluar dengan nilai pulangan yang lebih besar
daripada sifar. OPTIND ditetapkan kepada indeks argumen bukan pilihan pertama, dan nama
ditetapkan kepada ?.

getopts biasanya menghuraikan parameter kedudukan, tetapi jika lebih banyak hujah diberikan
in args, getopts menghuraikan mereka sebaliknya.

getopts boleh melaporkan ralat dalam dua cara. Jika watak pertama daripada optstring ialah
kolon, senyap pelaporan ralat digunakan. Dalam operasi biasa, mesej diagnostik
dicetak apabila pilihan yang tidak sah atau argumen pilihan yang hilang ditemui. Jika
pemboleh ubah OPTERR ditetapkan kepada 0, tiada mesej ralat akan dipaparkan, walaupun jika
watak pertama optstring bukan kolon.

Jika pilihan yang tidak sah dilihat, getopts tempat ? ke dalam nama dan, jika tidak senyap, mencetak
mesej ralat dan tidak ditetapkan OPTARG. Jika getopts adalah senyap, watak pilihan
dijumpai diletakkan di OPTARG dan tiada mesej diagnostik dicetak.

Jika hujah yang diperlukan tidak dijumpai, dan getopts tidak senyap, tanda tanya (?)
diletakkan di nama, OPTARG tidak ditetapkan, dan mesej diagnostik dicetak. Jika
getopts senyap, kemudian kolon (:) diletakkan di nama and OPTARG ditetapkan kepada
aksara pilihan ditemui.

getopts mengembalikan benar jika pilihan, ditentukan atau tidak ditentukan, ditemui. Ia kembali
palsu jika akhir pilihan ditemui atau ralat berlaku.

hash [-lr] [-p nama fail] [-dt] [nama]
Setiap masa hash dipanggil, nama laluan penuh arahan itu nama ditentukan oleh
mencari direktori dalam $ PATH dan teringat. Mana-mana yang diingati sebelum ini
nama laluan dibuang. Sekiranya -p pilihan dibekalkan, tiada carian laluan dilakukan,
and nama fail digunakan sebagai nama fail penuh arahan. The -r pilihan menyebabkan
shell untuk melupakan semua lokasi yang diingati. The -d pilihan menyebabkan shell terlupa
lokasi yang diingati masing-masing nama. Jika -t pilihan dibekalkan, penuh
nama laluan yang masing-masing nama sepadan dicetak. Jika berbilang nama hujah adalah
dibekalkan dengan -t, yang nama dicetak sebelum nama laluan penuh dicincang. The -l
pilihan menyebabkan output dipaparkan dalam format yang boleh digunakan semula sebagai input. Jika
tiada hujah diberikan, atau jika sahaja -l dibekalkan, maklumat tentang diingati
arahan dicetak. Status pemulangan adalah benar melainkan a nama tidak dijumpai atau an
pilihan tidak sah dibekalkan.

membantu [-dms] [pola]
Paparkan maklumat berguna tentang arahan terbina. Jika pola dinyatakan, membantu
memberikan bantuan terperinci pada semua arahan yang sepadan pola; sebaliknya bantuan untuk semua
binaan dan struktur kawalan shell dicetak.
-d Paparkan penerangan ringkas setiap satu pola
-m Paparkan penerangan setiap satu pola dalam format seperti halaman manual
-s Paparkan hanya sinopsis penggunaan ringkas untuk setiap satu pola

Status pulangan ialah 0 melainkan tiada arahan yang sepadan pola.

sejarah [n]
sejarah -c
sejarah -d mengimbangi
sejarah -anrw [nama fail]
sejarah -p berhujah [berhujah ...]
sejarah -s berhujah [berhujah ...]
Tanpa pilihan, paparkan senarai sejarah arahan dengan nombor baris. Barisan yang disenaraikan
dengan * telah diubah suai. Hujah daripada n menyenaraikan yang terakhir sahaja n garisan. Sekiranya
pembolehubah shell FORMAT MASA SEJARAH ditetapkan dan bukan nol, ia digunakan sebagai rentetan format
Untuk masa strft(3) untuk memaparkan cap masa yang dikaitkan dengan setiap sejarah yang dipaparkan
kemasukan. Tiada selang kosong dicetak antara cap masa yang diformatkan dan
garis sejarah. Jika nama fail dibekalkan, ia digunakan sebagai nama fail sejarah;
jika tidak, nilai FAIL SEJARAH digunakan. Pilihan, jika dibekalkan, mempunyai yang berikut
maksud:
-c Kosongkan senarai sejarah dengan memadam semua entri.
-d mengimbangi
Padamkan catatan sejarah pada kedudukan mengimbangi.
-a Tambahkan baris sejarah ``baru'' (baris sejarah yang dimasukkan sejak awal
dari semasa menampar sesi) ke fail sejarah.
-n Baca baris sejarah yang belum dibaca dari fail sejarah ke dalam
senarai sejarah semasa. Ini adalah baris yang dilampirkan pada fail sejarah sejak itu
permulaan arus menampar sesi.
-r Baca kandungan fail sejarah dan tambahkannya pada sejarah semasa
senarai.
-w Tulis senarai sejarah semasa ke fail sejarah, tulis ganti sejarah
kandungan fail.
-p Lakukan penggantian sejarah pada perkara berikut args dan paparkan hasilnya pada
keluaran standard. Tidak menyimpan keputusan dalam senarai sejarah. setiap satu
berhujah mesti dipetik untuk melumpuhkan pengembangan sejarah biasa.
-s Simpan args dalam senarai sejarah sebagai satu entri. Perintah terakhir masuk
senarai sejarah dialih keluar sebelum args ditambah.

Jika FORMAT MASA SEJARAH pembolehubah ditetapkan, maklumat cap masa yang dikaitkan dengan
setiap catatan sejarah ditulis pada fail sejarah, ditandakan dengan ulasan sejarah
watak. Apabila fail sejarah dibaca, baris bermula dengan ulasan sejarah
aksara diikuti serta-merta dengan digit ditafsirkan sebagai cap masa untuk
garis sejarah sebelumnya. Nilai pulangan ialah 0 melainkan pilihan yang tidak sah adalah
dihadapi, ralat berlaku semasa membaca atau menulis fail sejarah, ralat tidak sah
mengimbangi dibekalkan sebagai hujah kepada -d, atau pengembangan sejarah yang dibekalkan sebagai
hujah untuk -p gagal.

pekerjaan [-lnprs] [ jobspec ... ]
pekerjaan -x arahan [ args ... ]
Borang pertama menyenaraikan pekerjaan aktif. Pilihan mempunyai makna berikut:
-l Senaraikan ID proses sebagai tambahan kepada maklumat biasa.
-n Paparkan maklumat hanya tentang pekerjaan yang telah bertukar status sejak pengguna
kali terakhir dimaklumkan tentang status mereka.
-p Senaraikan hanya ID proses ketua kumpulan proses kerja.
-r Paparkan hanya kerja yang sedang dijalankan.
-s Paparan hanya berhenti kerja.

If jobspec diberikan, output terhad kepada maklumat tentang pekerjaan itu. The
status pulangan ialah 0 melainkan pilihan yang tidak sah ditemui atau tidak sah jobspec is
dibekalkan.

Jika -x pilihan dibekalkan, pekerjaan menggantikan mana-mana jobspec dijumpai dalam arahan or args
dengan ID kumpulan proses yang sepadan, dan laksanakan arahan melepasinya args,
mengembalikan status keluarnya.

membunuh [-s sigspec | -n tanda tangan | -sigspec] [pid | jobspec] ...
membunuh -l [sigspec | status_keluar]
Hantar isyarat yang dinamakan oleh sigspec or tanda tangan kepada proses yang dinamakan oleh pid or
jobspec. sigspec ialah sama ada nama isyarat tidak peka huruf besar-besaran seperti SIGKILL (dengan atau
tanpa SIG awalan) atau nombor isyarat; tanda tangan ialah nombor isyarat. Jika sigspec
tidak hadir, maka TANDATANGAN diandaikan. Hujah daripada -l menyenaraikan nama isyarat.
Jika sebarang hujah dibekalkan apabila -l diberikan, nama isyarat
sepadan dengan hujah disenaraikan, dan status pulangan ialah 0. The
status_keluar hujah untuk -l ialah nombor yang menyatakan sama ada nombor isyarat atau
status keluar dari proses yang ditamatkan oleh isyarat. membunuh kembali benar jika sekurang-kurangnya satu
isyarat berjaya dihantar, atau palsu jika ralat berlaku atau pilihan tidak sah
berjumpa.

biarkan berhujah [berhujah ...]
setiap berhujah ialah ungkapan aritmetik untuk dinilai (lihat ARITMETIK PENILAIAN
atas). Jika yang terakhir berhujah menilai kepada 0, biarkan pulangan 1; 0 dikembalikan sebaliknya.

tempatan [pilihan] [nama[=nilai] ...]
Untuk setiap hujah, pembolehubah tempatan dinamakan nama dicipta, dan ditugaskan nilai. Yang
pilihan boleh menjadi mana-mana pilihan yang diterima oleh mengisytiharkan. Apabila tempatan digunakan dalam a
fungsi, ia menyebabkan pembolehubah nama mempunyai skop yang boleh dilihat terhad kepada itu
fungsi dan anak-anaknya. Tanpa operan, tempatan menulis senarai tempatan
pembolehubah kepada keluaran piawai. Ia adalah ralat untuk digunakan tempatan apabila tidak dalam lingkungan a
fungsi. Status pemulangan ialah 0 melainkan tempatan digunakan di luar fungsi, an
tidak sah nama dibekalkan, atau nama ialah pembolehubah baca sahaja.

logout Keluar dari shell log masuk.

fail peta [-n mengira] [-O asal] [-s mengira] [-t] [-u fd] [-C panggil balik] [-c kuantum] [pelbagai]
readarray [-n mengira] [-O asal] [-s mengira] [-t] [-u fd] [-C panggil balik] [-c kuantum]
[pelbagai]
Baca baris daripada input standard ke dalam pembolehubah tatasusunan yang diindeks pelbagai, Atau dari
deskriptor fail fd jika -u pilihan dibekalkan. Pembolehubah MAPFILE adalah
lalai pelbagai. Pilihan, jika dibekalkan, mempunyai makna berikut:
-n Salin paling banyak mengira garisan. Jika mengira ialah 0, semua baris disalin.
-O Mula menugaskan kepada pelbagai pada indeks asal. Indeks lalai ialah 0.
-s Buang yang pertama mengira baris dibaca.
-t Alih keluar baris baharu yang mengekori daripada setiap baris yang dibaca.
-u Baca baris daripada deskriptor fail fd bukannya input standard.
-C menilai panggil balik setiap masa kuantum baris dibaca. The -c pilihan menentukan
kuantum.
-c Nyatakan bilangan baris yang dibaca antara setiap panggilan ke panggil balik.

If -C dinyatakan tanpa -c, kuantum lalai ialah 5000. Apabila panggil balik is
dinilai, ia dibekalkan indeks elemen tatasusunan seterusnya untuk diberikan dan
baris yang akan diberikan kepada elemen itu sebagai hujah tambahan. panggil balik is
dinilai selepas baris dibaca tetapi sebelum elemen tatasusunan diberikan.

Jika tidak dibekalkan dengan asal yang jelas, fail peta akan jelas pelbagai sebelum ditugaskan
kepadanya.

fail peta kembali dengan jayanya melainkan pilihan atau hujah pilihan yang tidak sah
dibekalkan, pelbagai adalah tidak sah atau tidak boleh diserahkan, atau jika pelbagai bukan tatasusunan yang diindeks.

popd [-n] [+n] [-n]
Mengalih keluar masukan daripada timbunan direktori. Tanpa hujah, keluarkan bahagian atas
direktori daripada timbunan, dan melaksanakan a cd ke direktori teratas baharu. Hujah,
jika dibekalkan, mempunyai maksud berikut:
-n Menyekat perubahan biasa direktori apabila mengalih keluar direktori daripada
tindanan, supaya hanya tindanan dimanipulasi.
+n Mengeluarkan npengiraan kemasukan ke dari kiri senarai yang ditunjukkan oleh dirs,
bermula dengan sifar. Contohnya: ``popd +0'' mengalih keluar direktori pertama,
``popd +1'' yang kedua.
-n Mengeluarkan nentri ke dikira dari kanan senarai yang ditunjukkan oleh dirs,
bermula dengan sifar. Contohnya: ``popd -0'' mengalih keluar direktori terakhir,
``popd -1'' seterusnya hingga terakhir.

Jika popd perintah berjaya, a dirs dilakukan juga, dan pulangan
status ialah 0. popd mengembalikan palsu jika pilihan yang tidak sah ditemui, direktori
tindanan kosong, entri tindanan direktori yang tidak wujud ditentukan, atau direktori
perubahan gagal.

Printf [-v var] format [hujah]
Tulis yang diformatkan hujah kepada keluaran standard di bawah kawalan
format. Yang -v pilihan menyebabkan output diberikan kepada pembolehubah var sebaliknya
daripada dicetak ke output standard.

. format ialah rentetan aksara yang mengandungi tiga jenis objek: biasa
aksara, yang hanya disalin ke output standard, urutan pelarian aksara,
yang ditukar dan disalin ke output standard, dan spesifikasi format,
setiap satunya menyebabkan pencetakan berturut-turut seterusnya hujah. Sebagai tambahan kepada
standard Printf(1) spesifikasi format, Printf mentafsir perkara berikut
sambungan:
%b sebab-sebab Printf untuk mengembangkan jujukan melarikan diri garis miring ke belakang dalam yang sepadan
hujah (kecuali itu \c menamatkan output, garis miring ke belakang \', \", dan \?
tidak dikeluarkan, dan pelarian oktal bermula dengan \0 mungkin mengandungi sehingga empat
digit).
%q sebab-sebab Printf untuk mengeluarkan yang sepadan hujah dalam format yang boleh
digunakan semula sebagai input shell.
%(tarikhfmt)T
sebab-sebab Printf untuk mengeluarkan rentetan tarikh-masa yang terhasil daripada menggunakan tarikhfmt as
rentetan format untuk masa strft(3). Yang sepadan hujah adalah bilangan bulat
mewakili bilangan saat sejak zaman itu. Dua hujah khas
nilai boleh digunakan: -1 mewakili masa semasa, dan -2 mewakili
masa shell itu dipanggil. Jika tiada hujah dinyatakan, penukaran akan berfungsi
seolah-olah -1 telah diberikan. Ini adalah pengecualian daripada yang biasa Printf tingkah laku.

Argumen kepada penentu format bukan rentetan dianggap sebagai pemalar C, kecuali a
tanda tambah atau tolak di hadapan dibenarkan, dan jika watak utama ialah satu atau
petikan berganda, nilainya ialah nilai ASCII bagi aksara berikut.

. format digunakan semula mengikut keperluan untuk mengambil semua hujah. Jika format
memerlukan lebih banyak hujah daripada yang dibekalkan, spesifikasi format tambahan berfungsi
seolah-olah nilai sifar atau rentetan nol, mengikut kesesuaian, telah dibekalkan. Pulangannya
nilai adalah sifar pada kejayaan, bukan sifar pada kegagalan.

pushd [-n] [+n] [-n]
pushd [-n] [dir]
Menambah direktori ke bahagian atas tindanan direktori, atau memutarkan tindanan, membuat
bahagian atas baharu timbunan direktori kerja semasa. Tanpa hujah,
menukar dua direktori teratas dan mengembalikan 0, melainkan timbunan direktori adalah
kosong. Hujah, jika dibekalkan, mempunyai makna berikut:
-n Menyekat perubahan biasa direktori apabila menambah direktori pada
tindanan, supaya hanya tindanan dimanipulasi.
+n Putar tindanan supaya ndirektori ke (mengira dari kiri
senarai yang ditunjukkan oleh dirs, bermula dengan sifar) berada di bahagian atas.
-n Putar tindanan supaya ndirektori ke (mengira dari sebelah kanan
senarai yang ditunjukkan oleh dirs, bermula dengan sifar) berada di bahagian atas.
dir Tambah dir ke timbunan direktori di bahagian atas, menjadikannya arus baharu
direktori kerja seolah-olah ia telah dibekalkan sebagai hujah kepada cd
terbina dalam.

Jika pushd perintah berjaya, a dirs dilakukan juga. Jika bentuk pertama
digunakan, pushd mengembalikan 0 melainkan cd ke dir gagal. Dengan bentuk kedua, pushd
mengembalikan 0 melainkan timbunan direktori kosong, timbunan direktori yang tidak wujud
elemen ditentukan, atau direktori bertukar kepada arus baharu yang ditentukan
direktori gagal.

jentera [-LP]
Cetak nama laluan mutlak direktori kerja semasa. Nama laluan dicetak
tidak mengandungi pautan simbolik jika -P pilihan dibekalkan atau yang -o fizikal pilihan
kepada menetapkan arahan terbina didayakan. Sekiranya -L pilihan digunakan, nama laluan
yang dicetak mungkin mengandungi pautan simbolik. Status pemulangan ialah 0 melainkan ralat berlaku
semasa membaca nama direktori semasa atau pilihan yang tidak sah dibekalkan.

membaca [-ers] [-a Nama] [-d persempadanan] [-i teks] [-n nchars] [-N nchars] [-p segera] [-t
timeout] [-u fd] [nama ...]
Satu baris dibaca daripada input standard, atau daripada deskriptor fail fd dibekalkan
sebagai hujah kepada -u pilihan, dan perkataan pertama diberikan kepada yang pertama nama,
perkataan kedua kepada yang kedua nama, dan seterusnya, dengan sisa perkataan dan mereka
pemisah campur tangan yang diberikan kepada yang terakhir nama. Sekiranya terdapat lebih sedikit perkataan yang dibaca
daripada aliran input daripada nama, nama selebihnya diberikan nilai kosong.
Watak-watak dalam IFS digunakan untuk membelah baris kepada perkataan menggunakan peraturan yang sama
shell digunakan untuk pengembangan (diterangkan di atas di bawah Perkataan Pemisahan). Serangan ke belakang
watak (\) boleh digunakan untuk mengalih keluar sebarang makna khas untuk aksara seterusnya dibaca
dan untuk sambungan talian. Pilihan, jika dibekalkan, mempunyai makna berikut:
-a Nama
Perkataan ditugaskan kepada indeks jujukan pembolehubah tatasusunan Nama,
bermula pukul 0. Nama tidak ditetapkan sebelum sebarang nilai baharu diberikan. Lain-lain
nama hujah diabaikan.
-d persempadanan
Watak pertama persempadanan digunakan untuk menamatkan baris input, sebaliknya
daripada baris baharu.
-e Jika input standard datang dari terminal, garis baca (Lihat TALIAN BACA
di atas) digunakan untuk mendapatkan garisan. Readline menggunakan arus (atau lalai,
jika pengeditan baris tidak aktif sebelum ini) tetapan pengeditan.
-i teks
If garis baca sedang digunakan untuk membaca baris, teks diletakkan ke dalam penyuntingan
penimbal sebelum penyuntingan bermula.
-n nchars
membaca kembali selepas membaca nchars watak daripada menunggu a
baris input lengkap, tetapi berikan pembatas jika kurang daripada nchars
aksara dibaca sebelum pembatas.
-N nchars
membaca kembali selepas membaca dengan tepat nchars watak daripada menunggu
baris input lengkap, melainkan EOF ditemui atau membaca habis masa.
Aksara pembatas yang ditemui dalam input tidak dilayan secara khusus dan
jangan menyebabkan membaca untuk kembali sehingga nchars aksara dibaca.
-p segera
paparan segera pada ralat standard, tanpa baris baharu yang mengekori, sebelum ini
cuba membaca sebarang input. Gesaan dipaparkan hanya jika input adalah
datang dari terminal.
-r Serangan ke belakang tidak bertindak sebagai watak melarikan diri. Serangan ke belakang dipertimbangkan
untuk menjadi sebahagian daripada barisan. Khususnya, pasangan garis sembang belakang-garis baharu mungkin tidak
digunakan sebagai sambungan baris.
-s Mod senyap. Jika input datang daripada terminal, aksara tidak digemakan.
-t timeout
Punca membaca untuk tamat masa dan mengembalikan kegagalan jika baris input lengkap (atau a
bilangan aksara yang ditentukan) tidak dibaca dalam timeout saat. timeout
mungkin nombor perpuluhan dengan bahagian pecahan mengikut perpuluhan
titik. Pilihan ini hanya berkesan jika membaca sedang membaca input daripada a
terminal, paip, atau fail khas lain; ia tidak memberi kesan apabila membaca daripada
fail biasa. Jika membaca habis masa, membaca menyimpan sebarang input separa yang dibaca
pembolehubah yang ditentukan nama. Jika timeout adalah 0, membaca kembali serta merta,
tanpa cuba membaca sebarang data. Status keluar ialah 0 jika input tersedia
pada deskriptor fail yang ditentukan, bukan sifar sebaliknya. Status keluar ialah
lebih besar daripada 128 jika tamat masa melebihi.
-u fd Baca input daripada deskriptor fail fd.

Jika tidak nama dibekalkan, bacaan baris diberikan kepada pembolehubah MEMBUAT. Yang
kod pulangan adalah sifar, melainkan jika akhir fail ditemui, membaca masa tamat (di mana
kes kod pulangan lebih besar daripada 128), ralat tugasan berubah-ubah (seperti
memberikan kepada pembolehubah baca sahaja) berlaku, atau deskriptor fail tidak sah dibekalkan
sebagai hujah kepada -u.

baca sahaja [-aAf] [-p] [nama[=perkataan] ...]
Yang diberi nama ditanda baca sahaja; nilai-nilai ini nama mungkin tidak diubah
dengan tugasan seterusnya. Sekiranya -f pilihan dibekalkan, fungsi
sepadan dengan nama begitu ketara. The -a pilihan mengehadkan pembolehubah kepada
tatasusunan diindeks; yang -A pilihan mengehadkan pembolehubah kepada tatasusunan bersekutu. Jika
kedua-dua pilihan dibekalkan, -A diutamakan. Jika tidak nama hujah diberikan, atau
jika -p pilihan dibekalkan, senarai semua nama baca sahaja dicetak. Yang lain
pilihan boleh digunakan untuk menyekat output kepada subset set baca sahaja
nama. The -p pilihan menyebabkan output dipaparkan dalam format yang boleh digunakan semula
sebagai input. Jika nama pembolehubah diikuti dengan =perkataan, nilai pembolehubah ialah
bersedia untuk perkataan. Status pemulangan ialah 0 melainkan pilihan yang tidak sah ditemui, satu
daripada nama bukan nama pembolehubah shell yang sah, atau -f dibekalkan dengan a nama Bahawa
bukan fungsi.

pulangan [n]
Menyebabkan fungsi berhenti melaksanakan dan mengembalikan nilai yang ditentukan oleh n kepada yang
pemanggil. Jika n ditinggalkan, status pemulangan ialah perintah terakhir yang dilaksanakan
badan berfungsi. Jika pulangan digunakan di luar fungsi, tetapi semasa pelaksanaan a
skrip oleh . (sumber) perintah, ia menyebabkan shell berhenti melaksanakannya
skrip dan kembali sama ada n atau status keluar perintah terakhir yang dilaksanakan dalam
skrip sebagai status keluar skrip. Jika n dibekalkan, nilai pulangan ialah
8 bit yang paling tidak ketara. Status pulangan adalah bukan sifar jika pulangan dibekalkan
hujah bukan angka, atau digunakan di luar fungsi dan bukan semasa pelaksanaan a
skrip oleh . or sumber. Sebarang arahan yang berkaitan dengan PULANG BALIK perangkap dilaksanakan
sebelum pelaksanaan disambung semula selepas fungsi atau skrip.

menetapkan [--abefhkmnptuvxBCEHPT] [-o nama pilihan] [berhujah ...]
menetapkan [+abefhkmnptuvxBCEHPT] [+o nama pilihan] [berhujah ...]
Tanpa pilihan, nama dan nilai setiap pembolehubah shell dipaparkan dalam a
format yang boleh digunakan semula sebagai input untuk menetapkan atau menetapkan semula yang ditetapkan pada masa ini
pembolehubah. Pembolehubah baca sahaja tidak boleh ditetapkan semula. Dalam posix mod, hanya shell
pembolehubah disenaraikan. Output diisih mengikut tempat semasa. Bila
pilihan ditentukan, mereka menetapkan atau menyahset atribut shell. Sebarang hujah yang tinggal
selepas pemprosesan pilihan dianggap sebagai nilai untuk parameter kedudukan dan adalah
ditugaskan, mengikut urutan, kepada $1, $2, ... $n. Pilihan, jika dinyatakan, mempunyai yang berikut
maksud:
-a Tandakan pembolehubah dan fungsi secara automatik yang diubah suai atau dicipta
untuk eksport ke persekitaran arahan seterusnya.
-b Laporkan status pekerjaan latar belakang yang ditamatkan dengan segera, bukannya
sebelum gesaan utama seterusnya. Ini berkesan hanya apabila kawalan kerja
yang aktif.
-e Keluar segera jika a saluran paip (yang mungkin terdiri daripada satu mudah
arahan), Sebuah senarai, atau a sebatian arahan (Lihat SHELL GRAMMAR di atas), keluar
dengan status bukan sifar. Cangkang tidak keluar jika arahan itu gagal
adalah sebahagian daripada senarai arahan sejurus selepas a manakala or sehingga kata kunci,
sebahagian daripada ujian berikutan if or elif perkataan terpelihara, sebahagian daripada mana-mana
perintah dilaksanakan dalam a && or || senarai kecuali arahan berikutan yang terakhir
&& or ||, sebarang arahan dalam saluran paip tetapi yang terakhir, atau jika arahan itu
nilai pulangan sedang diterbalikkan dengan !. Jika perintah majmuk selain a
subkulit mengembalikan status bukan sifar kerana arahan gagal semasa -e adalah
diabaikan, shell tidak keluar. Perangkap pada ERR, jika ditetapkan, dilaksanakan
sebelum shell keluar. Pilihan ini digunakan untuk persekitaran shell dan
setiap persekitaran subkulit secara berasingan (lihat COMMAND PERLAKSANAAN PERSEKITARAN
di atas), dan boleh menyebabkan subkulit keluar sebelum melaksanakan semua arahan
dalam subkulit.

Jika perintah kompaun atau fungsi shell dilaksanakan dalam konteks di mana -e is
diabaikan, tiada satu pun daripada arahan yang dilaksanakan dalam perintah kompaun atau
fungsi badan akan terjejas oleh -e tetapan, walaupun -e ditetapkan dan a
arahan mengembalikan status kegagalan. Jika perintah kompaun atau fungsi shell
set -e semasa melaksanakan dalam konteks di mana -e diabaikan, tetapan itu akan
tidak mempunyai apa-apa kesan sehingga perintah kompaun atau perintah yang mengandungi
panggilan fungsi selesai.
-f Lumpuhkan pengembangan nama laluan.
-h Ingat lokasi arahan semasa ia dicari untuk dilaksanakan.
Ini diaktifkan secara lalai.
-k Semua hujah dalam bentuk penyataan tugasan diletakkan di dalam
persekitaran untuk arahan, bukan hanya yang mendahului nama arahan.
-m Mod monitor. Kawalan kerja didayakan. Pilihan ini dihidupkan secara lalai untuk
cengkerang interaktif pada sistem yang menyokongnya (lihat JOB KAWALAN atas). Semua
proses dijalankan dalam kumpulan proses yang berasingan. Apabila kerja latar belakang
selesai, shell mencetak baris yang mengandungi status keluarnya.
-n Baca arahan tetapi jangan laksanakannya. Ini boleh digunakan untuk memeriksa shell
skrip untuk ralat sintaks. Ini diabaikan oleh cengkerang interaktif.
-o nama pilihan
. nama pilihan boleh menjadi salah satu daripada yang berikut:
allexport
Sama seperti -a.
braceexpand
Sama seperti -B.
emacs Gunakan antara muka pengeditan baris arahan gaya emacs. Ini didayakan
secara lalai apabila shell interaktif, melainkan shell adalah
bermula dengan --noediting pilihan. Ini juga menjejaskan penyuntingan
antara muka yang digunakan untuk membaca -e.
errexit Sama seperti -e.
errtrace
Sama seperti -E.
functrace
Sama seperti -T.
hashall Sama seperti -h.
histexpand
Sama seperti -H.
sejarah Dayakan sejarah arahan, seperti yang diterangkan di atas di bawah SEJARAH. ini
pilihan dihidupkan secara lalai dalam cengkerang interaktif.
abaikan
Kesannya seolah-olah perintah shell ``IGNOREEOF=10'' telah berlaku
dilaksanakan (lihat Shell Pembolehubah di atas).
kata kunci Sama seperti -k.
memantau Sama seperti -m.
noclobber
Sama seperti -C.
noexec Sama seperti -n.
noglob Sama seperti -f.
nolog Pada masa ini diabaikan.
memberitahu Sama seperti -b.
nounset Sama seperti -u.
onecmd Sama seperti -t.
fizikal
Sama seperti -P.
paip gagal
Jika ditetapkan, nilai pulangan saluran paip ialah nilai yang terakhir
(paling kanan) perintah untuk keluar dengan status bukan sifar, atau sifar jika semua
arahan dalam saluran paip keluar dengan jayanya. Pilihan ini adalah
dilumpuhkan secara lalai.
posix Ubah tingkah laku menampar di mana operasi lalai berbeza
daripada piawai POSIX untuk dipadankan dengan piawai (posix mod). Lihat
SEE JUGA di bawah untuk rujukan kepada dokumen yang memperincikan bagaimana posix
mod mempengaruhi tingkah laku bash.
istimewa
Sama seperti -p.
kata kerja Sama seperti -v.
vi Gunakan antara muka penyuntingan baris arahan gaya vi. Ini juga memberi kesan
antara muka penyuntingan yang digunakan untuk membaca -e.
xtrace Sama seperti -x.
If -o dibekalkan dengan no nama pilihan, nilai pilihan semasa
dicetak. Jika +o dibekalkan dengan no nama pilihan, satu siri menetapkan
arahan untuk mencipta semula tetapan pilihan semasa dipaparkan pada
keluaran standard.
-p Menghidupkan istimewa mod. Dalam mod ini, $ENV and $BASH_ENV fail adalah
tidak diproses, fungsi shell tidak diwarisi daripada persekitaran, dan
yang KERANG, BASHOPTS, CDPATH, dan GLOBIGNORE pembolehubah, jika ia muncul
dalam persekitaran, diabaikan. Jika cangkerang dimulakan dengan
id pengguna (kumpulan) berkesan tidak sama dengan id pengguna (kumpulan) sebenar, dan id -p
pilihan tidak dibekalkan, tindakan ini diambil dan id pengguna yang berkesan
ditetapkan kepada id pengguna sebenar. Sekiranya -p pilihan dibekalkan pada permulaan, yang
id pengguna yang berkesan tidak ditetapkan semula. Mematikan pilihan ini menyebabkan
id pengguna dan kumpulan yang berkesan untuk ditetapkan kepada id pengguna dan kumpulan sebenar.
-t Keluar selepas membaca dan melaksanakan satu arahan.
-u Rawat pembolehubah dan parameter yang tidak ditetapkan selain daripada parameter khas "@"
dan "*" sebagai ralat semasa melakukan pengembangan parameter. Jika pengembangan adalah
cuba pada pembolehubah atau parameter yang tidak ditetapkan, shell mencetak ralat
mesej, dan, jika tidak interaktif, keluar dengan status bukan sifar.
-v Cetak baris input shell semasa ia dibaca.
-x Selepas mengembangkan setiap mudah arahan, Untuk perintah, kes perintah, pilih
perintah, atau aritmetik Untuk arahan, paparkan nilai yang diperluaskan bagi PS4,
diikuti dengan perintah dan hujah yang diperluaskannya atau senarai perkataan yang berkaitan.
-B Cangkang melakukan pengembangan pendakap (lihat Brace pengembangan atas). Ini dihidupkan
secara lalai.
-C Jika ditetapkan, menampar tidak menulis ganti fail sedia ada dengan >, >&, dan <>
pengendali ubah hala. Ini mungkin ditindih semasa membuat fail output
dengan menggunakan operator ubah hala >| bukan >.
-E Jika ditetapkan, sebarang perangkap dihidupkan ERR diwarisi oleh fungsi shell, perintah
penggantian, dan perintah yang dilaksanakan dalam persekitaran subkulit. The ERR
perangkap biasanya tidak diwarisi dalam kes sedemikian.
-H enable ! penggantian sejarah gaya. Pilihan ini dihidupkan secara lalai apabila
cangkerang adalah interaktif.
-P Jika ditetapkan, shell tidak menyelesaikan pautan simbolik apabila melaksanakan arahan
seperti cd yang menukar direktori kerja semasa. Ia menggunakan fizikal
struktur direktori sebaliknya. Secara lalai, menampar mengikut rantaian logik
direktori apabila melaksanakan arahan yang mengubah direktori semasa.
-T Jika ditetapkan, sebarang perangkap pada HUTANG and PULANG BALIK diwarisi oleh fungsi cangkang,
penggantian arahan, dan perintah yang dilaksanakan dalam persekitaran subkulit.
. HUTANG and PULANG BALIK perangkap biasanya tidak diwarisi dalam kes sedemikian.
-- Jika tiada hujah mengikut pilihan ini, maka parameter kedudukan adalah
tidak ditetapkan. Jika tidak, parameter kedudukan ditetapkan kepada berhujahs, walaupun
sebahagian daripadanya bermula dengan a -.
- Isyarat tamat pilihan, menyebabkan semua yang tinggal berhujahs untuk ditugaskan kepada
parameter kedudukan. The -x and -v pilihan dimatikan. Jika ada
tidak berhujahs, parameter kedudukan kekal tidak berubah.

Pilihan dimatikan secara lalai melainkan dinyatakan sebaliknya. Menggunakan + daripada -
menyebabkan pilihan ini dimatikan. Pilihan juga boleh dinyatakan sebagai
hujah kepada seruan shell. Set pilihan semasa mungkin ditemui
in $-. Status pemulangan sentiasa benar melainkan pilihan yang tidak sah ditemui.

peralihan [n]
Parameter kedudukan daripada n+1 ... dinamakan semula kepada $1 .... Parameter
diwakili oleh nombor $# turun ke $#-n+1 tidak ditetapkan. n mestilah bukan negatif
nombor kurang daripada atau sama dengan $#. Jika n ialah 0, tiada parameter diubah. Jika n is
tidak diberi, diandaikan 1. Jika n adalah lebih besar daripada $#, kedudukan
parameter tidak diubah. Status pulangan adalah lebih besar daripada sifar jika n lebih besar
daripada $# atau kurang daripada sifar; sebaliknya 0.

shopt [-pqsu] [-o] [optname ...]
Togol nilai tetapan yang mengawal tingkah laku shell pilihan. Tetapan
boleh sama ada yang disenaraikan di bawah, atau, jika -o pilihan digunakan, yang tersedia
dengan -o pilihan untuk menetapkan arahan terbina. Tanpa pilihan, atau dengan -p
pilihan, senarai semua pilihan boleh ditetapkan dipaparkan, dengan petunjuk sama ada
atau tidak masing-masing ditetapkan. The -p pilihan menyebabkan output dipaparkan dalam bentuk yang mungkin
digunakan semula sebagai input. Pilihan lain mempunyai makna berikut:
-s Dayakan (set) setiap satu optname.
-u Lumpuhkan (nyahset) setiap satu optname.
-q Menindas keluaran biasa (mod senyap); status pulangan menunjukkan sama ada
yang optname ditetapkan atau tidak ditetapkan. Jika berbilang optname hujah diberikan dengan
-q, status pulangan adalah sifar jika semua optname didayakan; bukan sifar
sebaliknya.
-o Mengehadkan nilai-nilai optname menjadi yang ditakrifkan untuk -o pilihan untuk
menetapkan terbina dalam.

Sekiranya ada -s or -u digunakan dengan no optname hujah, shopt menunjukkan hanya mereka
pilihan yang ditetapkan atau tidak ditetapkan, masing-masing. Melainkan dinyatakan sebaliknya, the shopt
pilihan dilumpuhkan (tidak ditetapkan) secara lalai.

Status pemulangan apabila pilihan penyenaraian adalah sifar jika semua optname didayakan, bukan
sifar sebaliknya. Apabila menetapkan atau menyahsetkan pilihan, status pemulangan adalah sifar
melainkan an optname bukan pilihan shell yang sah.

Senarai shopt pilihan ialah:

autocd Jika ditetapkan, nama arahan yang merupakan nama direktori dilaksanakan seolah-olah ia
adalah hujah kepada cd perintah. Pilihan ini hanya digunakan oleh
cengkerang interaktif.
cdable_vars
Jika ditetapkan, hujah kepada cd arahan terbina yang bukan direktori adalah
diandaikan sebagai nama pembolehubah yang nilainya ialah direktori untuk diubah
kepada.
cdspell Jika ditetapkan, ralat kecil dalam ejaan komponen direktori dalam a cd
arahan akan diperbetulkan. Ralat yang diperiksa ditukar
watak, watak yang hilang, dan terlalu banyak watak. Sekiranya
pembetulan ditemui, nama fail yang diperbetulkan dicetak, dan arahan
teruskan. Pilihan ini hanya digunakan oleh cengkerang interaktif.
tanda semak
Jika ditetapkan, menampar menyemak bahawa arahan yang terdapat dalam jadual cincang wujud sebelum ini
cuba melaksanakannya. Jika arahan cincang tidak lagi wujud, laluan biasa
pencarian dilakukan.
kerja semak
Jika ditetapkan, menampar menyenaraikan status mana-mana kerja yang dihentikan dan dijalankan sebelum ini
keluar dari shell interaktif. Jika mana-mana pekerjaan sedang berjalan, ini menyebabkan
keluar ditangguhkan sehingga percubaan keluar kedua tanpa campur tangan
perintah (lihat JOB KAWALAN atas). Cangkang sentiasa menangguhkan keluar jika ada
pekerjaan dihentikan.
checkwinsize
Jika ditetapkan, menampar menyemak saiz tetingkap selepas setiap arahan dan, jika perlu,
mengemas kini nilai bagi TALIAN and COLUMNS.
cmdhist Jika ditetapkan, menampar cuba menyimpan semua baris perintah berbilang baris dalam
catatan sejarah yang sama. Ini membolehkan penyuntingan semula dengan mudah bagi arahan berbilang baris.
kompat31
Jika ditetapkan, menampar mengubah tingkah lakunya kepada versi 3.1 berkenaan dengan
memetik hujah kepada [[ arahan bersyarat =~ pengendali dan tempat-
perbandingan rentetan tertentu apabila menggunakan [[ arahan bersyarat < and >
pengendali. Versi Bash sebelum bash-4.1 menggunakan pengumpulan ASCII dan
strcmp(3); bash-4.1 dan kemudiannya gunakan jujukan pengumpulan tempat semasa
and strcoll(3).
kompat32
Jika ditetapkan, menampar mengubah tingkah lakunya kepada versi 3.2 berkenaan dengan
perbandingan rentetan khusus setempat apabila menggunakan [[ arahan bersyarat <
and > operator (lihat item sebelumnya).
kompat40
Jika ditetapkan, menampar mengubah tingkah lakunya kepada versi 4.0 berkenaan dengan
perbandingan rentetan khusus setempat apabila menggunakan [[ arahan bersyarat <
and > operator (lihat penerangan tentang kompat31) dan kesan daripada
mengganggu senarai arahan. Bash versi 4.0 dan kemudiannya mengganggu
senaraikan seolah-olah shell menerima gangguan; versi sebelumnya diteruskan
dengan arahan seterusnya dalam senarai.
kompat41
Jika ditetapkan, menampar, apabila masuk posix mod, merawat petikan tunggal dalam petikan dua kali
pengembangan parameter sebagai watak khas. Petikan tunggal mesti sepadan
(nombor genap) dan aksara antara petikan tunggal ialah
dianggap dipetik. Ini ialah tingkah laku mod posix melalui versi 4.1.
Tingkah laku bash lalai kekal seperti dalam versi sebelumnya.
kompat42
Jika ditetapkan, menampar tidak memproses rentetan gantian dalam corak
pengembangan kata gantian menggunakan penyingkiran petikan.
complete_fullquote
Jika ditetapkan, menampar memetik semua aksara meta shell dalam nama fail dan direktori
nama semasa melaksanakan penyiapan. Jika tidak ditetapkan, menampar menghilangkan metakarakter
seperti tanda dolar daripada set aksara yang akan dipetik dalam
nama fail lengkap apabila aksara meta ini muncul dalam pembolehubah shell
rujukan dalam perkataan yang perlu dilengkapkan. Ini bermakna dolar masuk
nama pembolehubah yang berkembang ke direktori tidak akan dipetik; namun, mana-mana
tanda dolar yang terdapat dalam nama fail tidak akan disebut juga. Ini adalah
aktif hanya apabila bash menggunakan garis miring ke belakang untuk memetik nama fail yang telah lengkap.
Pembolehubah ini ditetapkan secara lalai, iaitu tingkah laku bash lalai dalam
versi melalui 4.2.
direxpand
Jika ditetapkan, menampar menggantikan nama direktori dengan hasil pengembangan perkataan
apabila melakukan penyiapan nama fail. Ini mengubah kandungan
penimbal penyuntingan baris baca. Jika tidak ditetapkan, menampar percubaan untuk memelihara apa yang
pengguna ditaip.
dispell
Jika ditetapkan, menampar cuba pembetulan ejaan pada nama direktori semasa perkataan
selesai jika nama direktori yang dibekalkan pada mulanya tidak wujud.
dotglob Jika ditetapkan, menampar termasuk nama fail yang bermula dengan `.' dalam keputusan
pengembangan nama laluan.
execfail
Jika ditetapkan, cangkerang bukan interaktif tidak akan keluar jika ia tidak dapat melaksanakan fail
dinyatakan sebagai hujah kepada exec arahan terbina. Cangkang interaktif
tidak keluar jika exec gagal.
kembangkan_alias
Jika ditetapkan, alias dikembangkan seperti yang diterangkan di atas di bawah ALIASES. Pilihan ini
didayakan secara lalai untuk cengkerang interaktif.
extdebug
Jika ditetapkan, tingkah laku yang dimaksudkan untuk digunakan oleh penyahpepijat didayakan:
1. . -F pilihan untuk mengisytiharkan builtin memaparkan nama fail sumber
dan nombor baris yang sepadan dengan setiap nama fungsi yang dibekalkan sebagai a
hujah.
2. Jika arahan dijalankan oleh HUTANG perangkap mengembalikan nilai bukan sifar, iaitu
arahan seterusnya dilangkau dan tidak dilaksanakan.
3. Jika arahan dijalankan oleh HUTANG perangkap mengembalikan nilai 2, dan
shell sedang melaksanakan dalam subrutin (fungsi shell atau shell
skrip dilaksanakan oleh . or sumber builtins), panggilan ke pulangan is
disimulasikan.
4. BASH_ARGC and BASH_ARGV dikemas kini seperti yang diterangkan dalam mereka
huraian di atas.
5. Pengesanan fungsi didayakan: penggantian arahan, fungsi shell,
dan subkulit yang dipanggil dengan ( arahan ) mewarisi HUTANG and PULANG BALIK
perangkap.
6. Pengesanan ralat didayakan: penggantian arahan, fungsi shell,
dan subkulit yang dipanggil dengan ( arahan ) mewarisi ERR perangkap.
extglob Jika ditetapkan, ciri padanan corak lanjutan yang diterangkan di atas di bawah
Nama laluan pengembangan didayakan.
extquote
Jika ditetapkan, $'rentetan'dan $"rentetan"petikan dilakukan dalam ${parameter}
pengembangan yang disertakan dalam petikan berganda. Pilihan ini didayakan secara lalai.
failglob
Jika ditetapkan, corak yang gagal padan dengan nama fail semasa pengembangan nama laluan
mengakibatkan ralat pengembangan.
force_fignore
Jika ditetapkan, akhiran yang ditentukan oleh FIGNORE shell pembolehubah sebab perkataan kepada
diabaikan semasa melakukan pelengkapan perkataan walaupun perkataan yang diabaikan itu
satu-satunya penyelesaian yang mungkin. Lihat SHELL PELBAGAI di atas untuk penerangan
of FIGNORE. Pilihan ini didayakan secara lalai.
globasiranges
Jika ditetapkan, ungkapan julat digunakan dalam ekspresi kurungan padanan corak (lihat
corak Pemadanan di atas) berkelakuan seolah-olah dalam tempatan C tradisional apabila
melakukan perbandingan. Iaitu, urutan penyusunan tempat semasa
tidak diambil kira, jadi b tidak akan menyusun antara A and B, dan
aksara ASCII huruf besar dan huruf kecil akan disusun bersama.
globstar
Jika ditetapkan, corak ** digunakan dalam konteks pengembangan nama laluan akan sepadan dengan semua
fail dan sifar atau lebih direktori dan subdirektori. Jika coraknya
diikuti oleh a /, hanya direktori dan subdirektori yang sepadan.
gnu_errfmt
Jika ditetapkan, mesej ralat shell ditulis dalam mesej ralat GNU standard
format.
histappend
Jika ditetapkan, senarai sejarah dilampirkan pada fail yang dinamakan dengan nilai
FAIL SEJARAH berubah apabila shell keluar, dan bukannya menimpa fail.
histreedit
Jika ditetapkan, dan garis baca sedang digunakan, pengguna diberi peluang untuk
edit penggantian sejarah yang gagal.
histverify
Jika ditetapkan, dan garis baca sedang digunakan, keputusan penggantian sejarah adalah
tidak serta-merta dihantar ke parser shell. Sebaliknya, baris yang terhasil ialah
dimuatkan ke dalam garis baca menyunting penimbal, membenarkan pengubahsuaian selanjutnya.
hos lengkap
Jika ditetapkan, dan garis baca sedang digunakan, menampar akan cuba melaksanakan nama hos
pelengkap apabila perkataan yang mengandungi a @ sedang disiapkan (lihat Selesai
di bawah TALIAN BACA atas). Ini didayakan secara lalai.
huponexit
Jika ditetapkan, menampar akan hantar PENDAPATAN kepada semua kerja apabila shell log masuk interaktif
jalan keluar.
ulasan_interaktif
Jika ditetapkan, benarkan perkataan yang bermula dengan # untuk menyebabkan perkataan itu dan semua yang tinggal
aksara pada baris itu untuk diabaikan dalam cangkerang interaktif (lihat KOMENTAR
atas). Pilihan ini didayakan secara lalai.
lastpipe
Jika ditetapkan, dan kawalan kerja tidak aktif, shell menjalankan perintah terakhir a
saluran paip tidak dilaksanakan di latar belakang dalam persekitaran shell semasa.
ahli lithik Jika ditetapkan, dan cmdhist pilihan didayakan, arahan berbilang baris disimpan ke
sejarah dengan baris baharu terbenam dan bukannya menggunakan pemisah koma bertitik
mana mungkin.
login_shell
Shell menetapkan pilihan ini jika ia dimulakan sebagai shell log masuk (lihat
INVOKASI atas). Nilai tidak boleh diubah.
amaran mel
Jika ditetapkan, dan fail yang menampar sedang menyemak mel telah diakses sejak itu
kali terakhir ia disemak, mesej ``Mel masuk fail mel telah
baca'' dipaparkan.
tiada_kosong_cmd_completion
Jika ditetapkan, dan garis baca sedang digunakan, menampar tidak akan cuba mencari
PATH untuk kemungkinan penyiapan apabila penyiapan cuba pada kosong
line.
nocaseglob
Jika ditetapkan, menampar memadankan nama fail dalam cara tidak peka huruf besar-besaran apabila
melakukan pengembangan nama laluan (lihat Nama laluan pengembangan di atas).
nocasematch
Jika ditetapkan, menampar memadankan corak dalam fesyen tidak peka huruf besar-besaran semasa membuat persembahan
memadankan semasa melaksanakan kes or [[ arahan bersyarat.
nullglob
Jika ditetapkan, menampar membenarkan corak yang tidak sepadan dengan fail (lihat Nama laluan pengembangan
di atas) untuk mengembangkan kepada rentetan nol, bukannya diri mereka sendiri.
progcomp
Jika ditetapkan, kemudahan penyiapan boleh atur cara (lihat Boleh diprogramkan Selesai
di atas) didayakan. Pilihan ini didayakan secara lalai.
promptvars
Jika ditetapkan, rentetan gesaan menjalani pengembangan parameter, penggantian arahan,
pengembangan aritmetik, dan penyingkiran petikan selepas dikembangkan seperti yang diterangkan
in MENGGASUNG atas. Pilihan ini didayakan secara lalai.
kulit_terhad
Cangkang menetapkan pilihan ini jika ia dimulakan dalam mod terhad (lihat
TERHAD SHELL di bawah). Nilai tidak boleh diubah. Ini tidak ditetapkan semula
apabila fail permulaan dilaksanakan, membenarkan fail permulaan ditemui
sama ada cangkerang dihadkan atau tidak.
shift_verbose
Jika ditetapkan, peralihan builtin mencetak mesej ralat apabila pengiraan anjakan
melebihi bilangan parameter kedudukan.
laluan sumber
Jika ditetapkan, sumber (.) builtin menggunakan nilai PATH untuk mencari direktori
mengandungi fail yang dibekalkan sebagai hujah. Pilihan ini didayakan oleh
lalai.
xpg_echo
Jika ditetapkan, echo builtin mengembangkan jujukan melarikan diri-slash belakang secara lalai.

Menggantung [-f]
Tangguhkan pelaksanaan shell ini sehingga ia menerima a TANDATANGAN isyarat. Log masuk
cangkang tidak boleh digantung; yang -f pilihan boleh digunakan untuk mengatasi ini dan memaksa
penggantungan. Status pemulangan ialah 0 melainkan shell adalah shell log masuk dan -f tidak
dibekalkan, atau jika kawalan kerja tidak didayakan.

ujian expr
[ expr ]
Kembalikan status 0 (benar) atau 1 (salah) bergantung pada penilaian
ungkapan bersyarat expr. Setiap operator dan operan mestilah berasingan
hujah. Ungkapan terdiri daripada asas yang diterangkan di atas di bawah
SYARAT EKSPRESI. ujian tidak menerima sebarang pilihan, juga tidak menerima dan
mengabaikan hujah daripada -- sebagai menandakan berakhirnya pilihan.

Ungkapan boleh digabungkan menggunakan operator berikut, disenaraikan dalam menurun
susunan keutamaan. Penilaian bergantung kepada bilangan hujah; lihat di bawah.
Keutamaan operator digunakan apabila terdapat lima atau lebih argumen.
! expr Benar jika expr adalah palsu.
( expr )
Mengembalikan nilai expr. Ini boleh digunakan untuk mengatasi perkara biasa
keutamaan pengendali.
expr1 -a expr2
Benar jika kedua-duanya expr1 and expr2 adalah benar.
expr1 -o expr2
Benar jika sama ada expr1 or expr2 betul.

ujian and [ menilai ungkapan bersyarat menggunakan satu set peraturan berdasarkan
bilangan hujah.

Hujah 0
Ungkapan itu palsu.
1 hujah
Ungkapan itu benar jika dan hanya jika hujah itu tidak batal.
Hujah 2
Jika hujah pertama ialah !, ungkapan itu benar jika dan hanya jika yang kedua
hujah adalah batal. Jika hujah pertama adalah salah satu syarat unary
operator yang disenaraikan di atas di bawah SYARAT EKSPRESI, ungkapan itu benar
jika ujian unari adalah benar. Jika hujah pertama bukan unary yang sah
pengendali bersyarat, ungkapan itu palsu.
Hujah 3
Syarat berikut digunakan dalam susunan yang disenaraikan. Jika yang kedua
argumen ialah salah satu operator bersyarat binari yang disenaraikan di atas di bawah
SYARAT EKSPRESI, hasil ungkapan adalah hasil daripada
ujian binari menggunakan argumen pertama dan ketiga sebagai operan. The -a and -o
operator dianggap sebagai operator binari apabila terdapat tiga argumen.
Jika hujah pertama ialah !, nilainya ialah penafian dua hujah
ujian menggunakan hujah kedua dan ketiga. Jika hujah pertama betul-betul
( dan hujah ketiga adalah tepat ), hasilnya ialah ujian satu hujah
daripada hujah kedua. Jika tidak, ungkapan itu palsu.
Hujah 4
Jika hujah pertama ialah !, hasilnya adalah penafian tiga hujah
ungkapan yang terdiri daripada hujah yang tinggal. Jika tidak, ungkapan
dihuraikan dan dinilai mengikut keutamaan menggunakan peraturan yang disenaraikan
atas.
5 atau lebih hujah
Ungkapan dihuraikan dan dinilai mengikut keutamaan menggunakan
peraturan yang disenaraikan di atas.

Apabila digunakan dengan ujian or [, yang < and > operator mengisih secara leksikografi menggunakan ASCII
memesan.

kali Cetak masa pengguna dan sistem terkumpul untuk shell dan untuk proses berjalan
daripada cangkerang. Status pulangan ialah 0.

perangkap [-lp] [[berhujah] sigspec ...]
Perintah itu berhujah adalah untuk dibaca dan dilaksanakan apabila shell menerima isyarat
sigspec. Jika berhujah tidak hadir (dan terdapat satu sigspec) Atau -, masing-masing dinyatakan
isyarat ditetapkan semula kepada pelupusan asalnya (nilai yang ada semasa masuk ke
cangkerang). Jika berhujah ialah rentetan nol isyarat yang ditentukan oleh setiap sigspec tidak diendahkan
oleh shell dan dengan arahan yang dipanggil. Jika berhujah tidak hadir dan -p telah
dibekalkan, kemudian perintah perangkap yang dikaitkan dengan setiap sigspec dipaparkan. Jika tidak
hujah dibekalkan atau jika sahaja -p diberikan, perangkap mencetak senarai arahan
dikaitkan dengan setiap isyarat. The -l pilihan menyebabkan shell mencetak senarai
nama isyarat dan nombor yang sepadan. setiap satu sigspec adalah sama ada nama isyarat
ditakrifkan dalamisyarat.h>, atau nombor isyarat. Nama isyarat tidak peka huruf besar dan kecil
yang SIG awalan adalah pilihan.

Jika sigspec is EXIT (0) perintah berhujah dilaksanakan semasa keluar dari shell. Sekiranya
sigspec is HUTANG, arahan berhujah dilaksanakan sebelum setiap mudah arahan, Untuk
perintah, kes perintah, pilih perintah, setiap aritmetik Untuk perintah, dan sebelum
arahan pertama dilaksanakan dalam fungsi shell (lihat SHELL GRAMMAR atas). Merujuk kepada
penerangan tentang extdebug pilihan untuk shopt terbina untuk butiran kesannya
pada HUTANG perangkap. Sekiranya sigspec is PULANG BALIK, arahan berhujah dilaksanakan setiap kali a
fungsi shell atau skrip yang dilaksanakan dengan . or sumber kemasan binaan
melaksanakan.

Jika sigspec is ERR, arahan berhujah dilaksanakan apabila saluran paip (yang mungkin
terdiri daripada satu arahan mudah), senarai, atau arahan kompaun mengembalikan a
status keluar bukan sifar, tertakluk kepada syarat berikut. The ERR perangkap tidak
dilaksanakan jika arahan yang gagal adalah sebahagian daripada senarai arahan serta-merta selepas a
manakala or sehingga kata kunci, sebahagian daripada ujian dalam if pernyataan, sebahagian daripada perintah
dilaksanakan dalam a && or || senarai kecuali arahan berikutan yang terakhir && or ||, ada
arahan dalam saluran paip tetapi yang terakhir, atau jika nilai pulangan arahan sedang berlaku
terbalik menggunakan !. Ini adalah syarat yang sama yang dipatuhi oleh errexit (-e) pilihan.

Isyarat yang diabaikan semasa masuk ke cangkerang tidak boleh terperangkap atau ditetapkan semula. Terperangkap
isyarat yang tidak diabaikan ditetapkan semula kepada nilai asalnya dalam subkulit
atau persekitaran subkulit apabila satu dicipta. Status pemulangan adalah palsu jika ada
sigspec tidak sah; sebaliknya perangkap kembali benar.

jenis [-aftpP] nama [nama ...]
Tanpa pilihan, nyatakan cara masing-masing nama akan ditafsirkan jika digunakan sebagai arahan
nama. Sekiranya -t pilihan digunakan, jenis mencetak rentetan yang merupakan salah satu daripada alias,
kata kunci, fungsi, dibina, Atau fail if nama ialah alias, perkataan simpanan shell,
fungsi, terbina dalam atau fail cakera, masing-masing. Sekiranya nama tidak dijumpai, maka
tiada apa yang dicetak, dan status keluar palsu dikembalikan. Sekiranya -p pilihan adalah
terpakai, jenis sama ada mengembalikan nama fail cakera yang akan dilaksanakan jika nama
dinyatakan sebagai nama arahan, atau tiada jika ``type -t name'' tidak akan kembali
fail. Yang -P daya pilihan a PATH cari masing-masing nama, walaupun jika ``type -t name''
tidak akan kembali fail. Jika perintah dicincang, -p and -P cetak nilai cincang,
yang tidak semestinya fail yang muncul dahulu PATH. Jika -a pilihan adalah
terpakai, jenis mencetak semua tempat yang mengandungi nama boleh laku nama. ini
termasuk alias dan fungsi, jika dan hanya jika -p pilihan juga tidak digunakan. The
jadual arahan cincang tidak dirujuk semasa menggunakan -a. Yang -f pilihan menindas
carian fungsi shell, seperti dengan arahan terbina dalam. jenis kembali benar jika semua
hujah dijumpai, palsu jika ada yang tidak dijumpai.

had [-HSTabcdefilmnpqrstuvx [menghadkan]]
Menyediakan kawalan ke atas sumber yang tersedia untuk shell dan proses yang dimulakan
olehnya, pada sistem yang membenarkan kawalan sedemikian. The -H and -S pilihan menentukan bahawa
had keras atau lembut ditetapkan untuk sumber yang diberikan. Had keras tidak boleh dinaikkan
oleh pengguna bukan root sebaik sahaja ia ditetapkan; had lembut boleh dinaikkan sehingga nilai
had yang sukar. Jika tiada -H tidak -S ditentukan, kedua-dua had lembut dan keras
ditetapkan. Nilai menghadkan boleh menjadi nombor dalam unit yang ditentukan untuk sumber
atau salah satu nilai istimewa keras, lembut, Atau tanpa had, yang bermaksud arus
had keras, had lembut semasa, dan tiada had, masing-masing. Jika menghadkan is
ditinggalkan, nilai semasa had lembut sumber dicetak, melainkan jika
-H pilihan diberi. Apabila lebih daripada satu sumber ditentukan, nama had dan
unit dicetak sebelum nilai. Pilihan lain ditafsirkan seperti berikut:
-a Semua had semasa dilaporkan
-b Saiz penimbal soket maksimum
-c Saiz maksimum fail teras yang dibuat
-d Saiz maksimum segmen data proses
-e Keutamaan penjadualan maksimum ("bagus")
-f Saiz maksimum fail yang ditulis oleh shell dan anak-anaknya
-i Bilangan maksimum isyarat belum selesai
-l Saiz maksimum yang mungkin dikunci ke dalam memori
-m Saiz set pemastautin maksimum (banyak sistem tidak mematuhi had ini)
-n Bilangan maksimum deskriptor fail terbuka (kebanyakan sistem tidak membenarkan ini
nilai yang perlu ditetapkan)
-p Saiz paip dalam blok 512-bait (ini mungkin tidak ditetapkan)
-q Bilangan maksimum bait dalam baris gilir mesej POSIX
-r Keutamaan penjadualan masa nyata maksimum
-s Saiz tindanan maksimum
-t Jumlah maksimum masa cpu dalam saat
-u Bilangan maksimum proses yang tersedia untuk pengguna tunggal
-v Jumlah maksimum memori maya yang tersedia untuk shell dan, pada beberapa
sistem, kepada anak-anaknya
-x Bilangan maksimum kunci fail
-T Bilangan maksimum benang

If menghadkan diberikan, dan -a pilihan tidak digunakan, menghadkan ialah nilai baharu bagi
sumber yang ditentukan. Jika tiada pilihan diberikan, maka -f diandaikan. Nilai ada dalam
Kenaikan 1024-bait, kecuali untuk -t, iaitu dalam beberapa saat; -p, yang terdapat dalam unit
blok 512-bait; dan -T, -b, -n, dan -u, yang merupakan nilai tidak berskala. Pulangannya
status ialah 0 melainkan pilihan atau hujah yang tidak sah dibekalkan, atau ralat berlaku
sambil menetapkan had baharu.

umask [-p] [-S] [mod]
Topeng penciptaan fail pengguna ditetapkan kepada mod. Jika mod bermula dengan digit, ia adalah
ditafsirkan sebagai nombor perlapanan; sebaliknya ia ditafsirkan sebagai topeng mod simbolik
serupa dengan yang diterima oleh Chmod(1). Jika mod ditinggalkan, nilai semasa bagi
topeng dicetak. The -S pilihan menyebabkan topeng dicetak dalam bentuk simbolik; yang
output lalai ialah nombor perlapanan. Sekiranya -p pilihan dibekalkan, dan mod is
diabaikan, output adalah dalam bentuk yang boleh digunakan semula sebagai input. Status pulangan ialah
0 jika mod berjaya ditukar atau jika tidak mod hujah telah dibekalkan, dan
palsu sebaliknya.

Unalias [-a] [nama ...]
Keluarkan masing-masing nama daripada senarai alias yang ditentukan. Jika -a dibekalkan, semua alias
definisi dikeluarkan. Nilai pulangan adalah benar melainkan jika dibekalkan nama bukan
alias yang ditakrifkan.

tidak tenteram [-fv] [-n] [nama ...]
Bagi setiap nama, alih keluar pembolehubah atau fungsi yang sepadan. Sekiranya -v pilihan adalah
diberi, masing-masing nama merujuk kepada pembolehubah shell, dan pembolehubah itu dialih keluar. baca-
hanya pembolehubah tidak boleh dinyahset. Jika -f dinyatakan, masing-masing nama merujuk kepada cangkang
fungsi, dan definisi fungsi dialih keluar. Sekiranya -n pilihan dibekalkan,
and nama ialah pembolehubah dengan nameref sifat, nama akan dibatalkan dan bukannya
pembolehubah yang dirujuknya. -n tidak mempunyai kesan sekiranya -f pilihan dibekalkan. Jika tidak
pilihan dibekalkan, setiap satu nama merujuk kepada pembolehubah; jika tiada pembolehubah oleh
nama itu, sebarang fungsi dengan nama itu tidak ditetapkan. Setiap pembolehubah atau fungsi yang tidak ditetapkan
dialih keluar daripada persekitaran yang dihantar kepada arahan seterusnya. Jika mana-mana
COMP_WORDBREAKS, RAWAK, SEKIAN, LINENO, HISTCMD, FUNCNAME, GROUPS, Atau DIRSTACK
tidak ditetapkan, ia kehilangan sifat istimewanya, walaupun ia kemudiannya ditetapkan semula.
Status keluar adalah benar melainkan a nama adalah baca sahaja.

tunggu [-n] [n ...]
Tunggu setiap proses anak yang ditentukan dan kembalikan status penamatannya. setiap satu n
mungkin ID proses atau spesifikasi kerja; jika spec kerja diberikan, semua proses
dalam perancangan kerja itu ditunggu. Jika n tidak diberikan, semua aktif pada masa ini
proses kanak-kanak sedang menunggu, dan status pulangan adalah sifar. Sekiranya -n pilihan adalah
dibekalkan, tunggu menunggu sebarang kerja ditamatkan dan mengembalikan status keluarnya. Jika n
menentukan proses atau kerja yang tidak wujud, status pemulangan ialah 127. Jika tidak,
status pemulangan ialah status keluar dari proses atau kerja terakhir yang ditunggu.

TERHAD SHELL


If menampar dimulakan dengan nama rbash, Atau -r pilihan dibekalkan pada seruan, yang
shell menjadi terhad. Cangkang terhad digunakan untuk menyediakan lebih banyak persekitaran
dikawal daripada cangkerang standard. Ia berkelakuan sama dengan menampar dengan pengecualian
bahawa perkara berikut tidak dibenarkan atau tidak dilakukan:

· menukar direktori dengan cd

· menetapkan atau menyahset nilai-nilai SHELL, PATH, ENV, Atau BASH_ENV

· menyatakan nama perintah yang mengandungi /

· menyatakan nama fail yang mengandungi a / sebagai hujah kepada . arahan terbina

· menyatakan nama fail yang mengandungi garis miring sebagai hujah kepada -p pilihan untuk
hash arahan terbina

· mengimport definisi fungsi daripada persekitaran shell pada permulaan

· menghuraikan nilai KERANG daripada persekitaran shell pada permulaan

· mengubah hala keluaran menggunakan operator ubah hala >, >|, <>, >&, &> dan >>

· menggunakan exec arahan terbina untuk menggantikan shell dengan arahan lain

· menambah atau memadam arahan terbina dengan -f and -d pilihan kepada membolehkan
arahan terbina

· menggunakan membolehkan arahan terbina untuk mendayakan binaan shell yang dilumpuhkan

· menyatakan -p pilihan untuk arahan arahan terbina

· mematikan mod terhad dengan menetapkan +r or menetapkan +o terhad.

Sekatan ini dikuatkuasakan selepas sebarang fail permulaan dibaca.

Apabila arahan yang didapati sebagai skrip shell dilaksanakan (lihat COMMAND PERLAKSANAAN
di atas), rbash mematikan sebarang sekatan dalam shell yang dihasilkan untuk melaksanakan skrip.

Gunakan bash dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    Plugin Eclipse Tomcat
    Plugin Eclipse Tomcat
    Pemalam Eclipse Tomcat menyediakan
    penyepaduan mudah servlet tomcat
    bekas untuk pembangunan java
    aplikasi web. Anda boleh sertai kami untuk
    perbincangan...
    Muat turun Pemalam Eclipse Tomcat
  • 2
    Desktop WebTorrent
    Desktop WebTorrent
    WebTorrent Desktop adalah untuk penstriman
    torrents pada Mac, Windows atau Linux. Ia
    menyambung kepada kedua-dua BitTorrent dan
    WebTorrent rakan sebaya. Sekarang tidak ada
    perlu menunggu...
    Muat turun Desktop WebTorrent
  • 3
    GenX
    GenX
    GenX ialah program saintifik untuk memperhalusi
    refelcetivity sinar-x, neutron
    pemantulan dan sinar-x permukaan
    data pembelauan menggunakan pembezaan
    algoritma evolusi....
    Muat turun GenX
  • 4
    pspp4windows
    pspp4windows
    PSPP ialah program untuk statistik
    analisis data sampel. Ia adalah percuma
    penggantian untuk program proprietari
    SPSS. PSPP mempunyai kedua-dua berasaskan teks dan
    grafik kami...
    Muat turun pspp4windows
  • 5
    Sambungan Git
    Sambungan Git
    Sambungan Git ialah alat UI kendiri
    untuk menguruskan repositori Git. Ia juga
    berintegrasi dengan Windows Explorer dan
    Microsoft Visual Studio
    (2015/2017/2019). ke...
    Muat turun Sambungan Git
  • 6
    eSpeak: sintesis pertuturan
    eSpeak: sintesis pertuturan
    Teks ke Enjin Pertuturan untuk Bahasa Inggeris dan
    banyak bahasa lain. Saiz padat dengan
    sebutan yang jelas tetapi buatan.
    Tersedia sebagai program baris arahan dengan
    banyak ...
    Muat turun eSpeak: sintesis pertuturan
  • Lebih »

Arahan Linux

Ad