Sh - ਲੀਨਕਸ ਕਮਾਂਡ - ਯੂਨੀਕਸ ਕਮਾਂਡ

NAME

bash - ਜੀਐਨਯੂ ਬੌਰਨ-ਫੇਰ ਸ਼ੈਲ

ਸੰਕਲਪ

bash [options] [ਫਾਇਲ]

DESCRIPTION

Bash ਇੱਕ sh -compatible ਕਮਾਂਡ ਭਾਸ਼ਾ ਦੁਭਾਸ਼ੀਏ ਹੈ ਜੋ ਮਿਆਰੀ ਇੰਪੁੱਟ ਜਾਂ ਫਾਈਲ ਤੋਂ ਪ੍ਰਾਪਤ ਕਮਾਡਾਂ ਨੂੰ ਲਾਗੂ ਕਰਦਾ ਹੈ. Bash ਵਿੱਚ ਕੰਨ ਅਤੇ ਸੀ ਸ਼ੈੱਲਾਂ (ਕੇ ਐਸ ਐੱਸ ਅਤੇ ਸੀਐਸਐਚ ) ਦੀਆਂ ਉਪਯੋਗੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਸ਼ਾਮਲ ਹਨ.

ਬॅश ਦਾ ਮਕਸਦ ਆਈਈਈਈਈ POSIX ਸ਼ੈੱਲ ਅਤੇ ਟੂਲਾਂ ਦੀ ਵਿਸ਼ੇਸ਼ਤਾ (IEEE ਵਰਕਿੰਗ ਗਰੁੱਪ 1003.2) ਦੇ ਸਮਰੂਪ ਸਥਾਪਤ ਹੋਣਾ ਹੈ.

ਵਿਕਲਪ

ਸੈੱਟ ਬਿਲਟਿਨ ਕਮਾਂਡਰ ਦੇ ਵਰਣਨ ਵਿੱਚ ਦਸਤਾਵੇਜ਼ੀ ਤੌਰ 'ਤੇ ਸਿੰਗਲ-ਅੱਖਰ ਦੇ ਸ਼ੈਲ ਵਿਕਲਪਾਂ ਦੇ ਇਲਾਵਾ, bash ਹੇਠਾਂ ਦਿੱਤੀ ਚੋਣ ਦੀ ਵਿਆਖਿਆ ਕਰਦਾ ਹੈ ਜਦੋਂ ਇਹ ਲਾਗੂ ਹੁੰਦਾ ਹੈ:

-c ਸਟ੍ਰਿੰਗ

ਜੇ -c ਚੋਣ ਮੌਜੂਦ ਹੈ, ਤਾਂ ਕਮਾਂਡਾਂ ਸਤਰ ਤੋਂ ਪਡ਼੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ. ਜੇ ਸਤਰ ਦੇ ਬਾਅਦ ਕੋਈ ਆਰਗੂਮੈਂਟ ਹੈ, ਤਾਂ ਉਹਨਾਂ ਨੂੰ $ 0 ਤੋਂ ਸ਼ੁਰੂ ਕਰਦੇ ਹੋਏ, ਸਥਾਨੀਕ ਮਾਪਦੰਡਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

-i

ਜੇ -i ਚੋਣ ਮੌਜੂਦ ਹੈ, ਸ਼ੈੱਲ ਇੰਟਰਐਕਟਿਵ ਹੈ .

-ਲ

Bash act ਬਣਾਓ ਜਿਵੇਂ ਕਿ ਇਹ ਲੌਗਿਨ ਸ਼ੈਲ ਦੇ ਤੌਰ ਤੇ ਲਿਆ ਗਿਆ ਹੈ (ਹੇਠਾਂ ਇਨਵੌਕਸੀ ਵੇਖੋ).

-r

ਜੇ -r ਚੋਣ ਮੌਜੂਦ ਹੈ, ਸ਼ੈੱਲ ਪਾਬੰਦੀਸ਼ੁਦਾ ਹੋ ਜਾਂਦੀ ਹੈ (ਹੇਠਾਂ ਪ੍ਰਤਿਬੰਧਿਤ ਸ਼ੈਲ ਦੇਖੋ).

-ਸ

ਜੇ -s ਚੋਣ ਮੌਜੂਦ ਹੈ, ਜਾਂ ਜੇ ਚੋਣ ਕਾਰਵਾਈ ਕਰਨ ਤੋਂ ਬਾਅਦ ਕੋਈ ਆਰਗੂਮੈਂਟ ਨਹੀਂ ਬਚਦਾ, ਤਾਂ ਕਮਾਂਡਾਂ ਨੂੰ ਮਿਆਰੀ ਇੰਪੁੱਟ ਤੋਂ ਪੜਿਆ ਜਾਂਦਾ ਹੈ. ਇਹ ਚੋਣ ਟਿਕਾਣੇ ਮੁੱਲਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਮਨਜੂਰੀ ਦਿੰਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਇੰਟਰਐਕਟਿਵ ਸ਼ੈਲ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ.

-ਡੀ

$ ਤੋਂ ਪਹਿਲਾਂ ਆਉਣ ਵਾਲੇ ਸਾਰੇ ਡਬਲ-ਟੋਟੇ ਸਤਰਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਮਿਆਰੀ ਉਉਪੁਟ ਤੇ ਛਾਪੀ ਜਾਂਦੀ ਹੈ. ਇਹ ਉਹ ਸਤਰ ਹਨ ਜੋ ਮੌਜੂਦਾ ਅਨੁਵਾਦ ਦੇ ਅਧੀਨ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਮੌਜੂਦਾ ਲੋਕੇਲ C ਜਾਂ POSIX ਨਹੀਂ ਹੁੰਦੇ . ਇਸ ਦਾ ਮਤਲਬ ਹੈ -n ਚੋਣ; ਕੋਈ ਹੁਕਮ ਨਹੀਂ ਚੱਲੇਗਾ.

[- +] ਹੇ [ shopt_option ]

shopt_option shopt builtin ਦੁਆਰਾ ਸਵੀਕਾਰ ਕੀਤੇ ਗਏ ਸ਼ੈਲ ਵਿਕਲਪਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਟਨ ਕਮਾਂਡੇ ਦੇਖੋ). ਜੇ shopt_option ਮੌਜੂਦ ਹੈ, -ਓ ਉਸ ਚੋਣ ਦੇ ਮੁੱਲ ਨੂੰ ਸੈੱਟ ਕਰਦਾ ਹੈ; + ਓ ਇਹ ਛਾਪੇ ਜੇ shopt_option ਦੀ ਸਪਲਾਈ ਨਹੀਂ ਕੀਤੀ ਗਈ, ਸ਼ੁਕਲ ਦੁਆਰਾ ਸਵੀਕਾਰ ਕੀਤੇ ਗਏ ਸ਼ੈਲ ਵਿਕਲਪਾਂ ਦੇ ਨਾਮ ਅਤੇ ਮੁੱਲ ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਤੇ ਛਾਪੇ ਜਾਂਦੇ ਹਨ. ਜੇਕਰ ਆਵਕਣ ਵਿਕਲਪ + O ਹੈ , ਤਾਂ ਆਉਟਪੁਟ ਇਕ ਅਜਿਹੇ ਫਾਰਮੈਟ ਵਿੱਚ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦਾ ਹੈ ਜਿਸਨੂੰ ਦੁਬਾਰਾ ਇੰਪੁੱਟ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.

A - ਵਿਕਲਪਾਂ ਦੇ ਅਖੀਰ ਨੂੰ ਸੰਕੇਤ ਕਰਦਾ ਹੈ ਅਤੇ ਅਗਲਾ ਵਿਕਲਪ ਪ੍ਰੋਸੈਸਿੰਗ ਅਯੋਗ ਕਰਦਾ ਹੈ. ਦੇ ਬਾਅਦ ਕੋਈ ਵੀ ਆਰਗੂਮੈਂਟ - ਨੂੰ ਫਾਇਲ-ਨਾਂ ਅਤੇ ਆਰਗੂਮਿੰਟ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. ਇੱਕ ਦਲੀਲ - ਦੇ ਬਰਾਬਰ ਹੈ - .

Bash ਕਈ ਬਹੁ-ਚਰਣ ਵਿਕਲਪਾਂ ਦੀ ਵਿਆਖਿਆ ਵੀ ਕਰਦਾ ਹੈ. ਸਿੰਗਲ-ਅੱਖਰ ਵਿਕਲਪਾਂ ਨੂੰ ਮਾਨਤਾ ਦੇਣ ਤੋਂ ਪਹਿਲਾਂ ਇਹਨਾਂ ਚੋਣਾਂ ਨੂੰ ਕਮਾਂਡ ਲਾਇਨ ਤੇ ਜ਼ਰੂਰ ਦਿਖਣਾ ਚਾਹੀਦਾ ਹੈ.

--dump-po-strings

-D ਤੋਂ ਸਮਾਨ ਹੈ, ਪਰ GNU gettext po (ਪੋਰਟੇਬਲ ਆਬਜੈਕਟ) ਫਾਇਲ ਫਾਰਮੈਟ ਵਿੱਚ ਆਉਟਪੁੱਟ ਹੈ.

- ਡੰਪ-ਸਤਰ

-D ਤੋਂ ਸਮਾਨ

--ਮਦਦ ਕਰੋ

ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਤੇ ਵਰਤੋਂ ਦੇ ਸੰਦੇਸ਼ ਨੂੰ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰੋ ਅਤੇ ਸਫ਼ਲਤਾਪੂਰਕ ਬਾਹਰ

--init-file ਫਾਇਲ

--rcfile ਫਾਇਲ

ਮਿਆਰੀ ਨਿੱਜੀ ਸ਼ੁਰੂਆਤੀ ਫਾਇਲ ~ / .bashrc ਦੀ ਬਜਾਏ ਫਾਇਲ ਤੋਂ ਆਦੇਸ਼ ਚਲਾਓ ਜੇ ਸ਼ੈੱਲ ਇੰਟਰਐਕਟਿਵ ਹੈ (ਹੇਠਾਂ ਇਨਵੌਕਸੀ ਵੇਖੋ).

--ਲਾਗਿਨ

-l ਦੇ ਬਰਾਬਰ

- ਚੋਣ

ਸ਼ੈੱਲ ਇੰਟਰਐਕਟਿਵ ਹੋਣ ਤੇ ਕਮਾਂਡ ਲਾਈਨਾਂ ਪੜ੍ਹਨ ਲਈ ਜੀਐਨਯੂ ਰੀਡਲਾਈਨ ਲਾਇਬਰੇਰੀ ਦੀ ਵਰਤੋਂ ਨਾ ਕਰੋ.

--noprofile

ਜਾਂ ਤਾਂ ਸਿਸਟਮ-ਵਿਆਪਕ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲ / etc / ਪ੍ਰੋਫਾਈਲ ਜਾਂ ਕਿਸੇ ਵੀ ਨਿੱਜੀ ਅਰੰਭਿਕ ਫਾਇਲਾਂ ~ / .bash_profile , ~ / .bash_login , ਜਾਂ ~ / .profile ਨੂੰ ਪੜ੍ਹ ਨਾ ਲਓ . ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ, ਬੈਸ ਇਹਨਾਂ ਫਾਈਲਾਂ ਪੜ੍ਹਦਾ ਹੈ ਜਦੋਂ ਇਹ ਲੌਗਿਨ ਸ਼ੈਲ ਦੇ ਤੌਰ ਤੇ ਬੁਲਾਉਂਦਾ ਹੈ (ਹੇਠਾਂ ਇਨਵੌਕਸੀ ਵੇਖੋ).

--norc

ਨਿੱਜੀ ਸ਼ੁਰੂਆਤੀ ਫਾਇਲ ~ / .bashrc ਨੂੰ ਪੜ੍ਹ ਅਤੇ ਲਾਗੂ ਨਾ ਕਰੋ ਜੇ ਸ਼ੈੱਲ ਇੰਟਰਐਕਟਿਵ ਹੈ. ਇਹ ਚੋਣ ਮੂਲ ਰੂਪ ਵਿੱਚ ਚਾਲੂ ਹੁੰਦੀ ਹੈ ਜੇ ਸ਼ੈੱਲ sh ਦੇ ਤੌਰ ਤੇ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

--posix

Bash ਦੇ ਵਰਤਾਓ ਨੂੰ ਬਦਲੋ ਜਿੱਥੇ ਡਿਫਾਲਟ ਓਪਰੇਸ਼ਨ POSIX 1003.2 ਸਟੈਂਡਰਡ ਤੋਂ ਵੱਖ ਹੁੰਦਾ ਹੈ ਤਾਂ ਜੋ ਸਟੈਂਡਰਡ ( ਪੋਜਿਕਸ ਮੋਡ ) ਨਾਲ ਮਿਲ ਸਕੇ.

--ਪ੍ਰਬੰਧਿਤ

ਸ਼ੈੱਲ ਪਾਬੰਦੀਸ਼ੁਦਾ ਹੋ ਜਾਂਦੀ ਹੈ (ਹੇਠਾਂ ਪ੍ਰਤਿਬੰਧਿਤ ਸ਼ੈਲ ਦੇਖੋ).

--rpm- ਦੀ ਲੋੜ ਹੈ

ਫਾਇਲਾਂ ਦੀ ਸੂਚੀ ਤਿਆਰ ਕਰੋ ਜੋ ਕਿ ਸ਼ੈੱਲ ਸਕਰਿਪਟ ਨੂੰ ਚਲਾਉਣ ਲਈ ਲੋੜੀਂਦੇ ਹਨ. ਇਸਦਾ ਮਤਲਬ ਹੈ '-n' ਅਤੇ ਇਹ ਸਮਾਨ ਸੀਮਾਵਾਂ ਦੇ ਅਧੀਨ ਹੁੰਦਾ ਹੈ ਜਿਵੇਂ ਟਾਈਮ ਅਸ਼ੁੱਧੀ ਚੈੱਕਿੰਗ ਦੀ ਜਾਂਚ ਕਰਨੀ; ਬੈਕਟਿਕਸ, [] ਟੈਸਟ, ਅਤੇ ਈਵਾਲਸ ਪਾਰਸ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਇਸ ਲਈ ਕੁਝ ਨਿਰਭਰਤਾ ਗੁਆਚ ਸਕਦੀ ਹੈ. --verbose ਦੇ ਬਰਾਬਰ ਦੀ -v

--ਵਰਜਨ

ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਤੇ bash ਦੇ ਇਸ ਮੌਕੇ ਲਈ ਵਰਜ਼ਨ ਜਾਣਕਾਰੀ ਵੇਖੋ ਅਤੇ ਸਫ਼ਲਤਾਪੂਰਕ ਬਾਹਰ

ਆਰਗੂਮਿੰਟ

ਜੇ ਚੋਣ ਪ੍ਰਕਿਰਿਆ ਤੋਂ ਬਾਅਦ ਆਰਗੂਮੈਂਟ ਬਾਕੀ ਰਹਿੰਦੇ ਹਨ, ਅਤੇ ਨਾ ਤਾਂ -c ਅਤੇ ਨਾ -s ਚੋਣ ਸਪਲਾਈ ਕੀਤੀ ਗਈ ਹੈ, ਪਹਿਲੇ ਆਰਗੂਮੈਂਟ ਨੂੰ ਸ਼ੈੱਲ ਕਮਾਂਡਾਂ ਵਾਲੇ ਇੱਕ ਫਾਇਲ ਦਾ ਨਾਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ ਇਸ ਫੈਸ਼ਨ ਵਿੱਚ bash ਨੂੰ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, $ 0 ਨੂੰ ਫਾਈਲ ਦੇ ਨਾਮ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਸਥਿਤੀ ਸਬੰਧੀ ਪੈਰਾਮੀਟਰ ਬਾਕੀ ਆਰਗੂਮਿੰਟ ਤੇ ਸੈਟ ਕੀਤੇ ਜਾਂਦੇ ਹਨ. Bash ਇਸ ਫਾਈਲ ਦੇ ਕਮਾਂਡਾਂ ਨੂੰ ਪੜ੍ਹ ਅਤੇ ਲਾਗੂ ਕਰਦਾ ਹੈ, ਫਿਰ ਬਾਹਰ ਨਿਕਲਦਾ ਹੈ Bash ਦੀ ਬਾਹਰ ਜਾਣ ਦੀ ਸਥਿਤੀ ਸਕ੍ਰਿਪਟ ਵਿੱਚ ਚੱਲਣ ਵਾਲੀ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਹੈ. ਜੇ ਕੋਈ ਕਮਾਂਡ ਨਹੀਂ ਚੱਲਦੀ, ਨਿਕਾਸ ਦੀ ਸਥਿਤੀ 0 ਹੈ. ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਫਾਇਲ ਨੂੰ ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚ ਖੋਲ੍ਹਣ ਲਈ ਤਿਆਰ ਕੀਤਾ ਗਿਆ ਹੈ, ਅਤੇ, ਜੇ ਕੋਈ ਫਾਇਲ ਨਹੀਂ ਲੱਭੀ, ਤਾਂ ਸ਼ੈੱਲ ਪਾਈਟ ਲਈ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ.

INVOCATION

ਇੱਕ ਲੌਗਿਨ ਸ਼ੈਲ ਉਹ ਹੁੰਦਾ ਹੈ ਜਿਸਦਾ ਆਰਗੂਮੈਂਟ ਦਾ ਪਹਿਲਾ ਅੱਖਰ ਜ਼ੀਰੋ ਇੱਕ - ਜਾਂ - ਲੌਗਿਨ ਵਿਕਲਪ ਨਾਲ ਅਰੰਭ ਹੁੰਦਾ ਹੈ.

ਇੱਕ ਇੰਟਰਐਕਟਿਵ ਸ਼ੈਲ ਇੱਕ ਬਿਨਾਂ-ਚੋਣ ਆਰਗੂਮੈਂਟ ਦੇ ਬਿਨਾਂ ਅਰੰਭ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ -c ਚੋਣ ਦੇ ਬਿਨਾਂ, ਜਿਸਦਾ ਮਿਆਰੀ ਇੰਪੁੱਟ ਅਤੇ ਆਉਟਪੁਟ ਦੋਨੋ ਟਰਮੀਨਲਾਂ ਨਾਲ ਜੁੜੇ ਹੁੰਦੇ ਹਨ (ਜਿਵੇਂ isatty (3) ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਾਂ ਇੱਕ -i ਵਿਕਲਪ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ ਹੈ. PS1 ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ $ - i ਸ਼ਾਮਲ ਕਰਦਾ ਹੈ ਜੇ bash ਇੰਟਰਐਕਟਿਵ ਹੈ, ਜੋ ਕਿ ਇਸ ਅਵਸਥਾ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਇੱਕ ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਜਾਂ ਸਟਾਰਟਅਪ ਫਾਇਲ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ.

ਹੇਠ ਲਿਖੇ ਪੈਰਿਆਂ ਦਾ ਵਰਣਨ ਹੈ ਕਿ ਕਿਵੇਂ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ. ਜੇਕਰ ਕੋਈ ਵੀ ਫਾਈਲ ਮੌਜੂਦ ਹੈ ਪਰ ਪੜ੍ਹੀ ਨਹੀਂ ਜਾ ਸਕਦੀ, ਤਾਂ ਬੈਸ਼ ਇੱਕ ਗਲਤੀ ਦੀ ਰਿਪੋਰਟ ਦਿੰਦਾ ਹੈ ਫਿਲਮਾਂ ਦੇ ਨਾਂ ਵਿੱਚ ਟਿਲਡਜ਼ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਜਿਵੇਂ ਕਿ ਵਿਸਤਾਰੀ ਭਾਗ ਵਿੱਚ Tilde Expansion ਹੇਠ ਦੱਸਿਆ ਗਿਆ ਹੈ.

ਜਦੋਂ bash ਨੂੰ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਲਾਗਇਨ ਸ਼ੈੱਲ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਜਾਂ - ਲੌਗਿਨ ਚੋਣ ਨਾਲ ਨਾਨ-ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਦੇ ਤੌਰ ਤੇ, ਇਹ ਪਹਿਲੀ ਫਾਇਲ / etc / profile ਤੋਂ ਕਮਾਂਡ ਪੜ੍ਹਦਾ ਹੈ, ਜੇਕਰ ਇਹ ਫਾਇਲ ਮੌਜੂਦ ਹੈ. ਉਸ ਫਾਈਲ ਨੂੰ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ, ਇਹ ~ / .bash_profile , ~ / .bash_login , ਅਤੇ ~ / .profile ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ , ਉਸ ਕ੍ਰਮ ਵਿੱਚ, ਅਤੇ ਪਹਿਲੇ ਇੱਕ ਤੋਂ ਹੀ ਕਮਾਂਡਜ਼ ਨੂੰ ਪੜ੍ਹਦਾ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ ਜੋ ਮੌਜੂਦ ਹੈ ਅਤੇ ਪੜ੍ਹਨਯੋਗ ਹੈ --noprofile ਚੋਣ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਦੋਂ ਸ਼ੈੱਲ ਇਸ ਵਿਵਹਾਰ ਨੂੰ ਇਨਕਾਰਟ ਕਰਨ ਲਈ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ ਹੈ.

ਜਦੋਂ ਲਾਗਿੰਨ ਸ਼ੈੱਲ ਬੰਦ ਹੋਵੇ, ਫਾਇਲ ਨੂੰ ~ / .bash_logout ਤੋਂ bash ਪੜ੍ਹ ਅਤੇ ਕਮਾਂਡਾਂ ਚਲਾਉਂਦਾ ਹੈ, ਜੇ ਇਹ ਮੌਜੂਦ ਹੈ.

ਜਦੋਂ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ, ਜੋ ਲਾਗਇਨ ਸ਼ੈਲ ਨਹੀਂ ਹੈ, bash ~ / .bashrc ਤੋਂ ਕਮਾਂਡ ਪੜ੍ਹਦਾ ਹੈ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ, ਜੇਕਰ ਇਹ ਫਾਇਲ ਮੌਜੂਦ ਹੈ. ਇਸ ਨੂੰ --norc ਚੋਣ ਵਰਤ ਕੇ ਇੰਝਬਿਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. --rcfile ਫਾਇਲ ਚੋਣ ਨੂੰ ~ / .bashrc ਦੀ ਬਜਾਏ ਫਾਇਲ ਤੋਂ ਕਮਾਂਡ ਵੇਖਣ ਅਤੇ ਚਲਾਉਣ ਲਈ bash ਨੂੰ ਮਜਬੂਰ ਕੀਤਾ ਜਾਵੇਗਾ.

ਜਦੋਂ ਸ਼ੈੱਲ ਸਕਰਿਪਟ ਨੂੰ ਚਲਾਉਣ ਲਈ ਬਿਨਾਂ-ਇੰਟਰੈਕਟਿਵ ਸ਼ੁਰੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਉਦਾਹਰਨ ਲਈ, ਇਹ ਵਾਤਾਵਰਨ ਵਿਚਲੇ ਵੇਰੀਏਬਲ BASH_ENV ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ, ਇਸਦਾ ਮੁੱਲ ਫੈਲਾ ਦਿੰਦਾ ਹੈ ਜੇ ਇਹ ਉੱਥੇ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ, ਅਤੇ ਵਿਸਤ੍ਰਿਤ ਮੁੱਲ ਨੂੰ ਪੜ੍ਹਨ ਅਤੇ ਚਲਾਉਣ ਲਈ ਫਾਈਲ ਦਾ ਨਾਮ ਵਰਤਦਾ ਹੈ . ਬੌਸ਼ ਵਰਤਾਓ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਕਿ ਹੇਠ ਲਿਖੀ ਕਮਾਂਡ ਨੂੰ ਚਲਾਇਆ ਗਿਆ ਸੀ:

ਜੇ [-n "$ BASH_ENV"]; ਫਿਰ. "$ BASH_ENV"; ਫਾਈ

ਪਰ PATH ਵੇਰੀਏਬਲ ਦਾ ਮੁੱਲ ਫਾਇਲ ਨਾਂ ਲਈ ਨਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ.

ਜੇ bash ਨੂੰ sh ਨਾਂ ਨਾਲ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਸ਼ੀਸ਼ੇ ਦੇ ਇਤਿਹਾਸਕ ਵਰਣਨ ਨੂੰ ਜਿੰਨਾ ਸੰਭਵ ਹੋ ਸਕੇ, ਸ਼ੁਰੂਆਤ ਕਰਨ ਦੀ ਵਿਵਹਾਰ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ, ਜਦੋਂ ਕਿ POSIX ਸਟੈਂਡਰਡ ਦੀ ਪੁਸ਼ਟੀ ਕਰਦਾ ਹੈ. ਜਦੋਂ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਲਾਗਇਨ ਸ਼ੈੱਲ, ਜਾਂ - ਲੌਗਿਨ ਚੋਣ ਨਾਲ ਨਾ-ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ , ਤਾਂ ਇਹ ਪਹਿਲਾਂ / etc / profile ਅਤੇ ~ / .profile ਤੋਂ ਕਮਾਂਡ ਵੇਖਣ ਅਤੇ ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ ਕਰਦਾ ਹੈ. --noprofile ਚੋਣ ਨੂੰ ਇਸ ਵਰਤਾਓ ਨੂੰ ਰੋਕਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ ਜਦੋਂ name sh ਦੇ ਨਾਲ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਦੇ ਤੌਰ ਤੇ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, bash ਵੇਰੀਏਬਲ ENV ਲਈ ਖੋਜਦਾ ਹੈ, ਇਸਦਾ ਪ੍ਰਭਾਸ਼ਿਤ ਹੁੰਦਾ ਹੈ ਜੇ ਇਸ ਦੀ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਵਿਸਤ੍ਰਿਤ ਮੁੱਲ ਨੂੰ ਇੱਕ ਫਾਇਲ ਦਾ ਨਾਮ ਪੜ੍ਹਨ ਅਤੇ ਚਲਾਉਣ ਲਈ ਵਰਤਦਾ ਹੈ. ਕਿਉਕਿ ਸ਼ੈਲ ਕਸ ਦੇ ਤੌਰ ਤੇ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ ਕਿਸੇ ਹੋਰ ਸਟਾਰਟਅੱਪ ਫਾਈਲਾਂ ਤੋਂ ਕਮਾਂਡ ਪੜ੍ਹਨ ਅਤੇ ਚਲਾਉਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ, --rcfile ਚੋਣ ਦਾ ਕੋਈ ਪ੍ਰਭਾਵ ਨਹੀਂ ਹੁੰਦਾ. ਨਾਂ- ਸ਼ ਨਾਲ ਇੱਕ ਨਾ-ਇੰਟਰਐਕਟਿਵ ਸ਼ੈੱਲ ਅਰੰਭ ਕੀਤਾ ਕਿਸੇ ਹੋਰ ਸਟਾਰਟਅੱਪ ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ. ਜਦੋਂ ਸ਼ਸ਼ ਵਜੋਂ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ bash ਪਜ਼ਿੰਕਸ ਮੋਡ ਵਿੱਚ ਦਾਖਲ ਹੁੰਦਾ ਹੈ

ਜਦੋਂ bash posix ਮੋਡ ਵਿੱਚ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਵੇਂ-posix ਕਮਾਂਡ ਲਾਈਨ ਚੋਣ ਨਾਲ, ਇਹ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਲਈ POSIX ਸਟੈਂਡਰਡ ਦੀ ਪਾਲਣਾ ਕਰਦਾ ਹੈ. ਇਸ ਮੋਡ ਵਿੱਚ, ਇੰਟਰਐਕਟਿਵ ਸ਼ੈੱਲ ENV ਵੇਅਰਿਏਬਲ ਨੂੰ ਫੈਲਾਉਂਦੇ ਹਨ ਅਤੇ ਕਮਾਂਡਾਂ ਫਾਈਲ ਪੜ੍ਹ ਅਤੇ ਚਲਾਉਣੀਆਂ ਹੁੰਦੀਆਂ ਹਨ ਜਿਸਦਾ ਨਾਮ ਫੈਲਾਇਆ ਮੁੱਲ ਹੈ. ਕੋਈ ਹੋਰ ਸਟਾਰਟਅੱਪ ਫਾਈਲਾਂ ਪੜ੍ਹੀਆਂ ਨਹੀਂ ਗਈਆਂ.

ਬਾਸ਼ ਇਹ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ ਕਿ ਇਹ ਰਿਮੋਟ ਸ਼ੈੱਲ ਡੈਮਨ ਦੁਆਰਾ ਚਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ, ਆਮ ਤੌਰ ਤੇ rshd . ਜੇ bash ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਇਹ rshd ਦੁਆਰਾ ਚਲਾਇਆ ਜਾ ਰਿਹਾ ਹੈ, ਇਹ ~ / .bashrc ਤੋਂ ਕਮਾਂਡ ਪੜ੍ਹਦਾ ਹੈ ਅਤੇ ਚਲਾਉਂਦਾ ਹੈ, ਜੇ ਇਹ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਪੜ੍ਹਨਯੋਗ ਹੈ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਨਹੀਂ ਕਰੇਗਾ ਜੇ sh ਦੇ ਤੌਰ ਤੇ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. --norc ਚੋਣ ਨੂੰ ਇਸ ਵਰਤਾਓ ਨੂੰ ਰੋਕਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਅਤੇ ਹੋਰ ਫਾਇਲ ਨੂੰ ਪੜਨ ਲਈ ਮਜਬੂਰ ਕਰਨ ਲਈ --rcfile ਚੋਣ ਵਰਤੀ ਜਾ ਸਕਦੀ ਹੈ, ਪਰ rshd ਆਮ ਤੌਰ ਤੇ ਇਹਨਾਂ ਚੋਣਾਂ ਨਾਲ ਸ਼ੈਲ ਨੂੰ ਨਹੀਂ ਬੁਲਾਉਂਦਾ ਜਾਂ ਇਹਨਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਦੀ ਮਨਜੂਰੀ ਦਿੰਦਾ ਹੈ

ਜੇ ਸ਼ੈੱਲ ਅਸਲ ਯੂਜ਼ਰ (ਗਰੁੱਪ) ਆਈਡੀ ਦੇ ਬਰਾਬਰ ਪ੍ਰਭਾਵੀ ਯੂਜ਼ਰ (ਗਰੁੱਪ) ਆਈਡੀ ਨਾਲ ਅਰੰਭ ਹੋਇਆ ਹੈ, ਅਤੇ -p ਚੋਣ ਨਹੀਂ ਦਿੱਤੀ ਗਈ ਹੈ, ਕੋਈ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਨਹੀਂ ਪੜ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ, ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਵਾਤਾਵਰਨ ਤੋਂ ਪ੍ਰਾਪਤ ਨਹੀਂ ਹੁੰਦੇ, ਸ਼ੈਲਪਟਸ ਵੇਰੀਏਬਲ, ਜੇ ਇਹ ਵਾਤਾਵਰਣ ਵਿੱਚ ਦਿਸਦਾ ਹੈ, ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਯੂਜ਼ਰ id ਅਸਲੀ ਯੂਜ਼ਰ id ਤੇ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ -p ਚੋਣ ਆਵਕਣ ਤੇ ਦਿੱਤੀ ਗਈ ਹੈ, ਤਾਂ ਸ਼ੁਰੂਆਤੀ ਵਿਵਹਾਰ ਉਹੀ ਹੈ, ਪਰ ਅਸਰਦਾਰ ਯੂਜ਼ਰ ਆਈਡੀ ਰੀਸੈਟ ਨਹੀਂ ਹੈ.

ਪਰਿਭਾਸ਼ਾ

ਹੇਠ ਲਿਖੀਆਂ ਪਰਿਭਾਸ਼ਾਵਾਂ ਨੂੰ ਬਾਕੀ ਦੇ ਦਸਤਾਵੇਜ਼ਾਂ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ

ਖਾਲੀ

ਇੱਕ ਸਪੇਸ ਜਾਂ ਟੈਬ.

ਸ਼ਬਦ

ਸ਼ੈੱਲ ਦੁਆਰਾ ਇਕ ਯੂਨਿਟ ਦੇ ਤੌਰ ਤੇ ਜਾਣੇ ਜਾਂਦੇ ਅੱਖਰਾਂ ਦੀ ਲੜੀ ਟੋਕਨ ਦੇ ਤੌਰ ਤੇ ਵੀ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ

ਨਾਮ

ਇੱਕ ਸ਼ਬਦ ਜਿਸ ਵਿੱਚ ਕੇਵਲ ਅਲਫਾਨਾਮੈਰਕ ਅੱਖਰ ਅਤੇ ਅੰਡਰਸਕੋਰ ਹਨ, ਅਤੇ ਇੱਕ ਵਰਣਮਾਲਾ ਦੇ ਅੱਖਰ ਜਾਂ ਇੱਕ ਅੰਡਰਸਕੋਰ ਨਾਲ ਸ਼ੁਰੂ ਇਸਦੇ ਨਾਲ ਇਕ ਪਛਾਣਕਰਤਾ ਵੀ ਕਿਹਾ ਜਾਂਦਾ ਹੈ

metacharacter

ਇੱਕ ਅੱਖਰ ਜੋ, ਜਦੋਂ ਅਣ-ਲਕੀਰਦਾ ਹੈ, ਸ਼ਬਦਾਂ ਨੂੰ ਵੱਖ ਕਰਦਾ ਹੈ. ਹੇਠ ਲਿਖੇ ਵਿਚੋਂ ਇੱਕ:

| &; () <> ਸਪੇਸ ਟੈਬ

ਕੰਟਰੋਲ ਓਪਰੇਟਰ

ਇੱਕ ਟੋਕਨ ਜੋ ਕੰਟਰੋਲ ਫੰਕਸ਼ਨ ਕਰਦਾ ਹੈ. ਇਹ ਹੇਠ ਦਿੱਤੇ ਚਿੰਨ੍ਹਾਂ ਵਿੱਚੋਂ ਇਕ ਹੈ:

|| &&; ;; () |

ਰਿਜ਼ਰਵਡ ਵਰਡਜ਼

ਰਿਜ਼ਰਵਡ ਵਰਡਜ਼ ਉਹ ਸ਼ਬਦ ਹਨ ਜਿਹੜੇ ਸ਼ੈਲ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਅਰਥ ਰੱਖਦੇ ਹਨ. ਹੇਠਾਂ ਦਿੱਤੇ ਸ਼ਬਦਾਂ ਨੂੰ ਰਾਖਵੇਂ ਤੌਰ 'ਤੇ ਮਾਨਤਾ ਦਿੱਤੀ ਗਈ ਹੈ ਜਦੋਂ ਅਣਛੋਟਿਆ ਹੋਇਆ ਹੈ ਅਤੇ ਸਧਾਰਨ ਕਮਾਂਡ ਦਾ ਪਹਿਲਾਂ ਸ਼ਬਦ (ਹੇਠਾਂ ਸ਼ੈਲ ਗ੍ਰਾਮਰ ਦੇਖੋ) ਜਾਂ ਤੀਜੇ ਸ਼ਬਦ ਨੂੰ ਜਾਂ ਕਮਾਂਡ ਲਈ :

! ਮਾਮਲੇ ਦੀ ਚੋਣ ਉਦੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਫੈਸਲੇ ਲਈ ਕਾਰਜ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਜਦੋਂ ਤੱਕ {} ਸਮਾਂ [] ਨਹੀਂ ਹੁੰਦਾ

ਸ਼ੈਲ ਗ੍ਰਾਮਰ

ਸਧਾਰਨ ਕਮਾਂਡਾਂ

ਇੱਕ ਸਧਾਰਨ ਕਮਾਂਡ ਇੱਕ ਚੋਣਵੇਂ ਵੈਰੀਏਬਲ ਅਸਾਇਨਮੈਂਟਸ ਦੀ ਤਰਤੀਬ ਹੈ ਜਿਸਦੇ ਬਾਅਦ ਖਾਲੀ ਸਫਿਆਂ ਅਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਕੀਤੇ ਗਏ ਹਨ, ਅਤੇ ਇੱਕ ਕੰਟਰੋਲ ਓਪਰੇਟਰ ਦੁਆਰਾ ਬੰਦ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ. ਪਹਿਲਾ ਸ਼ਬਦ ਚਲਾਉਣ ਦਾ ਹੁਕਮ ਦਰਸਾਉਂਦਾ ਹੈ, ਅਤੇ ਆਰਗੂਲੇਂਸ ਜ਼ੀਰੋ ਦੇ ਤੌਰ ਤੇ ਪਾਸ ਕੀਤਾ ਗਿਆ ਹੈ. ਬਾਕੀ ਰਹਿੰਦੇ ਸ਼ਬਦਾਂ ਨੂੰ ਆਰਜ਼ੀ ਕਮਾਂਡ ਦੇ ਆਰਗੂਮੈਂਟਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਪਾਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਇੱਕ ਸਧਾਰਨ ਕਮਾਂਡ ਦੀ ਵਾਪਸੀ ਮੁੱਲ ਇਸ ਦਾ ਨਿਕਾਸ ਸਥਿਤੀ ਹੈ, ਜਾਂ 128+ n ਜੇਕਰ ਕਮਾਂਡ ਸਿਗਨਲ n ਦੁਆਰਾ ਸਮਾਪਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ.

ਪਾਈਪਲਾਈਨਾਂ

ਇੱਕ ਪਾਈਪਲਾਈਨ ਅੱਖਰ ਦੁਆਰਾ ਵੱਖ ਕੀਤੀਆਂ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਆਦੇਸ਼ਾਂ ਦਾ ਇੱਕ ਲੜੀ ਹੈ | . ਪਾਈਪਲਾਈਨ ਲਈ ਫਾਰਮੈਟ ਇਹ ਹੈ:

[ ਸਮਾਂ [ -ਪੀ ]] [! ] ਕਮਾਂਡ [ | ਕਮਾਂਡ 2 ...]

ਕਮਾਂਡ ਦਾ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਕਮਪ 2 ਦੇ ਸਟੈਂਡਰਡ ਇੰਨਪੁੱਟ ਨੂੰ ਪਾਈਪ ਰਾਹੀਂ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ. ਇਹ ਕਨੈਕਸ਼ਨ ਕਮਾਂਡ ਦੁਆਰਾ ਨਿਰਦਿਸ਼ਟ ਕੀਤੇ ਕਿਸੇ ਵੀ redirections ਤੋਂ ਪਹਿਲਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (ਹੇਠਾਂ ਦੇਖੋ REDIRECTION ).

ਜੇ ਰਿਜ਼ਰਵਡ ਵਰਡ ! ਪਾਈਪਲਾਈਨ ਤੋਂ ਪਹਿਲਾਂ, ਉਸ ਪਾਈਪਲਾਈਨ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਦਾ ਲਾਜ਼ੀਕਲ ਨਹੀਂ ਹੈ. ਨਹੀਂ ਤਾਂ, ਪਾਈਪਲਾਈਨ ਦੀ ਸਥਿਤੀ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਹੈ. ਵੈਲਯੂ ਵਾਪਸ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪਾਈਪਲਾਈਨ ਦੇ ਅੰਤ ਵਿੱਚ ਬੰਦ ਕਰਨ ਲਈ ਸ਼ੈੱਲ ਸਭ ਕਮਾਂਡਾਂ ਦੀ ਉਡੀਕ ਕਰਦਾ ਹੈ.

ਜੇ ਪਾਈਪਲਾਈਨ ਤੋਂ ਪਹਿਲਾਂ ਰਿਜ਼ਰਵਡ ਵਰਡ ਰਿਜ਼ਰਵ ਕੀਤੀ ਗਈ ਸੀ, ਤਾਂ ਬੀਮੇ ਅਤੇ ਯੂਜ਼ਰ ਅਤੇ ਸਿਸਟਮ ਨੂੰ ਇਸਦੇ ਅਮਲ ਦੁਆਰਾ ਖਪਤ ਹੋਏ ਸਮੇਂ ਦੀ ਰਿਪੋਰਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜਦੋਂ ਪਾਈਪਲਾਈਨ ਬੰਦ ਹੋ ਜਾਂਦੀ ਹੈ. -p ਚੋਣ ਆਊਟਪੁਟ ਫਾਰਮੈਟ ਨੂੰ POSIX ਦੁਆਰਾ ਦਰਸਾਈ ਗਈ ਹੈ. TIMEFORMAT ਵੇਰੀਏਬਲ ਇੱਕ ਫਾਰਮੈਟ ਸਟ੍ਰਿੰਗ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਸਮੇਂ ਦੀ ਜਾਣਕਾਰੀ ਕਿਵੇਂ ਪ੍ਰਦਰਸ਼ਤ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ; ਹੇਠਾਂ ਦਿੱਤੇ ਸ਼ੈੱਲ ਵੇਅਰਿਏਬਲ ਦੇ ਤਹਿਤ TIMEFORMAT ਦਾ ਵੇਰਵਾ ਦੇਖੋ.

ਇੱਕ ਪਾਈਪਲਾਈਨ ਵਿੱਚ ਹਰ ਇੱਕ ਹੁਕਮ ਨੂੰ ਇੱਕ ਵੱਖਰੀ ਪ੍ਰਕਿਰਿਆ (ਜਿਵੇਂ ਇੱਕ ਸਬਸ਼ੀਲ ਵਿੱਚ) ਦੇ ਤੌਰ ਤੇ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ.

ਸੂਚੀਆਂ

ਇੱਕ ਸੂਚੀ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਪਾਈਪਲਾਈਨ ਹੈ ਜੋ ਕਿਸੇ ਇੱਕ ਆਪਰੇਟਰ ਦੁਆਰਾ ਵੱਖ ਕੀਤੀ ਗਈ ਹੈ ; , & , && , ਜਾਂ || , ਅਤੇ ਚੋਣਵੇਂ ਰੂਪ ਵਿਚ ਕਿਸੇ ਦੁਆਰਾ ਬੰਦ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ ; , ਅਤੇ , ਜਾਂ .

ਇਹਨਾਂ ਸੂਚੀਕਾਰਾਂ ਵਿੱਚੋਂ ਆਪਰੇਟਰ, && ਅਤੇ || ਬਰਾਬਰ ਦੀ ਤਰਜੀਹ ਹੈ, ਇਸ ਤੋਂ ਬਾਅਦ ; ਅਤੇ &, ਜਿਹਨਾਂ ਦੀ ਬਰਾਬਰ ਦੀ ਤਰਜੀਹ ਹੈ.

ਕਮਾਂਡਾਂ ਨੂੰ ਸੀਮਿਤ ਕਰਨ ਲਈ ਸੈਮੀਕੋਲਨ ਦੀ ਬਜਾਏ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਨਵੀਂਆਂ ਲਾਈਨਾਂ ਦੀ ਤਰਤੀਬ ਇੱਕ ਸੂਚੀ ਵਿੱਚ ਵਿਖਾਈ ਦੇ ਸਕਦੀ ਹੈ.

ਜੇਕਰ ਇੱਕ ਕਮਾਂਡ ਕੰਟ੍ਰੋਲ ਓਪਰੇਟਰ ਦੁਆਰਾ ਖਤਮ ਹੋ ਜਾਂਦੀ ਹੈ, ਸ਼ੈੱਲ ਇੱਕ ਸਬਸੇਲ ਵਿੱਚ ਬੈਕਗਰਾਊਂਡ ਵਿੱਚ ਕਮਾਂਡ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ. ਸ਼ੈੱਲ ਨੂੰ ਖਤਮ ਹੋਣ ਦੀ ਉਡੀਕ ਨਹੀਂ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ 0 ਹੁੰਦੀ ਹੈ . ਕ੍ਰਮਵਾਰ ਚਲਾਏ ਜਾਂਦੇ ਹਨ; ਸ਼ੈੱਲ ਹਰ ਇੱਕ ਹੁਕਮ ਦੀ ਉਡੀਕ ਨੂੰ ਬੰਦ ਕਰਨ ਦੀ ਉਡੀਕ ਕਰਦਾ ਹੈ. ਵਾਪਸੀ ਸਥਿਤੀ ਆਖ਼ਰੀ ਹੁਕਮ ਦੀ ਬਾਹਰਲੀ ਸਥਿਤੀ ਹੈ.

ਕੰਟਰੋਲ ਆਪਰੇਟਰ && ਅਤੇ || ਕ੍ਰਮਵਾਰ ਕ੍ਰਮਵਾਰ ਸੂਚੀਆਂ ਅਤੇ ਸੂਚੀਆਂ ਅਤੇ OR ਸੂਚੀਆਂ. ਇੱਕ AND ਸੂਚੀ ਦੇ ਰੂਪ ਹਨ

ਕਮਾਂਡ 1 ਅਤੇ& ਕਮਾਂਡ 2

ਕਮਾਂਡ 2 ਐਕਜ਼ੀਕਿਯੂਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੇ, ਅਤੇ ਕੇਵਲ ਤਾਂ ਹੀ, ਕਮਾਂਡ 1 ਜ਼ੀਰੋ ਦੀ ਐਗਜ਼ਿਟ ਸਟਾਰਟ ਵਾਪਸ ਕਰ ਦਿੰਦਾ ਹੈ.

ਇੱਕ OR ਸੂਚੀ ਦੇ ਰੂਪ ਹਨ

command1 || ਕਮਾਂਡ 2

ਕਮਾਂਡ 2 ਐਕਜ਼ੀਕਿਯੂਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੇ ਅਤੇ ਕੇਵਲ ਤਾਂ ਹੀ ਜੇ ਕਮਾਂਡ 1 ਗੈਰ-ਜ਼ੀਰੋ ਐਗਜੈਟ ਸਥਿਤੀ ਨੂੰ ਵਾਪਸ ਕਰਦੀ ਹੈ. AND ਅਤੇ OR ਸੂਚੀਆਂ ਦੀ ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ ਸੂਚੀ ਵਿੱਚ ਲਾਗੂ ਕੀਤੀਆਂ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਨਿਵੇਕਤੀ ਸਥਿਤੀ ਹੈ.

ਕੰਪਾਊਂਡ ਕਮਾਂਡਜ਼

ਇੱਕ ਸੰਯੁਕਤ ਕਮਾਂਡ ਇਹਨਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ:

( ਸੂਚੀ )

ਸੂਚੀ ਨੂੰ ਇੱਕ ਸਬਸ਼ੀਲ ਵਿੱਚ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਵੇਰੀਏਬਲ ਅਸਾਇਨਮੈਂਟਸ ਅਤੇ ਬਿਲਟਿਨ ਕਮਾਂਡ ਜੋ ਕਿ ਸ਼ੈੱਲ ਦੇ ਵਾਤਾਵਰਣ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੇ ਹਨ, ਕਮਾਂਡ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ ਪ੍ਰਭਾਵ ਵਿੱਚ ਨਹੀਂ ਰਹਿ ਜਾਂਦੇ. ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ ਸੂਚੀ ਤੋਂ ਬਾਹਰ ਜਾਣ ਦੀ ਸਥਿਤੀ ਹੈ.

{ ਸੂਚੀ ; }

ਸੂਚੀ ਨੂੰ ਕੇਵਲ ਮੌਜੂਦਾ ਸ਼ੈੱਲ ਵਾਤਾਵਰਣ ਵਿੱਚ ਲਾਗੂ ਕੀਤਾ ਗਿਆ ਹੈ. ਸੂਚੀ ਨੂੰ ਨਵੀਂ ਲਾਈਨ ਜਾਂ ਸੈਮੀਕੋਲਨ ਨਾਲ ਖਤਮ ਕਰਨਾ ਚਾਹੀਦਾ ਹੈ ਇਸ ਨੂੰ ਸਮੂਹ ਕਮਾਂਡ ਦੇ ਰੂਪ ਵਿੱਚ ਜਾਣਿਆ ਜਾਂਦਾ ਹੈ. ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ ਸੂਚੀ ਤੋਂ ਬਾਹਰ ਜਾਣ ਦੀ ਸਥਿਤੀ ਹੈ. ਧਿਆਨ ਰੱਖੋ ਕਿ ਮੈਟਾਚਰੈਂਟਰਾਂ ( ਅਤੇ ) ਦੇ ਉਲਟ, { ਅਤੇ } ਰਿਜ਼ਰਵਡ ਵਰਡ ਹੁੰਦੇ ਹਨ ਅਤੇ ਅਜਿਹਾ ਵਾਪਰਨਾ ਚਾਹੀਦਾ ਹੈ ਜਿੱਥੇ ਰਾਖਵੇਂ ਸ਼ਬਦ ਨੂੰ ਮਾਨਤਾ ਪ੍ਰਾਪਤ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੱਤੀ ਗਈ ਹੈ. ਕਿਉਂਕਿ ਉਹ ਕਿਸੇ ਸ਼ਬਦ ਨੂੰ ਤੋੜਦੇ ਨਹੀਂ ਹਨ, ਉਹਨਾਂ ਨੂੰ ਵਾਈਟਪੇਸ ਦੁਆਰਾ ਸੂਚੀ ਵਿੱਚ ਵੱਖ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ.

(( ਸਮੀਕਰਨ ))

ARITHMETIC ਮੁਲਾਂਕਣ ਦੇ ਤਹਿਤ ਦਿੱਤੇ ਗਏ ਨਿਯਮਾਂ ਅਨੁਸਾਰ ਐਕਸਪਰੈਸ਼ਨ ਦਾ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ . ਜੇ ਸਮੀਕਰਨ ਦਾ ਮੁੱਲ ਗੈਰ-ਜ਼ੀਰੋ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ 0 ਹੁੰਦੀ ਹੈ; ਨਹੀਂ ਤਾਂ ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ 1 ਹੈ. ਇਹ ਬਿਲਕੁਲ " ਸਮੀਕਰਨ " ਨੂੰ ਦੱਸਣ ਦੇ ਬਰਾਬਰ ਹੈ.

[[ ਸਮੀਕਰਨ ]]

ਸ਼ਰਤੀਆ ਐਕਸ਼ਪਰੈਸ਼ਨ ਸਮੀਕਰਨ ਦੇ ਮੁਲਾਂਕਣ ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹੋਏ 0 ਜਾਂ 1 ਦੀ ਸਥਿਤੀ ਵਾਪਸ ਕਰੋ. ਅਭਿਲਾਸ਼ਾ ਸ਼ਰਤੀਆ ਦਰਸ਼ਕਾਂ ਦੇ ਹੇਠਾਂ ਦਿੱਤੇ ਗਏ ਪ੍ਰਾਥਮਿਕਤਾਵਾਂ ਤੋਂ ਬਣਿਆ ਹੈ . ਵਰਡ ਸਪਿਟਿੰਗ ਅਤੇ ਪਾਥਨਾਮ ਪਸਾਰ ਨੂੰ [[ ਅਤੇ ]] ਦੇ ਵਿਚਲੇ ਸ਼ਬਦਾਂ ਤੇ ਨਹੀਂ ਕੀਤਾ ਗਿਆ; ਟਿਡਲ ਦਾ ਵਿਸਥਾਰ, ਪੈਰਾਮੀਟਰ ਅਤੇ ਵੇਰੀਏਬਲ ਵਿਸਥਾਰ, ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਨਿਧੀ, ਪ੍ਰਕਿਰਿਆ ਪ੍ਰਤੀਭੂਤੀ, ਅਤੇ ਹਵਾਲਾ ਕੱਢਣ ਲਈ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

ਜਦੋਂ == ਅਤੇ ! = ਓਪਰੇਟਰ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ ਆਪਰੇਟਰ ਦੇ ਸੱਜੇ ਪਾਸੇ ਵਾਲੀ ਸਤਰ ਇਕ ਪੈਟਰਨ ਮੰਨੀ ਜਾਂਦੀ ਹੈ ਅਤੇ ਪੈਟਰਨ ਮਿਲਾਨਿੰਗ ਦੇ ਹੇਠਾਂ ਦਿੱਤੇ ਨਿਯਮਾਂ ਅਨੁਸਾਰ ਮੇਲ ਖਾਂਦੀ ਹੈ. ਰਿਟਰਨ ਵੈਲਯੂ 0 ਹੈ ਜੇਕਰ ਸਤਰ ਮਿਲਦੀ ਹੈ ਜਾਂ ਪੈਟਰਨ ਨਾਲ ਮੇਲ ਨਹੀਂ ਖਾਂਦੀ ਹੈ, ਅਤੇ 1 ਹੋਰ ਹੈ. ਪੈਟਰਨ ਦਾ ਕੋਈ ਵੀ ਹਿੱਸਾ ਇਸ ਨੂੰ ਸਤਰ ਦੇ ਤੌਰ ਤੇ ਮਿਲਾਉਣ ਲਈ ਮਜਬੂਰ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.

ਤਰਜਮਿਆਂ ਨੂੰ ਤਰਜੀਹ ਦੇ ਘੱਟਦੇ ਕ੍ਰਮ ਵਿੱਚ ਸੂਚੀਬੱਧ ਹੇਠ ਲਿਖੇ ਆਪਰੇਟਰਾਂ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ:

( ਸਮੀਕਰਨ )

ਸਮੀਕਰਨ ਦਾ ਮੁੱਲ ਵਾਪਸ ਕਰਦਾ ਹੈ ਇਹ ਓਪਰੇਟਰਾਂ ਦੀ ਆਮ ਤਰਜੀਹ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ

! ਸਮੀਕਰਨ

ਸਹੀ ਹੈ ਜੇ ਸਮੀਕਰਨ ਗਲਤ ਹੈ.

ਸਮੀਕਰਨ 1 && expression2

ਸੱਚ ਹੈ ਕਿ ਦੋਵਾਂ ਸਮੀਕਰਨ -1 ਅਤੇ ਪ੍ਰਗਟਾਵੇ 2 ਸਹੀ ਹਨ.

expression1 || expression2 ਸਹੀ ਹੈ ਜੇ ਕੋਈ ਐਕਸਪੈਕਸ਼ਨ 1 ਜਾਂ ਐਕਸਪਰੈਸ਼ਨ 2 ਸਹੀ ਹੈ.

&& ਅਤੇ || ਓਪਰੇਟਰ expression2 ਦਾ ਮੁਲਾਂਕਣ ਨਹੀਂ ਕਰਦੇ ਜੇ ਪ੍ਰਗਟਾਓ 1 ਦਾ ਮੁੱਲ ਪੂਰੇ ਸ਼ਰਤੀਆ ਐਕਸਪ੍ਰੈਸ ਦੇ ਰਿਟਰਨ ਵੈਲਯੂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ ਕਾਫੀ ਹੈ.

[ ਸ਼ਬਦ ਵਿਚ ] ਨਾਮ ਦੇ ਲਈ ; ਸੂਚੀ ; ਕੀਤਾ

ਆਈਟਮਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਤਿਆਰ ਕਰਨ ਵਿੱਚ ਹੇਠ ਲਿਖੇ ਸ਼ਬਦਾਂ ਦੀ ਸੂਚੀ ਫੈਲਾ ਦਿੱਤੀ ਗਈ ਹੈ. ਵੇਰੀਏਬਲ ਨਾਂ ਇਸ ਸੂਚੀ ਦੇ ਹਰੇਕ ਐਲੀਮੈਂਟ ਵਿੱਚ ਬਦਲੇ ਗਏ ਹਨ, ਅਤੇ ਹਰ ਵਾਰ ਸੂਚੀ ਨੂੰ ਅਮਲ ਵਿੱਚ ਲਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ ਸ਼ਬਦ ਵਿੱਚ ਹਟਾਇਆ ਗਿਆ ਹੈ, ਕਮਾਂਡ ਲਈ ਹਰ ਇਕ ਸਥਾਨੀਕ ਮਾਪਦੰਡ ਲਈ ਇੱਕ ਵਾਰ ਦੀ ਸੂਚੀ ਹੁੰਦੀ ਹੈ ਜੋ ਸੈੱਟ ਹੈ (ਹੇਠਾਂ ਮਾਪੇ ਵੇਖੋ). ਰਿਟਰਨ ਸਥਿਤੀ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਐਕਸਟੇਟ ਸਟੈਟਸ ਹੈ ਜੋ ਲਾਗੂ ਕਰਦੀ ਹੈ. ਜੇਕਰ ਕਿਸੇ ਖਾਲੀ ਸੂਚੀ ਵਿੱਚ ਨਤੀਜਿਆਂ ਵਿੱਚ ਹੇਠਾਂ ਆਈਆਂ ਆਈਟਮਾਂ ਦਾ ਵਿਸਥਾਰ, ਤਾਂ ਕੋਈ ਹੁਕਮ ਨਹੀਂ ਲਾਗੂ ਹੁੰਦੇ, ਅਤੇ ਵਾਪਸੀ ਦੀ ਸਥਿਤੀ 0 ਹੈ

(( expr1 ; expr2 ; expr3 ) ਲਈ); ਸੂਚੀ ; ਕੀਤਾ

ਸਭ ਤੋਂ ਪਹਿਲਾਂ, ਅੰਕਗਣਿਤ ਸਮੀਕਰਨ ਐਕਸਪੀ 1 ਦਾ ਹਿਸਾਬ ਲਾਏ ਗਏ ਨਿਯਮਾਂ ਅਨੁਸਾਰ ਏਥੇਮੈਟਿਕ ਈਵੇਲੂਸ਼ਨ ਦੇ ਹੇਠਾਂ ਹੈ . ਅੰਕਗਣਿਤ ਸਮੀਕਰਨ expr2 ਫਿਰ ਵਾਰ-ਵਾਰ ਮੁਲਾਂਕਣ ਕੀਤੇ ਜਾਂਦੇ ਹਨ ਜਦੋਂ ਤੱਕ ਇਹ ਜ਼ੀਰੋ ਨੂੰ ਮੁਲਾਂਕਣ ਨਹੀਂ ਕਰਦਾ. ਹਰ ਵਾਰ expr2 ਇੱਕ ਗ਼ੈਰ-ਜ਼ੀਰੋ ਮੁੱਲ ਨੂੰ ਮੁਲਾਂਕਣ ਕਰਦਾ ਹੈ, ਸੂਚੀ ਨੂੰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਅੰਕਗਣਿਤ ਐਕਸਪਰੈਸ਼ਨ ਐਕਸਪ -3 ਦਾ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇਕਰ ਕਿਸੇ ਵੀ ਸ਼ਬਦ ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਹ ਇਸ ਤਰ੍ਹਾਂ ਵਿਵਹਾਰ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਇਹ 1 ਦਾ ਮੁਲਾਂਕਣ ਕਰਦਾ ਹੈ. ਵਾਪਸੀ ਮੁੱਲ ਸੂਚੀ ਵਿੱਚ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਐਕਸਟੇਟ ਸਥਿਤੀ ਹੈ ਜੋ ਲਾਗੂ ਹੁੰਦੀ ਹੈ ਜਾਂ ਝੂਠ ਹੈ ਜੇ ਕੋਈ ਵੀ ਸਮੀਕਰਨ ਅਵੈਧ ਹੈ.

[ ਸ਼ਬਦ ਵਿਚ ] ਨਾਂ ਚੁਣੋ ; ਸੂਚੀ ; ਕੀਤਾ

ਆਈਟਮਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਤਿਆਰ ਕਰਨ ਵਿੱਚ ਹੇਠ ਲਿਖੇ ਸ਼ਬਦਾਂ ਦੀ ਸੂਚੀ ਫੈਲਾ ਦਿੱਤੀ ਗਈ ਹੈ. ਵਿਸਥਾਰਿਤ ਸ਼ਬਦਾਂ ਦਾ ਸਮੂਹ ਮਿਆਰੀ ਗਲਤੀ 'ਤੇ ਛਾਪਿਆ ਜਾਂਦਾ ਹੈ, ਹਰੇਕ ਅੰਕ ਤੋਂ ਪਹਿਲਾਂ. ਜੇ ਸ਼ਬਦ ਵਿੱਚ ਛੱਡਿਆ ਗਿਆ ਹੈ, ਤਾਂ ਸਥਿਤੀ ਸਬੰਧੀ ਪੈਰਾਮੀਟਰ ਛਾਪੇ ਗਏ ਹਨ (ਹੇਠਾਂ ਪੈਰਾਮੀਟਰ) ਪੀਐਸ 3 ਪ੍ਰੋਂਪਟ ਨੂੰ ਫਿਰ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸਟੈਂਡਰਡ ਇੰਪੁੱਟ ਤੋਂ ਇੱਕ ਲਾਈਨ ਪੜ੍ਹੀ ਜਾਂਦੀ ਹੈ. ਜੇ ਲਾਈਨ ਵਿਚ ਵਿਖਾਈ ਦੇ ਸ਼ਬਦਾਂ ਨਾਲ ਸੰਬੰਧਿਤ ਕੋਈ ਨੰਬਰ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਨਾਮ ਦੇ ਮੁੱਲ ਨੂੰ ਉਸ ਸ਼ਬਦ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇਕਰ ਲਾਈਨ ਖਾਲੀ ਹੈ, ਤਾਂ ਸ਼ਬਦ ਅਤੇ ਪਰੌਂਪਟ ਦੁਬਾਰਾ ਪ੍ਰਦਰਸ਼ਿਤ ਹੋਣਗੇ. EOF ਪੜ੍ਹਿਆ ਹੈ, ਜੇ, ਹੁਕਮ ਨੂੰ ਪੂਰਾ ਕਰਦਾ ਹੈ. ਕੋਈ ਹੋਰ ਮੁੱਲ ਪੜਿਆ ਜਾਂਦਾ ਹੈ ਤਾਂ ਕਿ ਨਾਮ ਨੂੰ ਸੁੱਜਿਆ ਜਾਏ. ਪੜ੍ਹਨ ਵਾਲੀ ਲਾਈਨ ਨੂੰ ਵੇਰੀਏਬਲ REPLY ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤਾ ਗਿਆ ਹੈ. ਹਰੇਕ ਚੋਣ ਦੇ ਬਾਅਦ ਸੂਚੀ ਨੂੰ ਅਮਲ ਵਿੱਚ ਲਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਤੱਕ ਬ੍ਰੇਕ ਕਮਾਂਡ ਨਹੀਂ ਹੋ ਜਾਂਦੀ. ਚੋਣ ਦੀ ਬੰਦਗੀ ਦੀ ਸਥਿਤੀ, ਸੂਚੀ ਵਿੱਚ ਲਾਗੂ ਕੀਤੀ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਬੰਦ ਹਾਲਤ ਹੈ, ਜਾਂ ਜੇ ਕੋਈ ਹੁਕਮ ਨਹੀਂ ਚਲਾਇਆ ਗਿਆ ਤਾਂ ਜ਼ੀਰੋ.

[[( | ਪੈਟਰਨ [ | ਪੈਟਰਨ ] ਵਿਚ ਕੇਸ ਸ਼ਬਦ

ਇੱਕ ਕੇਸ ਕਮਾਂਡ ਪਹਿਲਾਂ ਸ਼ਬਦ ਨੂੰ ਫੈਲਾਉਂਦਾ ਹੈ , ਅਤੇ ਪਾਥਨਾਂ ਦੇ ਵਿਸਥਾਰ (ਹੇਠ ਪਥਨਾਮ ਪ੍ਰਸਾਰਣ ਨੂੰ ਵੇਖੋ) ਦੇ ਸਮਾਨ ਮੇਲ ਕਰਨ ਵਾਲੇ ਨਿਯਮਾਂ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ, ਬਦਲੇ ਵਿੱਚ ਹਰੇਕ ਪੈਟਰਨ ਦੇ ਵਿਰੁੱਧ ਇਸਨੂੰ ਮੇਲ ਕਰਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ. ਜਦੋਂ ਇੱਕ ਮੇਲ ਪਾਇਆ ਜਾਂਦਾ ਹੈ, ਅਨੁਸਾਰੀ ਸੂਚੀ ਨੂੰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਪਹਿਲੇ ਮੈਚ ਤੋਂ ਬਾਅਦ, ਕੋਈ ਵੀ ਅਗਲੇ ਮੈਚ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ. ਜੇਕਰ ਕੋਈ ਪੈਟਰਨ ਮੇਲ ਨਾ ਹੋਵੇ ਤਾਂ ਨਿਕਾਸ ਸਥਿਤੀ ਸਿਫਰ ਹੈ. ਨਹੀਂ ਤਾਂ, ਇਹ ਸੂਚੀ ਵਿੱਚ ਲਾਗੂ ਕੀਤੀਆਂ ਆਖਰੀ ਕਮਾਂਡ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਹੈ.

ਜੇ ਸੂਚੀ ; ਫਿਰ ਸੂਚੀ; [ ਏਲੀਫ਼ ਸੂਚੀ ; ਫਿਰ ਸੂਚੀ ; ] ... [ ਹੋਰ ਸੂਚੀ ; ] ਫਾਈ

ਜੇ ਸੂਚੀ ਨੂੰ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ ਇਸ ਦੀ ਐਕਸਟੇਟ ਸਟੈਟਿਸ ਸਿਫਰ ਹੈ, ਫੇਰ ਸੂਚੀ ਨੂੰ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਨਹੀਂ ਤਾਂ, ਹਰ ਇੱਕ elif ਸੂਚੀ ਨੂੰ ਬਦਲੇ ਵਿੱਚ ਚਲਾਇਆ ਜਾਵੇਗਾ, ਅਤੇ ਜੇ ਇਸ ਦੀ ਬੰਦਗੀ ਸਥਿਤੀ ਸਿਫ਼ਰ ਹੈ, ਤਾਂ ਅਨੁਸਾਰੀ ਫਿਰ ਸੂਚੀ ਨੂੰ ਚਲਾਇਆ ਜਾਵੇਗਾ ਅਤੇ ਕਮਾਂਡ ਮੁਕੰਮਲ ਹੋ ਜਾਵੇਗੀ. ਨਹੀਂ ਤਾਂ, ਦੂਜੀ ਸੂਚੀ ਨੂੰ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜੇਕਰ ਮੌਜੂਦ ਹੋਵੇ. ਬਾਹਰ ਜਾਣ ਦੀ ਸਥਿਤੀ ਆਖਰੀ ਕਮਾਏ ਗਏ ਹੁਕਮ ਦੀ ਬਾਹਰਲੀ ਸਥਿਤੀ ਹੈ, ਜਾਂ ਜ਼ੀਰੋ ਜੇ ਕੋਈ ਹਾਲਤ ਸੱਚ ਨਹੀਂ ਹੈ.

ਜਦਕਿ ਸੂਚੀ ; ਸੂਚੀ ; ਕੀਤਾ

ਸੂਚੀ ਤੱਕ ; ਸੂਚੀ ; ਕੀਤਾ

ਜਦਕਿ ਕਮਾਂਡ ਲਗਾਤਾਰ ਸੂਚੀ ਵਿੱਚ ਚੱਲਦੀ ਹੈ ਜਦੋਂ ਤੱਕ ਲਿਸਟ ਵਿੱਚ ਆਖਰੀ ਕਮਾਂਡ ਜ਼ੀਰੋ ਦੀ ਬੰਦਗੀ ਦਰ ਨੂੰ ਵਾਪਸ ਕਰਦੀ ਹੈ. ਜਦ ਤੱਕ ਕਮਾਂਡ ਉਸੇ ਕਮਾਂਡ ਨਾਲ ਇਕੋ ਜਿਹੀ ਨਹੀਂ ਹੁੰਦੀ, ਸਿਵਾਏ ਕਿ ਟੈਸਟ ਨੂੰ ਨਕਾਰਿਆ ਗਿਆ ਹੈ; do ਸੂਚੀ ਨੂੰ ਉਦੋਂ ਤੱਕ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸੂਚੀ ਵਿੱਚ ਆਖਰੀ ਕਮਾਂਡ ਇੱਕ ਗ਼ੈਰ-ਜ਼ੀਰੋ ਬੰਦ ਹਾਲਤ ਨੂੰ ਵਾਪਸ ਕਰਦੀ ਹੈ. ਲੰਬਿਤ ਸਮੇਂ ਦੀ ਬੰਦਗੀ ਦੀ ਸਥਿਤੀ ਅਤੇ ਜਦੋਂ ਤੱਕ ਕਮਾਂਡਜ਼ ਆਖਰੀ do ਸੂਚੀ ਕਮਾਂਡ ਦੀ ਬਾਹਰ ਨਿਕਲਣ ਦੀ ਸਥਿਤੀ ਨਹੀਂ ਹੈ, ਜਾਂ ਕੋਈ ਵੀ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ ਤਾਂ ਜ਼ੀਰੋ.

[ ਫੰਕਸ਼ਨ ] ਨਾਮ () { ਸੂਚੀ ; }

ਇਹ ਨਾਂ ਨਾਮ ਦਾ ਇੱਕ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦਾ ਹੈ ਫੰਕਸ਼ਨ ਦਾ ਮੁੱਖ ਹਿੱਸਾ {ਅਤੇ} ਦੇ ਵਿਚਾਲੇ ਆਦੇਸ਼ਾਂ ਦੀ ਸੂਚੀ ਹੈ. ਇਹ ਸੂਚੀ ਉਦੋਂ ਹੀ ਲਾਗੂ ਹੁੰਦੀ ਹੈ ਜਦੋਂ ਨਾਮ ਨੂੰ ਸਧਾਰਨ ਕਮਾਂਡ ਦੇ ਨਾਂ ਵਜੋਂ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ. ਫੰਕਸ਼ਨ ਦੀ ਬੰਦਗੀ ਦੀ ਸਥਿਤੀ, ਸਰੀਰ ਵਿੱਚ ਚਲਾਏ ਗਏ ਆਖ਼ਰੀ ਹੁਕਮ ਦੀ ਬਾਹਰਲੀ ਸਥਿਤੀ ਹੈ. (ਹੇਠਾਂ ਕੰਮ ਦੇਖੋ.)

ਟਿੱਪਣੀਆਂ

ਇੱਕ ਗ਼ੈਰ-ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਜ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਵਿੱਚ, ਜਿਸ ਵਿੱਚ ਸ਼ਾਪਟੰਟ ਇੰਟ੍ਰਿਡਿਨ ਲਈ ਇੰਟਰਐਕਟਿਵ-ਕਮੈਂਟਸ ਔਪਸ਼ਨ ਸਮਰੱਥ ਹੈ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਟਿਨ ਕਮਮਾਂ ਵੇਖੋ), ਇੱਕ ਸ਼ਬਦ # ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ ਜੋ ਸ਼ਬਦ ਅਤੇ ਬਾਕੀ ਰਹਿੰਦੇ ਸਾਰੇ ਅੱਖਰਾਂ ਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਇੰਟਰੈਕਟਿਵ-ਕਮੈਂਟਾਂ ਦੀ ਚੋਣ ਤੋਂ ਬਿਨਾਂ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈੱਲ ਟਿੱਪਣੀਆਂ ਨੂੰ ਮਨਜ਼ੂਰ ਨਹੀਂ ਕਰਦਾ ਹੈ. ਇੰਟਰਐਕਟਿਵ-ਕਮਮੈਂਟਸ ਵਿਕਲਪ ਮੂਲ ਰੂਪ ਵਿਚ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈੱਲਾਂ ਤੇ ਚੱਲ ਰਿਹਾ ਹੈ.

ਕੋਟਿੰਗ

ਸ਼ੈਲ ਵਿਚ ਕੁੱਝ ਅੱਖਰਾਂ ਜਾਂ ਸ਼ਬਦਾਂ ਦਾ ਖਾਸ ਅਰਥ ਕੱਢਣ ਲਈ ਹਵਾਲੇ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ. ਵਿਸ਼ੇਸ਼ ਅੱਖਰ ਲਈ ਵਿਸ਼ੇਸ਼ ਇਲਾਜ ਨੂੰ ਅਯੋਗ ਕਰਨ ਲਈ, ਰਿਜ਼ਰਵਡ ਵਰਗਾਂ ਨੂੰ ਪਛਾਣੇ ਜਾਣ ਤੋਂ ਰੋਕਣ ਲਈ, ਅਤੇ ਪੈਰਾਮੀਟਰ ਦੇ ਵਿਸਥਾਰ ਨੂੰ ਰੋਕਣ ਲਈ ਹਵਾਲਾ ਦੇਣ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.

ਪਰਿਭਾਸ਼ਾ ਹੇਠ ਦਿੱਤੇ ਗਏ ਹਰੇਕ ਮੈਟਾਹਾਰਕਟਰਾਂ ਨੂੰ ਸ਼ੈਲ ਨੂੰ ਖਾਸ ਅਰਥ ਦਿੱਤਾ ਗਿਆ ਹੈ ਅਤੇ ਜੇ ਉਹ ਖੁਦ ਦੀ ਨੁਮਾਇੰਦਗੀ ਕਰਨਾ ਹੈ ਤਾਂ ਉਸਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ.

ਜਦੋਂ ਹੁਕਮ ਇਤਿਹਾਸ ਦੀ ਵਿਸਤ੍ਰਿਤ ਸੁਵਿਧਾਵਾਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ, ਇਤਿਹਾਸ ਦਾ ਵਿਸਥਾਰ ਅੱਖਰ, ਆਮ ਤੌਰ 'ਤੇ ! , ਇਤਿਹਾਸ ਦੇ ਵਿਸਥਾਰ ਨੂੰ ਰੋਕਣ ਲਈ ਇਸ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ.

ਤਿੰਨ ਹਵਾਲਾਤੀ ਵਿਧੀ ਹਨ: ਬਚਣ ਵਾਲਾ ਚਿੰਨ੍ਹ , ਸਿੰਗਲ ਕੋਟਸ, ਅਤੇ ਡਬਲ ਕੋਟਸ.

ਇੱਕ ਗੈਰ-ਹਵਾਲਾ ਬੈਕਸਲੇਸ਼ ( \ ) ਬਚਿਆ ਹੋਇਆ ਅੱਖਰ ਹੈ ਦੇ ਅਪਵਾਦ ਦੇ ਨਾਲ ਇਹ ਅਗਲੇ ਅੱਖਰ ਦੇ ਅਸਲੀ ਮੁੱਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਦਾ ਹੈ ਜੇ ਕੋਈ \ ਜੋੜਾ ਦਿਸਦਾ ਹੈ, ਅਤੇ ਬੈਕਸਲੇਸ਼ ਆਪਣੇ ਆਪ ਦਾ ਹਵਾਲਾ ਨਹੀਂ ਦਿੰਦਾ ਹੈ, ਤਾਂ \ ਨੂੰ ਇੱਕ ਲਾਈਨ ਜਾਰੀ ਰੱਖਣ ਦਾ ਮਤਲਬ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ (ਮਤਲਬ, ਇਹ ਇਨਪੁਟ ਸਟ੍ਰੀਮ ਤੋਂ ਹਟਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਪ੍ਰਭਾਵੀ ਤੌਰ ਤੇ ਨਜ਼ਰਅੰਦਾਜ਼ ਕੀਤਾ ਜਾਂਦਾ ਹੈ).

ਸਿੰਗਲ ਕੋਟਸ ਵਿੱਚ ਅੱਖਰ ਨੂੰ ਜੋੜਨ ਨਾਲ ਕੋਟਸ ਦੇ ਅੰਦਰ ਹਰੇਕ ਅੱਖਰ ਦੇ ਅਸਲ ਮੁੱਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ. ਸਿੰਗਲ ਕੋਟਸ ਇੱਕੋ ਸਿੰਗਲ ਕੋਟਸ ਦੇ ਵਿੱਚ ਨਹੀਂ ਹੋ ਸਕਦੇ, ਭਾਵੇਂ ਕਿ ਬੈਕਸਲੇਸ਼ ਤੋਂ ਬਾਅਦ ਵੀ.

ਡਬਲ ਕੋਟਸ ਵਿੱਚ ਅੱਖਰ ਨੂੰ ਜੋੜਨਾ, $ , ` , ਅਤੇ \ ' ਦੇ ਅਪਵਾਦ ਦੇ ਨਾਲ, ਸੰਦਰਭ ਦੇ ਅੰਦਰ ਸਾਰੇ ਅੱਖਰਾਂ ਦੇ ਅਸਲ ਮੁੱਲ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਦਾ ਹੈ. ਅੱਖਰ $ ਅਤੇ ` ਆਪਣੇ ਵਿਸ਼ੇਸ਼ ਅਰਥ ਨੂੰ ਡਬਲ ਕੋਟਸ ਵਿਚ ਰੱਖਦੇ ਹਨ. ਬੈਕਸਲਾਸ਼ ਇਸਦਾ ਖਾਸ ਅਰਥ ਰੱਖਦਾ ਹੈ ਜਦੋਂ ਕੇਵਲ ਹੇਠ ਦਿੱਤੇ ਅੱਖਰਾਂ ਵਿੱਚੋਂ ਇੱਕ: $ , ` , " , \ , ਜਾਂ ਇੱਕ ਡਬਲ ਹਵਾਲਾ ਬੈਕਸਲੇਸ਼ ਨਾਲ ਪਿਛਲ ਕਰਕੇ ਦੁਹਰੀ ਹਵਾਲੇ ਦੇ ਵਿੱਚ ਦਿੱਤੇ ਜਾ ਸਕਦੇ ਹਨ.

ਖਾਸ ਪੈਰਾਮੀਟਰ * ਅਤੇ @ ਦਾ ਖ਼ਾਸ ਮਤਲਬ ਹੁੰਦਾ ਹੈ ਜਦੋਂ ਡਬਲ ਕੋਟਸ ਵਿੱਚ ਹੁੰਦਾ ਹੈ (ਹੇਠਾਂ ਪੈਰਾਮੀਟਰ )

ਫਾਰਮ ਦੇ ਸ਼ਬਦ $ ' ਸਤਰ ' ਵਿਸ਼ੇਸ਼ ਤੌਰ ਤੇ ਵਰਤੇ ਜਾਂਦੇ ਹਨ ਸ਼ਬਦ ਸਟ੍ਰਿੰਗ ਤੱਕ ਫੈਲਦਾ ਹੈ, ਬੈਕਸਟਲੈਸ-ਬਚੇ ਹੋਏ ਅੱਖਰਾਂ ਦੇ ਨਾਲ ਏਐਨਐੱਸਆਈ ਸੀ ਸਟੈਂਡਰਡ ਅਨੁਸਾਰ. ਬੈਕਸਲੈਸ਼ ਏਕੇਜ਼ ਸੀਕੁਏਂਸ, ਜੇ ਮੌਜੂਦ ਹੈ, ਨੂੰ ਡੀਕੋਡ ਕੀਤਾ ਜਾਂਦਾ ਹੈ:

\ a

ਚੇਤਾਵਨੀ (ਘੰਟੀ)

\ b

ਬੈਕਸਪੇਸ

\ e

ਇੱਕ ਬਚਣਾ ਅੱਖਰ

\ f

ਫਾਰਮ ਫੀਡ

\ n

ਨਵੀਂ ਲਾਈਨ

\ r

ਕੈਰੇਜ ਰਿਟਰਨ

\ t

ਖਿਤਿਜੀ ਟੈਬ

\ v

ਲੰਬਕਾਰੀ ਟੈਬ

\\

ਬੈਕਸਲੇਸ਼

\ '

ਸਿੰਗਲ ਕੋਟੇ

\ nnn

ਅੱਠ-ਬਿੱਟ ਅੱਖਰ, ਜਿਸਦਾ ਮੁੱਲ ਆਕਟਲ ਵੈਲਯੂ nnn ਹੈ (ਇਕ ਤੋਂ ਤਿੰਨ ਅੰਕ)

\ x HH

ਅੱਠ-ਬਿੱਟ ਅੱਖਰ, ਜਿਸਦਾ ਮੁੱਲ ਹੈਕਸਾਡੈਸੀਮਲ ਮੁੱਲ HH ਹੈ (ਇੱਕ ਜਾਂ ਦੋ ਹੈਕਸ ਡਿਜਿਟ)

\ c x

ਇੱਕ ਕੰਟਰੋਲ- x ਅੱਖਰ

ਵਿਸਥਾਰਿਤ ਨਤੀਜਾ ਇੱਕਲੇ-ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ ਡਾਲਰ ਸੰਕੇਤ ਮੌਜੂਦ ਨਹੀਂ ਸੀ.

ਇੱਕ ਡਾਲਰ ਚਿੰਨ੍ਹ ( $ ) ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਡਬਲ-ਟੌਰਟੇਡ ਸਟ੍ਰਿੰਗ ਮੌਜੂਦਾ ਬੋਲੀ ਦੇ ਅਨੁਸਾਰ ਸਤਰ ਨੂੰ ਅਨੁਵਾਦ ਕਰਨ ਦਾ ਕਾਰਨ ਬਣੇਗਾ ਜੇ ਵਰਤਮਾਨ ਲੋਕੇ C ਜਾਂ POSIX ਹੈ , ਤਾਂ ਡਾਲਰ ਚਿੰਨ੍ਹ ਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ ਸਤਰ ਦਾ ਅਨੁਵਾਦ ਅਤੇ ਤਬਦੀਲ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਸ ਨੂੰ ਦੁਹਰਾ ਕੇ ਦੁਹਰਾਇਆ ਗਿਆ ਹੈ.

PARAMETERS

ਇੱਕ ਪੈਰਾਮੀਟਰ ਉਹ ਇਕਾਈ ਹੈ ਜੋ ਕੀਮਤਾਂ ਨੂੰ ਸਟੋਰ ਕਰਦੀ ਹੈ. ਇਹ ਵਿਸ਼ੇਸ਼ ਪੈਰਾਮੀਟਰਾਂ ਦੇ ਹੇਠ ਸੂਚੀਬੱਧ ਵਿਸ਼ੇਸ਼ ਨਾਂ , ਇੱਕ ਨੰਬਰ, ਜਾਂ ਕੋਈ ਵਿਸ਼ੇਸ਼ ਅੱਖਰ ਹੋ ਸਕਦਾ ਹੈ. ਸ਼ੈੱਲ ਦੇ ਉਦੇਸ਼ਾਂ ਲਈ, ਇੱਕ ਵੇਰੀਏਬਲ ਇਕ ਪੈਰਾਮੀਟਰ ਹੈ ਜੋ ਇਕ ਨਾਮ ਦੁਆਰਾ ਦਰਸਾਇਆ ਗਿਆ ਹੈ. ਇੱਕ ਵੇਰੀਏਬਲ ਵਿੱਚ ਵੈਲਯੂ ਅਤੇ ਜ਼ੀਰੋ ਜਾਂ ਵੱਧ ਗੁਣ ਹਨ . ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਡਿਲੀਵਰ ਬਿਲਟਿਨ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਨਾਲ ਸੌਂਪਿਆ ਗਿਆ ਹੈ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿੰਟਨ ਕਮਾਂਡੇਜ਼ ਵਿੱਚ ਘੋਸ਼ਣਾ ਵੇਖੋ).

ਇੱਕ ਪੈਰਾਮੀਟਰ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜੇ ਇਸ ਨੂੰ ਇੱਕ ਮੁੱਲ ਦਿੱਤਾ ਗਿਆ ਹੈ Null ਸਤਰ ਇੱਕ ਵੈਧ ਮਾਨ ਹੈ. ਇੱਕ ਵਾਰ ਇੱਕ ਵੇਰੀਏਬਲ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਇਹ ਅਨਸੈੱਟ ਬਿਲਡਿਨ ਕਮਾਂਡ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿੰਟਨ ਕਮਮਾਂ ਵੇਖੋ) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਣਸੁਲਿਤ ਹੋ ਸਕਦਾ ਹੈ.

ਇੱਕ ਵੇਰੀਏਬਲ ਨੂੰ ਫਾਰਮ ਦੇ ਇੱਕ ਬਿਆਨ ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ

name = [ value ]

ਜੇ ਮੁੱਲ ਨਹੀਂ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਵੇਰੀਏਬਲ ਨੂੰ null ਸਤਰ ਦਿੱਤਾ ਗਿਆ ਹੈ. ਸਾਰੇ ਮੁੱਲ ਟਿਲਡੇ ਦੀ ਵਿਸਥਾਰ, ਪੈਰਾਮੀਟਰ ਅਤੇ ਪਰਿਵਰਤਨਸ਼ੀਲ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ, ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ, ਅਤੇ ਹਵਾਲਾ ਕੱਢਣਾ (ਹੇਠਾਂ ਦਾ ਪ੍ਰਗਟਾਵਾ ਵੇਖੋ) ਜੇ ਵੇਰੀਏਬਲ ਦਾ ਪੂਰਨ ਅੰਕ ਗੁਣ ਹੈ, ਤਾਂ ਮੁੱਲ ਅੰਕ ਗਣਿਤ ਦੇ ਵਿਸਥਾਰ ਦੇ ਅਧੀਨ ਹੈ ਭਾਵੇਂ ਕਿ $ ((...)) ਵਿਸਥਾਰ ਦਾ ਇਸਤੇਮਾਲ ਨਹੀਂ ਕੀਤਾ ਗਿਆ (ਹੇਠਾਂ ਅੰਕਗਣਿਤਕ ਪਸਾਰ ਵੇਖੋ). ਸਪੈਸ਼ਲ ਪੈਰਾਮੀਟਰਾਂ ਦੇ ਹੇਠ "$ @" ਦੇ ਹੇਠਾਂ ਵਰਣਿਤ ਦੇ ਅਪਵਾਦ ਦੇ ਨਾਲ, ਵਰਡ ਸਪਿਟਿੰਗ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ. ਪਾਥਨਾਮ ਪਸਾਰ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ. ਅਲਾਟਮੈਂਟ ਸਟੇਟਮੈਂਟਾਂ ਘੋਸ਼ਣਾ , ਟਾਈਪਸੈਟ , ਨਿਰਯਾਤ , ਰੀਡੌਨਲੀ , ਅਤੇ ਲੋਕਲ ਬਿਲਟਿਨ ਕਮਾਂਡਾਂ ਦੇ ਆਰਗੂਮੈਂਟਾਂ ਦੇ ਤੌਰ ਤੇ ਵੀ ਪ੍ਰਗਟ ਹੋ ਸਕਦੀਆਂ ਹਨ.

ਸਥਿਤੀ ਪੈਰਾਮੀਟਰ

ਇੱਕ ਸਥਿਰ ਪੈਰਾਮੀਟਰ ਇੱਕ ਪੈਰਾਮੀਟਰ ਹੈ ਜੋ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਅੰਕਾਂ ਦੁਆਰਾ ਦਰਸਾਇਆ ਗਿਆ ਹੈ, ਜੋ ਕਿ ਸਿੰਗਲ ਡਿਜੇਸ ਤੋਂ ਇਲਾਵਾ ਹੈ. ਸਥਿਤੀ ਦੇ ਮੁੱਲਾਂ ਨੂੰ ਜਦੋਂ ਸ਼ੈੱਲ ਦੇ ਆਰਗੂਮੈਂਟਾਂ ਤੋਂ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਸੈੱਟ ਬਿਲਟਿਨ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇਹਨਾਂ ਨੂੰ ਦੁਬਾਰਾ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਨਿਰਧਾਰਤ ਨਿਯਮਾਂ ਨਾਲ ਸਥਿਤੀ ਦੇ ਮਾਪਦੰਡ ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤੇ ਜਾ ਸਕਦੇ. ਸਥਿਰ ਪੈਰਾਮੀਟਰ ਅਸਥਾਈ ਤੌਰ ਤੇ ਉਦੋਂ ਬਦਲੇ ਜਾਂਦੇ ਹਨ ਜਦੋਂ ਇੱਕ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਲਾਗੂ ਹੁੰਦਾ ਹੈ (ਹੇਠ ਦਿੱਤੇ ਕਾਰਜ ਦੇਖੋ).

ਜਦੋਂ ਇੱਕ ਅਸਾਧਾਰਣ ਪੈਰਾਮੀਟਰ ਜਿਸ ਵਿੱਚ ਇੱਕ ਸਿੰਗਲ ਡਿਜਟ ਤੋਂ ਵੱਧ ਹੋਵੇ, ਤਾਂ ਇਸ ਨੂੰ ਬ੍ਰੇਸਿਜ਼ ਵਿੱਚ ਨੱਥੀ ਕੀਤਾ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ (ਹੇਠਾਂ ਤਰਤੀਬ ਵੇਖੋ)

ਖਾਸ ਪੈਰਾਮੀਟਰ

ਸ਼ੈੱਲ ਵਿਸ਼ੇਸ਼ਤਾ ਨਾਲ ਕਈ ਮਾਪਦੰਡਾਂ ਦਾ ਧਿਆਨ ਰੱਖਦਾ ਹੈ ਇਹ ਪੈਰਾਮੀਟਰ ਸਿਰਫ਼ ਹਵਾਲਾ ਦਿੱਤੇ ਜਾ ਸਕਦੇ ਹਨ; ਉਹਨਾਂ ਨੂੰ ਸੌਂਪਣ ਦੀ ਆਗਿਆ ਨਹੀਂ ਹੈ.

*

ਇਕ ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀ ਸਥਿਤੀਕ ਮਾਪਦੰਡਾਂ ਤੱਕ ਫੈਲਾਓ. ਜਦੋਂ ਵਿਸਥਾਰ ਡਬਲ ਕੋਟਸ ਦੇ ਅੰਦਰ ਹੁੰਦਾ ਹੈ, ਇਹ ਇਕ ਸ਼ਬਦ ਨੂੰ ਫੈਲਾ ਦਿੰਦਾ ਹੈ ਜਿਸਦਾ IFS ਵਿਸ਼ੇਸ਼ ਵੇਰੀਏਬਲ ਦੇ ਪਹਿਲੇ ਅੱਖਰ ਦੁਆਰਾ ਵੱਖ ਕੀਤੇ ਹਰੇਕ ਪੈਰਾਮੀਟਰ ਦੇ ਮੁੱਲ ਨਾਲ ਹੁੰਦਾ ਹੈ. ਭਾਵ, " $ * " " $ 1 c $ 2 c ... " ਦੇ ਬਰਾਬਰ ਹੈ, ਜਿੱਥੇ ਕਿ ਆਈ IFS ਵੇਰੀਏਬਲ ਦੇ ਮੁੱਲ ਦਾ ਪਹਿਲਾ ਅੱਖਰ ਹੈ. ਜੇਕਰ ਆਈਐਫਐਸ ਅਸੈੱਸ ਨਹੀਂ ਹੈ, ਪੈਰਾਮੀਟਰ ਨੂੰ ਸਪੇਸ ਨਾਲ ਵੱਖ ਕੀਤਾ ਹੈ. ਜੇ ਆਈ ਐੱਫ ਐੱਲ ਅੱਲ੍ਹਾ ਹੈ, ਤਾਂ ਪੈਰਾਮੀਟਰ ਬਿਨਾਂ ਕਿਸੇ ਦਖਲ ਦੇ ਅਲੱਗ ਅਲੱਗ ਵਰਤੇ

@

ਇਕ ਤੋਂ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੀ ਸਥਿਤੀਕ ਮਾਪਦੰਡਾਂ ਤੱਕ ਫੈਲਾਓ. ਜਦੋਂ ਵਿਸਤਾਰ ਡਬਲ ਕੋਟਸ ਦੇ ਅੰਦਰ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਹਰੇਕ ਪੈਰਾਮੀਟਰ ਇਕ ਵੱਖਰੇ ਸ਼ਬਦ ਨੂੰ ਫੈਲਾਉਂਦਾ ਹੈ. ਭਾਵ, " $ @ " " $ 1 " " $ 2 " ਦੇ ਬਰਾਬਰ ਹੈ ... ਜਦੋਂ ਕੋਈ ਸਥਿਰ ਪੈਰਾਮੀਟਰ ਨਹੀਂ ਹੁੰਦੇ, ਤਾਂ " $ @ " ਅਤੇ $ @ ਕੁਝ ਵੀ ਨਹੀਂ ਵਧਦਾ (ਯਾਨੀ, ਉਹਨਾਂ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ).

#

ਦਸ਼ਮਲਵ ਵਿੱਚ ਸਥਿਰ ਪੈਰਾਮੀਟਰਾਂ ਦੀ ਗਿਣਤੀ ਨੂੰ ਵਧਾਓ

?

ਸਭ ਤੋਂ ਹਾਲੀਆ ਐਕੁਆਇਡ ਫਾਰਗਰਾਊਂਡ ਪਾਈਪਲਾਈਨ ਦੀ ਸਥਿਤੀ ਨੂੰ ਵਧਾਓ

-

ਮੌਜੂਦਾ ਚੋਣ ਝੰਡੇ ਤੱਕ ਵਧਾਓ ਜਿਵੇਂ ਕਿ ਮੰਗੇ ਜਾਣ ਤੇ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਸੈਟ ਬਿਲਟਿਨ ਕਮਾਂਡ ਦੁਆਰਾ, ਜਾਂ ਸ਼ੈੱਲ ਦੁਆਰਾ ਨਿਰਧਾਰਿਤ ਕੀਤੇ ਗਏ (ਜਿਵੇਂ -i ਚੋਣ).

$

ਸ਼ੈੱਲ ਦੀ ਪ੍ਰਕਿਰਿਆ ID ਨੂੰ ਵਧਾਓ ਇੱਕ () subshell ਵਿੱਚ, ਇਹ ਵਰਤਮਾਨ ਸ਼ੈਲ ਦੀ ਪ੍ਰਕਿਰਿਆ ID ਨੂੰ ਵਧਾਉਂਦਾ ਹੈ, ਨਾ ਕਿ ਸਬਸਹੇਲ.

!

ਸਭ ਤੋਂ ਹਾਲ ਹੀ ਚੱਲੇ ਬੈਕਗਰਾਊਂਡ (ਅਸਿੰਕਰੋਨਸ) ਕਮਾਂਡ ਦੀ ਪ੍ਰਕਿਰਿਆ ID ਨੂੰ ਵਧਾਓ

0

ਸ਼ੈੱਲ ਜਾਂ ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਦੇ ਨਾਂ ਨੂੰ ਫੈਲਾਓ ਇਹ ਸ਼ੈੱਲ ਸ਼ੁਰੂਆਤ ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜੇ ਕਮਾਡਾਂ ਦੀ ਫਾਈਲ ਨਾਲ ਬਸ਼ ਨੂੰ ਸ਼ਾਮਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, $ 0 ਉਸ ਫਾਈਲ ਦੇ ਨਾਮ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜੇ bash -c ਚੋਣ ਨਾਲ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ $ 0 ਨੂੰ ਪਹਿਲੀ ਆਰਗੂਮੈਂਟ ਦੇ ਤੌਰ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜੇ ਇੱਕ ਮੌਜੂਦ ਹੋਵੇ. ਨਹੀਂ ਤਾਂ, ਇਸ ਨੂੰ ਬਸ਼ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਫਾਇਲ ਨਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ ਆਰਗੂਮੈਂਟ ਜ਼ੀਰੋ ਦੁਆਰਾ ਦਿੱਤਾ ਗਿਆ ਹੈ.

_

ਸ਼ੈੱਲ ਸ਼ੁਰੂਆਤ ਤੇ, ਸ਼ੈਲ ਜਾਂ ਸ਼ੈਲ ਸਕ੍ਰਿਪਟ ਦਾ ਪੂਰਾ ਫਾਇਲ ਨਾਂ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜੋ ਕਿ ਆਰਗੂਮੈਂਟ ਸੂਚੀ ਵਿੱਚ ਪਾਸ ਕੀਤੇ ਵਾਂਗ ਚੱਲ ਰਿਹਾ ਹੈ. ਬਾਅਦ ਵਿੱਚ, ਵਿਸਥਾਰ ਦੇ ਬਾਅਦ, ਪਿਛਲੇ ਕਮਾਂਡ ਨੂੰ ਆਖਰੀ ਦਲੀਲ ਵਿੱਚ ਫੈਲਾਉਂਦਾ ਹੈ. ਉਸ ਕਮਾਂਡ ਤੇ ਨਿਰਯਾਤ ਕੀਤੇ ਗਏ ਹਰੇਕ ਹੁਕਮ ਦੇ ਪੂਰੇ ਫਾਈਲ ਨਾਮ ਤੇ ਸਥਾਪਤ ਕੀਤੇ ਗਏ ਹਨ. ਪੱਤਰ ਦੀ ਜਾਂਚ ਕਰਦੇ ਸਮੇਂ, ਇਹ ਪੈਰਾਮੀਟਰ ਇਸ ਸਮੇਂ ਦਰਜ ਕੀਤੀ ਗਈ ਮੇਲ ਫਾਈਲ ਦਾ ਨਾਮ ਰੱਖਦਾ ਹੈ.

ਸ਼ੈਲ ਵੇਰੀਬਲ

ਹੇਠ ਦਿੱਤੇ ਵੇਰੀਏਬਲ ਸ਼ੈਲ ਦੁਆਰਾ ਸੈੱਟ ਕੀਤੇ ਗਏ ਹਨ:

ਬਾਸ਼

Bash ਦੇ ਇਸ ਮੌਕੇ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਪੂਰਾ ਫਾਈਲ ਨਾਮ ਦਾ ਵਿਸਤਾਰ ਕਰੋ

BASH_VERSINFO

ਇੱਕ ਪੜਣਯੋਗ ਐਰੇ ਵੇਰੀਏਬਲ ਜਿਹਨਾਂ ਦੇ ਮੈਂਬਰਸ ਦੇ ਵਰਜਨ ਨੂੰ bash ਦੇ ਇਸ ਮੌਕੇ ਲਈ ਰੱਖੇ ਹੋਏ ਹਨ. ਐਰੇ ਮੈਂਬਰਾਂ ਨੂੰ ਦਿੱਤੇ ਮੁੱਲ ਹੇਠ ਲਿਖੇ ਅਨੁਸਾਰ ਹਨ:

BASH_VERSINFO [ 0]

ਮੁੱਖ ਸੰਸਕਰਣ ਨੰਬਰ ( ਰੀਲੀਜ਼ ).

BASH_VERSINFO [ 1]

ਛੋਟਾ ਵਰਜਨ ਨੰਬਰ ( ਸੰਸਕਰਣ )

BASH_VERSINFO [ 2]

ਪੈਚ ਦਾ ਪੱਧਰ.

BASH_VERSINFO [ 3]

ਬਿਲਡ ਵਰਜਨ

BASH_VERSINFO [ 4]

ਰੀਲਿਜ਼ ਦੀ ਸਥਿਤੀ (ਜਿਵੇਂ ਕਿ ਬੀਟਾ 1 ).

BASH_VERSINFO [ 5]

MACTTYPE ਦਾ ਮੁੱਲ

BASH_VERSION

Bash ਦੇ ਇਸ ਮੌਕੇ ਦੇ ਵਰਜਨ ਦਾ ਵਰਣਨ ਕਰਨ ਵਾਲੀ ਸਤਰ ਨੂੰ ਵਿਸਤਾਰ ਕਰੋ.

COMP_CWORD

COMP_LINE

ਮੌਜੂਦਾ ਕਮਾਂਡ ਲਾਈਨ. ਇਹ ਵੇਰੀਏਬਲ ਕੇਵਲ ਸ਼ੈਲ ਫੰਕਸ਼ਨ ਅਤੇ ਪ੍ਰੋਗ੍ਰਾਮਯੋਗ ਪੂਰਤੀ ਸਹੂਲਤਾਂ ਦੁਆਰਾ ਲਾਗੂ ਬਾਹਰੀ ਕਮਾਂਡਾਂ ਵਿੱਚ ਉਪਲਬਧ ਹੈ (ਹੇਠਾਂ ਪ੍ਰੋਗਰਾਮਮੇਬਲ ਪੂਰਤੀ ਵੇਖੋ).

COMP_POINT

COMP_WORDS

ਮੌਜੂਦਾ ਕਮਾਂਡ ਲਾਈਨ ਵਿਚਲੇ ਵੱਖਰੇ ਸ਼ਬਦਾਂ ਦੀ ਇਕ ਐਰੇ ਵੇਰੀਏਬਲ (ਹੇਠਾਂ ਏਰੀਆ ਵੇਖੋ). ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਪ੍ਰੋਗਰਾਮੇਬਲ ਪੂਰਤੀ ਸੁਵਿਧਾਵਾਂ ਦੁਆਰਾ ਲਾਗੂ ਕੀਤੇ ਸ਼ੈਲ ਫੰਕਸ਼ਨਾਂ ਵਿੱਚ ਉਪਲਬਧ ਹੈ (ਹੇਠਾਂ ਪ੍ਰੋਗਰਾਮਮੇਬਲ ਪੂਰਤੀ ਵੇਖੋ).

ਡਿਸ਼ਟਾਕ

ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ (ਹੇਠਾਂ ਏਰੀਆ ਵੇਖੋ) ਜਿਸ ਵਿੱਚ ਡਾਇਰੈਕਟਰੀ ਸਟੈਕ ਦੀ ਵਰਤਮਾਨ ਸਮੱਗਰੀ ਸ਼ਾਮਿਲ ਹੈ. ਡਾਇਰੈਕਟਰੀਆਂ ਉਹ ਕ੍ਰਮ ਵਿੱਚ ਸਟੈਕ ਵਿੱਚ ਵਿਖਾਈ ਦਿੰਦੀਆਂ ਹਨ ਜੋ ਉਹ ਡਾਇਸ ਬਿਲਟਿਨ ਦੁਆਰਾ ਪ੍ਰਦਰਸ਼ਿਤ ਹੁੰਦੀਆਂ ਹਨ. ਇਸ ਐਰੇ ਵੇਰੀਬਲ ਦੇ ਮੈਂਬਰਾਂ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨਾ ਪਹਿਲਾਂ ਹੀ ਸਟੈਕ ਵਿੱਚ ਡਾਇਰੈਕਟਰੀਆਂ ਨੂੰ ਸੰਸ਼ੋਧਿਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਪਰ ਧੱਕਣ ਅਤੇ ਪੋਪਡ ਬਿਲਡਿੰਸ ਡਾਇਰੈਕਟਰੀਆਂ ਨੂੰ ਜੋੜਨ ਅਤੇ ਹਟਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ. ਇਸ ਵੇਰੀਏਬਲ ਵਿਚ ਨਿਯੁਕਤੀ ਮੌਜੂਦਾ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਨਹੀਂ ਬਦਲੇਗੀ. ਜੇ DIRSTACK ਅਨਸੈਟ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਗੁਆ ਲੈਂਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ

ਯੂ.ਆਈ.ਡੀ.

ਮੌਜੂਦਾ ਉਪਭੋਗਤਾ ਦੇ ਪ੍ਰਭਾਵੀ ਉਪਭੋਗਤਾ ID ਨੂੰ ਸ਼ੈਲ ਸਟਾਰਟਅਪ ਤੇ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ. ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਪੜਨ ਲਈ ਹੈ

FUNCNAME

ਮੌਜੂਦਾ-ਚੱਲਣ ਵਾਲਾ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਦਾ ਨਾਮ. ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਉਦੋਂ ਮੌਜੂਦ ਹੈ ਜਦੋਂ ਇੱਕ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਲਾਗੂ ਹੁੰਦਾ ਹੈ. FUNCNAME ਨੂੰ ਨਿਯੁਕਤੀਆਂ ਦਾ ਪ੍ਰਭਾਵ ਨਹੀਂ ਹੁੰਦਾ ਅਤੇ ਕੋਈ ਤਰੁੱਟੀ ਸਥਿਤੀ ਵਾਪਸ ਨਹੀਂ ਕਰਦੇ. ਜੇਕਰ FUNCNAME ਅਨਸੈਟ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਗੁਆ ਦਿੰਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

GROUPS

ਇਕ ਐਰੇ ਵੇਰੀਏਬਲ ਜੋ ਸਮੂਹਾਂ ਦੀ ਸੂਚੀ ਰੱਖਦਾ ਹੈ ਜਿਸ ਦੀ ਮੌਜੂਦਾ ਯੂਜ਼ਰ ਮੈਂਬਰ ਹੈ. GROUPS ਦੇ ਨਿਯੁਕਤੀਆਂ ਦਾ ਕੋਈ ਪ੍ਰਭਾਵ ਨਹੀਂ ਹੁੰਦਾ ਅਤੇ ਕੋਈ ਤਰੁੱਟੀ ਸਥਿਤੀ ਵਾਪਸ ਨਹੀਂ ਕਰਦੇ. ਜੇਕਰ GROUPS ਅਣਸੁਲਝੀ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ਤਾ ਗੁਆ ਲੈਂਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ.

HISTCMD

ਮੌਜੂਦਾ ਸੰਧੀ ਦਾ ਇਤਿਹਾਸ ਨੰਬਰ, ਜਾਂ ਇਤਿਹਾਸ ਸੂਚੀ ਵਿੱਚ ਸੂਚਕਾਂਕ. ਜੇਕਰ HISTCMD ਅਣਸੋਧੀ ਹੈ, ਤਾਂ ਇਸਦੀ ਵਿਸ਼ੇਸ਼ਤਾ ਖਤਮ ਹੋ ਜਾਂਦੀ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ.

HOSTNAME

ਆਟੋਮੈਟਿਕ ਵਰਤਮਾਨ ਮੇਜ਼ਬਾਨ ਦੇ ਨਾਮ ਤੇ ਸੈਟ ਕੀਤਾ

HOSTTYPE

ਆਟੋਮੈਟਿਕ ਇੱਕ ਸਤਰ ਤੇ ਸੈਟ ਕਰੋ ਜੋ ਕਿ ਉਸ ਮਸ਼ੀਨ ਦੀ ਕਿਸਮ ਨੂੰ ਵਿਲੱਖਣ ਢੰਗ ਨਾਲ ਦਰਸਾਉਦਾ ਹੈ ਜਿਸ ਉੱਤੇ ਕਿਸ਼ਤੀ ਚੱਲ ਰਹੀ ਹੈ. ਮੂਲ ਸਿਸਟਮ-ਨਿਰਭਰ ਹੈ

LINENO

ਹਰ ਵਾਰ ਜਦੋਂ ਇਹ ਪੈਰਾਮੀਟਰ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, ਸ਼ੈੱਲ ਇਕ ਦਸ਼ਮਲਵ ਅੰਕ ਨੂੰ ਬਦਲਦਾ ਹੈ ਜੋ ਸਕ੍ਰਿਪਟ ਜਾਂ ਫੰਕਸ਼ਨ ਦੇ ਅੰਦਰ ਮੌਜੂਦਾ ਕ੍ਰਮਬੱਧ ਲਾਈਨ ਨੰਬਰ (1 ਨਾਲ ਸ਼ੁਰੂ) ਨੂੰ ਦਰਸਾਉਂਦੀ ਹੈ. ਜਦੋਂ ਕਿਸੇ ਸਕਰਿਪਟ ਜਾਂ ਫੰਕਸ਼ਨ ਵਿੱਚ ਨਹੀਂ ਹੁੰਦੇ, ਤਾਂ ਇਸ ਨੂੰ ਬਦਲਣ ਵਾਲੇ ਮੁੱਲ ਨੂੰ ਅਰਥਪੂਰਣ ਸਮਝਣ ਦੀ ਗਾਰੰਟੀ ਨਹੀਂ ਦਿੱਤੀ ਜਾਂਦੀ. ਜੇਕਰ ਲੀਨਕੋ ਅਨਸੈਟ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ਤਾ ਗੁਆ ਲੈਂਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ

MACTTYPE

ਆਟੋਮੈਟਿਕ ਇੱਕ ਸਤਰ ਤੇ ਸੈਟ ਕਰੋ ਜੋ ਕਿ ਸਿਸਟਮ ਕਿਸਮ ਬਾਰੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਵਰਣਨ ਕਰਦਾ ਹੈ ਜਿਸ ਤੇ bash ਸਟੈਂਡਰਡ GNU cpu-company-system ਫਾਰਮੈਟ ਵਿੱਚ ਲਾਗੂ ਹੁੰਦਾ ਹੈ. ਮੂਲ ਸਿਸਟਮ-ਨਿਰਭਰ ਹੈ

ਓਲੈਡਪੀਡਬਲਯੂਡ

Cd ਕਮਾਂਡ ਦੁਆਰਾ ਸੈੱਟ ਕੀਤੇ ਪਿਛਲੀ ਵਰਕਿੰਗ ਡਾਇਰੈਕਟਰੀ.

OPTARG

Getopts builtin ਕਮਾਂਡ ਦੁਆਰਾ ਸੰਚਾਲਿਤ ਆਖਰੀ ਚੋਣ ਆਰਗੂਮੈਂਟ ਦਾ ਮੁੱਲ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿੰਟਨ ਕਮਮਾਂ ਦੇਖੋ)

OPTIND

Getopts builtin ਕਮਾਂਡ ਦੁਆਰਾ ਅਗਿਆਤ ਆਰਗੂਮੈਂਟ ਦੇ ਇੰਡੈਕਸ ਨੂੰ ਪ੍ਰੋਸੈਸ ਕਰਨਾ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿਨ ਕਮਾਂਡੇ ਦੇਖੋ)

OSTYPE

ਆਟੋਮੈਟਿਕ ਇੱਕ ਸਤਰ ਤੇ ਸੈਟ ਕਰੋ ਜੋ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਦਾ ਵਰਣਨ ਕਰਦਾ ਹੈ ਜਿਸ ਤੇ bash ਚੱਲ ਰਿਹਾ ਹੈ. ਮੂਲ ਸਿਸਟਮ-ਨਿਰਭਰ ਹੈ

ਪੌਪਸਟੇਟਸ

ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ (ਹੇਠਾਂ ਏਰੀਆ ਵੇਖੋ) ਜਿਸ ਵਿੱਚ ਸਭ ਤੋਂ ਹਾਲ ਹੀ-ਲਾਗੂ ਕੀਤੀਆਂ ਫੋਰਗਰਾਊਂਡ ਪਾਈਪਲਾਈਨ (ਜਿਸ ਵਿੱਚ ਕੇਵਲ ਇੱਕ ਕਮਾਂਡ ਹੋ ਸਕਦੀ ਹੈ) ਵਿੱਚ ਪ੍ਰਕਿਰਿਆਵਾਂ ਤੋਂ ਨਿਕਾਸ ਸਥਿਤੀ ਮੁੱਲ ਦੀ ਸੂਚੀ ਹੈ.

PPID

ਸ਼ੈੱਲ ਦੇ ਮਾਪੇ ਦੀ ਪ੍ਰਕਿਰਿਆ ID. ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਪੜਨ ਲਈ ਹੈ

PWD

Cd ਕਮਾਂਡ ਦੁਆਰਾ ਸੈੱਟ ਕੀਤੇ ਮੌਜੂਦਾ ਕਾਰਜਕਾਰੀ ਡਾਇਰੈਕਟਰੀ.

ਰੈਂਡਮ

ਹਰ ਵਾਰ ਜਦੋਂ ਇਹ ਪੈਰਾਮੀਟਰ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ, 0 ਅਤੇ 32767 ਦੇ ਵਿਚਕਾਰ ਇੱਕ ਬੇਤਰਤੀਬ ਪੂਰਨ ਅੰਕ ਬਣ ਜਾਂਦਾ ਹੈ. ਰੈਂਡੋਮ ਲਈ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰਕੇ ਬੇਤਰਤੀਬ ਨੰਬਰਾਂ ਦੀ ਕ੍ਰਮ ਨੂੰ ਅਰੰਭ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਜੇ ਰੈਡੋਮ ਨੂੰ ਅਨਸੈਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ਤਾ ਗੁਆ ਲੈਂਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ.

ਉੱਤਰ ਦਿਓ

ਜਦੋਂ ਕੋਈ ਆਰਗੂਮਿੰਟ ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ ਤਾਂ ਪੜ੍ਹਨ ਵਾਲੇ ਅੰਤ ਤੋਂ ਪੜ੍ਹੇ ਗਏ ਇਨਪੁਟ ਦੀ ਲਾਈਨ ਤੇ ਸੈਟ ਕਰੋ.

SECONDS

ਹਰ ਵਾਰ ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਸ਼ੈਲ ਮੰਗੇ ਜਾਣ ਤੋਂ ਬਾਅਦ ਦੇ ਸਕਿੰਟਾਂ ਦੀ ਗਿਣਤੀ ਜੇ ਇੱਕ ਮੁੱਲ SECONDS ਨੂੰ ਨਿਰਧਾਰਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਅਸਾਇਨਮੈਂਟ ਤੋਂ ਲੈ ਕੇ ਵੈਲਿਡ ਵੈਲਯੂ ਦੇ ਬਾਅਦ ਆਉਣ ਵਾਲੇ ਹਵਾਲਿਆਂ ਤੇ ਦਿੱਤਾ ਗਿਆ ਮੁੱਲ ਸਕਿੰਟਾਂ ਦੀ ਗਿਣਤੀ ਹੈ. ਜੇ SECONDS ਅਨਸੈਟ ਹੈ, ਤਾਂ ਇਹ ਆਪਣੀ ਵਿਸ਼ੇਸ਼ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ ਗੁਆ ਦਿੰਦਾ ਹੈ, ਭਾਵੇਂ ਇਹ ਬਾਅਦ ਵਿੱਚ ਰੀਸੈਟ ਹੋਵੇ

ਸ਼ੈਲਪਟਸ

ਸਮਰੱਥ ਸ਼ੈਲ ਵਿਕਲਪਾਂ ਦੀ ਇੱਕ ਕੌਲਨ-ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ. ਸੂਚੀ ਵਿੱਚ ਹਰ ਸ਼ਬਦ, -o ਚੋਣ ਨੂੰ ਸੈਟ ਬਿਲਟਿਨ ਕਮਾਂਡ ਲਈ ਸਹੀ ਆਰਗੂਮੈਂਟ ਹੈ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿਨ ਕਮਮਾਂ ਵੇਖੋ). ਸ਼ੈਲਪੈਟਸ ਵਿਚ ਦਿਖਾਈ ਦੇਣ ਵਾਲੇ ਵਿਕਲਪ ਉਹ ਹਨ ਜੋ ਸੈੱਟ-ਓ ਦੁਆਰਾ ਰਿਪੋਰਟ ਕੀਤੇ ਗਏ ਹਨ ਜੇ ਇਹ ਵੇਰੀਏਬਲ ਵਾਤਾਵਰਣ ਵਿੱਚ ਹੈ ਜਦੋਂ bash ਚਾਲੂ ਹੁੰਦੀ ਹੈ, ਸੂਚੀ ਵਿੱਚ ਹਰੇਕ ਸ਼ੈੱਲ ਚੋਣ ਕਿਸੇ ਵੀ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ ਸਮਰੱਥ ਹੋਵੇਗੀ. ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਪੜਨ ਲਈ ਹੈ

SHLVL

ਹਰ ਵਾਰ ਇੱਕ ਵਾਰ ਵਧਾਇਆ ਜਾਂਦਾ ਹੈ ਤਾਂ ਕਿ ਸ਼ੁਰੂਆਤ ਦੀ ਸ਼ੁਰੂਆਤ ਹੋ ਜਾਂਦੀ ਹੈ.

UID

ਮੌਜੂਦਾ ਉਪਭੋਗਤਾ ਦਾ ਉਪਭੋਗਤਾ ID, ਸ਼ੈਲ ਸਟਾਰਟਅਪ ਤੇ ਸ਼ੁਰੂ ਕੀਤਾ ਗਿਆ ਹੈ. ਇਹ ਵੇਰੀਏਬਲ ਸਿਰਫ ਪੜਨ ਲਈ ਹੈ

ਹੇਠਲੇ ਵੇਰੀਏਬਲਾਂ ਨੂੰ ਸ਼ੈਲ ਦੁਆਰਾ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਕੁਝ ਮਾਮਲਿਆਂ ਵਿੱਚ, bash ਇੱਕ ਵੇਰੀਏਬਲ ਲਈ ਇੱਕ ਡਿਫਾਲਟ ਮੁੱਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ; ਇਹ ਕੇਸ ਹੇਠਾਂ ਨੋਟਿਸ ਕੀਤੇ ਗਏ ਹਨ.

BASH_ENV

ਜੇ ਇਹ ਪੈਰਾਮੀਟਰ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ bash ਇੱਕ ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਚਲਾ ਰਿਹਾ ਹੈ, ਇਸ ਦਾ ਮੁੱਲ ਸ਼ੈੱਲ ਚਾਲੂ ਕਰਨ ਲਈ ਕਮਾਂਡ ਵਾਲੇ ਇੱਕ ਫਾਇਲ ਨਾਂ ਦੇ ਤੌਰ ਤੇ ਦਰਸਾਇਆ ਗਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ ~ / .bashrc . BASH_ENV ਦਾ ਮੁੱਲ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਬਦਲ, ਅਤੇ ਫਾਈਲ ਨਾਮ ਦੇ ਤੌਰ ਤੇ ਇੰਟਰਪ੍ਰੇਟ ਕੀਤੇ ਜਾਣ ਤੋਂ ਪਹਿਲਾਂ ਅੰਕ ਗਣਿਤ ਦੇ ਵਿਸਥਾਰ ਦੇ ਅਧੀਨ ਹੈ. PATH ਦਾ ਨਤੀਜਾ ਫਾਈਲ ਨਾਂ ਲਈ ਖੋਜ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ.

CDPATH

Cd ਕਮਾਂਡ ਲਈ ਖੋਜ ਮਾਰਗ. ਇਹ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਇੱਕ ਕੌਲਨ ਨਾਲ ਵੱਖ ਕੀਤੀ ਲਿਸਟ ਹੈ, ਜਿਸ ਵਿੱਚ ਸ਼ੈੱਲ cd ਕਮਾਂਡ ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਮੰਜ਼ਿਲ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ. ਇੱਕ ਨਮੂਨਾ ਮੁੱਲ ".: ~: / Usr" ਹੈ.

COLUMNS

ਚੋਣ ਸੂਚੀਆਂ ਛਾਪਣ ਵੇਲੇ ਟਰਮੀਨਲ ਦੀ ਚੌੜਾਈ ਪਤਾ ਕਰਨ ਲਈ ਚੁਣੀ ਗਈ ਬਿਲਟਿਨ ਕਮਾਂਡ ਰਾਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਇੱਕ SIGWINCH ਦੀ ਰਸੀਦ ਤੇ ਆਟੋਮੈਟਿਕ ਸੈਟ ਕੀਤਾ

ਇਕਜੁੱਟਤਾ

ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ ਜਿਸ ਤੋਂ bash ਪ੍ਰੋਗਰਾਮੇਬਲ ਪੂਰਤੀ ਸਹੂਲਤ ਦੁਆਰਾ ਬੁਲਾਇਆ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਤਿਆਰ ਸੰਭਾਵੀ ਸੰਪੂਰਨਤਾ ਨੂੰ ਪੜਦਾ ਹੈ (ਹੇਠਾਂ ਪ੍ਰੋਗਰਾਮਮੇਬਲ ਪੂਰਤੀ ਵੇਖੋ).

FCEDIT

Fc builtin ਕਮਾਂਡ ਲਈ ਡਿਫਾਲਟ ਐਡੀਟਰ.

ਫਾਈਨਰਾਂ

ਫਾਇਲ-ਨਾਂ ਪੂਰਨ ਕਰਨ ਦੇ ਦੌਰਾਨ ਅਣਡਿੱਠਾ ਕਰਨ ਲਈ ਪਿਛੇਤਰਾਂ ਦੀ ਇੱਕ ਕੌਲਨ-ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ. (ਹੇਠਾਂ ਦਿੱਤੇ READLINE ਵੇਖੋ) ਇੱਕ ਫਾਈਲ ਦਾ ਨਾਮ, ਜਿਸਦਾ ਪਿਛੱਸਟਾ ਫਿੰ ਫਰਾਂ ਵਿੱਚ ਦਰਜਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਮੇਲ ਖਾਂਦੇ ਫਾਈਲਨਾਮਿਆਂ ਦੀ ਸੂਚੀ ਤੋਂ ਬਾਹਰ ਰੱਖਿਆ ਗਿਆ ਹੈ. ਇੱਕ ਨਮੂਨਾ ਮੁੱਲ ".o: ~" ਹੈ.

ਗਲੋਬੀਨੇਅਰ

ਪਥ-ਨਾਂ ਦੇ ਵਿਸਥਾਰ ਦੁਆਰਾ ਅਣਡਿੱਠੇ ਕੀਤੇ ਫਾਈਲਾਂ ਦੇ ਸਮੂਹ ਨੂੰ ਪਰਿਭਾਸ਼ਿਤ ਕਰਨ ਵਾਲੇ ਪੈਟਰਨਾਂ ਦੀ ਇੱਕ ਉਪਗ੍ਰਹਿ ਦੁਆਰਾ ਵੱਖ ਕੀਤੀ ਸੂਚੀ. ਜੇਕਰ ਪਾਥਨਾਮ ਦੇ ਵਿਸਥਾਰ ਦੇ ਪੈਟਰਨ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਇੱਕ ਫਾਈਲ ਦਾ ਨਾਮ ਗਲੋਬਿਨਯੌਰ ਵਿੱਚ ਇੱਕ ਪੈਟਰਨ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਤਾਂ ਇਹ ਮੈਚਾਂ ਦੀ ਸੂਚੀ ਤੋਂ ਹਟਾਇਆ ਜਾਂਦਾ ਹੈ.

ਹਿੰਸਕਤਾ

ਜੇਕਰ ਅਣਡਿੱਠ ਸਪੇਸ ਦੇ ਮੁੱਲ ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੋਵੇ , ਤਾਂ ਲਾਈਨਜ਼ ਜੋ ਸਪੇਸ ਅੱਖਰ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦੀਆਂ ਹਨ, ਅਤੀਤ ਸੂਚੀ ਵਿੱਚ ਦਰਜ ਨਹੀਂ ਹੁੰਦੀਆਂ ਹਨ. ਜੇਕਰ ਅਣਡਿੱਠੇ ਕੀਤੇ ਗਏ ਉਪ- ਮੁੱਲਾਂ ਲਈ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਆਖਰੀ ਇਤਿਹਾਸ ਲਾਈਨ ਨਾਲ ਮਿਲਦੀਆਂ ਲਾਈਨਾਂ ਦਰਜ ਨਹੀਂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ. ਅਣਡਿੱਠਬੋਥ ਦਾ ਮੁੱਲ ਦੋ ਵਿਕਲਪਾਂ ਨੂੰ ਜੋੜਦਾ ਹੈ ਜੇ ਅਨਸੈਟ ਹੋਵੇ, ਜਾਂ ਜੇ ਉਪਰੋਕਤ ਤੋਂ ਹੋਰ ਕਿਸੇ ਵੀ ਕੀਮਤ ਤੇ ਸੈਟ ਕੀਤਾ ਜਾਵੇ ਤਾਂ ਹਿਸਟੋਨੇਰ ਦੇ ਮੁੱਲ ਦੇ ਆਧਾਰ ਤੇ ਪਾਰਸਰ ਦੁਆਰਾ ਪਾਈ ਗਈ ਸਾਰੀਆਂ ਲਾਈਨਾਂ ਨੂੰ ਇਤਿਹਾਸ ਸੂਚੀ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ . ਇਸ ਵੇਰੀਏਬਲ ਦੇ ਫੰਕਸ਼ਨ ਨੂੰ ਹਾਇਸਟਨੇਅਰ ਨੇ ਰਖਿਆ ਹੈ ਮਲਟੀ-ਲਾਈਨ ਕੰਪਾਊਂਡ ਕਮਾਂਡ ਦੀ ਦੂਜੀ ਅਤੇ ਅਗਲੀ ਲਾਈਨਜ਼ ਦੀ ਪ੍ਰੀਖਿਆ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ, ਅਤੇ ਇਤਿਹਾਸ ਨੂੰ ਸ਼ਾਮਿਲ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਭਾਵੇਂ HISTCONTROL ਦੇ ਮੁੱਲ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ

ਹਿਸਟਾਈਲ

ਫਾਈਲ ਦਾ ਨਾਮ ਜਿਸ ਵਿਚ ਕਮਾਂਡ ਇਤਿਹਾਸ ਸੁਰੱਖਿਅਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ (ਹੇਠਾਂ ਅਤੀਤ ਦੇਖੋ). ਮੂਲ ਮੁੱਲ ~ / .bash_history ਹੈ ਜੇਕਰ ਅਨਸੈਟ ਹੋਵੇ, ਤਾਂ ਕਮਾਂਡ ਅਤੀਤ ਨੂੰ ਸੁਰੱਖਿਅਤ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਬੰਦ ਹੁੰਦਾ ਹੈ.

HISTFILESIZE

ਅਤੀਤ ਫਾਈਲ ਵਿਚ ਮੌਜੂਦ ਲਾਈਨਾਂ ਦੀ ਵੱਧ ਤੋਂ ਵੱਧ ਗਿਣਤੀ. ਜਦੋਂ ਇਹ ਵੇਰੀਏਬਲ ਨੂੰ ਇੱਕ ਵੈਲਯੂ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਇਤਿਹਾਸ ਦੀ ਫਾਈਲ ਨੂੰ ਕੱਟਿਆ ਜਾਂਦਾ ਹੈ, ਜੇਕਰ ਲੋੜ ਹੋਵੇ, ਤਾਂ ਉਸ ਲਾਈਨਾਂ ਦੀ ਗਿਣਤੀ ਤੋਂ ਵੱਧ ਨਾ ਹੋਵੇ. ਡਿਫਾਲਟ ਵੈਲਯੂ 500 ਹੈ. ਇਤਿਹਾਸ ਫਾਇਲ ਨੂੰ ਲਿਖਣ ਤੋਂ ਬਾਅਦ ਵੀ ਇਸ ਆਕਾਰ ਵਿੱਚ ਕੱਟਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਬੰਦ ਹੁੰਦਾ ਹੈ.

ਹਿਸਟੈਨਅਰ

ਇਤਿਹਾਸ ਸੂਚੀ ਵਿੱਚ ਕਿਹੜੀਆਂ ਕਮਾਂਡ ਲਾਈਨਾਂ ਨੂੰ ਸੰਭਾਲਣਾ ਚਾਹੀਦਾ ਹੈ ਇਹ ਫੈਸਲਾ ਕਰਨ ਲਈ ਵਰਤੇ ਗਏ ਪੈਟਰਨਾਂ ਦੀ ਇੱਕ ਕੌਲਨ ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ. ਹਰ ਪੈਟਰਨ ਨੂੰ ਲਾਈਨ ਦੀ ਸ਼ੁਰੂਆਤ ਤੇ ਲੰਗਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਪੂਰੀ ਲਾਈਨ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ (ਕੋਈ ਵੀ ਅਪ੍ਰਤੱਖ ' * ' ਸ਼ਾਮਲ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ) HISTCONTROL ਦੁਆਰਾ ਨਿਰਦਿਸ਼ਟ ਕੀਤੇ ਗਏ ਚੈੱਕਾਂ ਲਈ ਲਾਗੂ ਕੀਤੇ ਜਾਣ ਤੋਂ ਬਾਅਦ ਹਰ ਪੈਟਰਨ ਨੂੰ ਲਾਈਨ ਦੇ ਵਿਰੁੱਧ ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ. ਆਮ ਸ਼ੈੱਲ ਪੈਟਰਨ ਮੇਲ ਖਾਂਦੇ ਕਿਰਿਆਂ ਤੋਂ ਇਲਾਵਾ, ` & 'ਪਿਛਲੇ ਇਤਿਹਾਸ ਲਾਈਨ ਨਾਲ ਮਿਲਦਾ ਹੈ ਇੱਕ ਬੈਕਸਲੈਸ਼ ਵਰਤਦੇ ਹੋਏ ` & '; ਮੈਚ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਬੈਕਸੈਸ਼ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ਬਹੁ-ਲਾਈਨ ਕੰਮਾਊਂਡ ਕਮਾਂਡ ਦੀ ਦੂਜੀ ਅਤੇ ਬਾਅਦ ਦੀਆਂ ਲਾਈਨਾਂ ਦੀ ਪ੍ਰੀਖਿਆ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ, ਅਤੇ ਹਿਸਟਨੂਰ ਦੇ ਮੁੱਲ ਦੀ ਪਰਵਾਹ ਕੀਤੇ ਬਿਨਾਂ ਇਤਿਹਾਸ ਨੂੰ ਜੋੜਿਆ ਜਾਂਦਾ ਹੈ.

HISTSIZE

ਹੁਕਮ ਇਤਿਹਾਸ ਵਿਚ ਯਾਦ ਰੱਖਣ ਵਾਲੀਆਂ ਕਮਾਂਡਾਂ ਦੀ ਗਿਣਤੀ (ਹੇਠਾਂ ਇਤਿਹਾਸ ਵੇਖੋ). ਮੂਲ ਮੁੱਲ 500 ਹੈ.

ਹੋਮ

ਮੌਜੂਦਾ ਯੂਜ਼ਰ ਦੀ ਘਰੇਲੂ ਡਾਇਰੈਕਟਰੀ; cd builtin ਕਮਾਂਡ ਲਈ ਡਿਫਾਲਟ ਆਰਗੂਮੈਂਟ. ਇਸ ਵੇਰੀਏਬਲ ਦਾ ਮੁੱਲ ਵੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਕਿ ਟਿਲਡ ਵਿਸਤਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

HOSTFILE

/ Etc / hosts ਦੇ ਰੂਪ ਵਿੱਚ ਉਸੇ ਫਾਰਮੈਟ ਵਿੱਚ ਇੱਕ ਫਾਇਲ ਦਾ ਨਾਂ ਰੱਖਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਸ਼ੈੱਲ ਨੂੰ ਹੋਸਟਨਾਮ ਨੂੰ ਪੂਰਾ ਕਰਨ ਦੀ ਲੋੜ ਹੁੰਦੀ ਹੈ. ਹੋਸਟ-ਨਾਂ ਸੰਪੂਰਨਤਾ ਦੀ ਸੂਚੀ ਬਦਲ ਦਿੱਤੀ ਜਾ ਸਕਦੀ ਹੈ ਜਦੋਂ ਕਿ ਸ਼ੈੱਲ ਚੱਲ ਰਹੀ ਹੋਵੇ; ਅਗਲੀ ਵਾਰ ਅਗਲੀ ਵਾਰ ਹੋਸਟ-ਨਾਂ ਨੂੰ ਪੂਰਾ ਕਰਨ ਦੇ ਬਾਅਦ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, bash ਨਵੀਂ ਫਾਇਲ ਦੇ ਸੰਖੇਪ ਨੂੰ ਮੌਜੂਦਾ ਸੂਚੀ ਵਿੱਚ ਜੋੜਦਾ ਹੈ. ਜੇ HOSTFILE ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਪਰ ਇਸ ਦਾ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਹੈ, ਸੰਭਵ ਹੋਸਟ-ਨਾਂ ਪੂਰਨਤਾ ਦੀ ਸੂਚੀ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ / etc / hosts ਪੜਨ ਲਈ bash ਕੋਸ਼ਿਸ਼ਾਂ. ਜਦੋਂ ਹੋਸਟਫਾਇਲ ਅਨਸੈਟ ਹੁੰਦੀ ਹੈ, ਤਾਂ ਹੋਸਟਨਾਮ ਸੂਚੀ ਨੂੰ ਸਾਫ਼ ਕਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ.

ਆਈਐਫਐਸ

ਅੰਦਰੂਨੀ ਫੀਲਡ ਵੱਖਰੇਵਾਂ ਜੋ ਵਿਸਥਾਰ ਕਰਨ ਤੋਂ ਬਾਅਦ ਸ਼ਬਦ ਨੂੰ ਵੰਡਣ ਲਈ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਅਤੇ ਪ੍ਰਕਿਰਤ ਬਿਲਡਿਨ ਕਮਾਂਡ ਨਾਲ ਸ਼ਬਦਾਂ ਵਿੱਚ ਲਾਈਨਾਂ ਨੂੰ ਵੰਡਦੀਆਂ ਹਨ. ਮੂਲ ਮੁੱਲ `` '' ਹੈ.

IGNOREEOF

ਇਕੋ ਇਕੋ ਜਿਹੀ ਇਨਪੁਟ ਦੇ ਰੂਪ ਵਿੱਚ ਇੱਕ EOF ਅੱਖਰ ਪ੍ਰਾਪਤ ਕਰਨ ਤੇ ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈੱਲ ਦੀ ਕਿਰਿਆ ਨੂੰ ਨਿਯੰਤਰਤ ਕਰਦਾ ਹੈ. ਜੇ ਨਿਰਧਾਰਤ ਕੀਤਾ ਹੈ, ਤਾਂ ਮੁੱਲ ਲਗਾਤਾਰ EOF ਅੱਖਰਾਂ ਦੀ ਗਿਣਤੀ ਹੈ ਜੋ ਕਿ ਆਊਟ ਸਤਰ ਤੋਂ ਪਹਿਲਾਂ ਇੱਕ ਇਨਪੁਟ ਲਾਈਨ ਦੇ ਪਹਿਲੇ ਅੱਖਰਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਟਾਈਪ ਕੀਤੇ ਜਾਣੇ ਚਾਹੀਦੇ ਹਨ. ਜੇ ਵੇਰੀਏਬਲ ਮੌਜੂਦ ਹੈ ਪਰ ਇਸ ਕੋਲ ਕੋਈ ਅੰਕ ਮੁੱਲ ਨਹੀਂ ਹੈ, ਜਾਂ ਇਸਦਾ ਕੋਈ ਮੁੱਲ ਨਹੀਂ ਹੈ, ਤਾਂ ਮੂਲ ਮੁੱਲ 10 ਹੈ. ਜੇਕਰ ਇਹ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਤਾਂ EOF ਸ਼ੈੱਲ ਲਈ ਇੰਪੁੱਟ ਦੇ ਅੰਤ ਦਾ ਸੰਕੇਤ ਕਰਦੀ ਹੈ.

INPUTRC

ਰੀਲਾਈਨਲਾਈਨ ਸਟਾਰਟਅੱਪ ਫਾਈਲ ਲਈ ਫਾਈਲ ਦਾ ਨਾਮ, ~ / .inputrc ਦੇ ਡਿਫਾਲਟ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰਨਾ (ਹੇਠਾਂ ਰੀਡਾਈਨ ਦੇਖੋ)

LANG

ਕਿਸੇ ਵੀ ਵਰਗ ਲਈ ਲੋਕੇਲ ਵਰਗ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜੋ ਖਾਸ ਤੌਰ ਤੇ ਐਲ.ਸੀ.ਆਈ.

LC_ALL

ਇਹ ਵੇਰੀਏਬਲ LANG ਦਾ ਮੁੱਲ ਅਤੇ ਕਿਸੇ ਹੋਰ LC_ ਮੁੱਲ ਨੂੰ ਇੱਕ ਲੋਕੇਲ ਵਰਗ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ.

LC_COLLATE

ਇਹ ਵੇਰੀਏਬਲ ਪਥ-ਨਾਂ ਦੇ ਵਿਸਥਾਰ ਦੇ ਨਤੀਜਿਆਂ ਨੂੰ ਕ੍ਰਮਵਾਰ ਕਰਨ ਵੇਲੇ ਵਰਤੇ ਗਏ ਕੋਲੇਸ਼ਨ ਆਰਡਰ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਅਤੇ ਪਾਥਨਾਂ ਦੇ ਵਿਸਥਾਰ ਅਤੇ ਪੈਟਰਨ ਮੇਲਿੰਗ ਦੇ ਵਿੱਚ ਰੇਂਜ ਐਕਸਪ੍ਰੈਸ, ਵਰੁਜੈਂਸੀ ਕਲਾਸਾਂ ਅਤੇ ਕੋਟਿੰਗ ਸ਼ੈਕਸ਼ਨਾਂ ਦਾ ਵਰਤਾਓ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ.

LC_CTYPE

ਇਹ ਵੇਰੀਏਬਲ ਪਾਥਨਾਂ ਦੇ ਵਿਸਥਾਰ ਅਤੇ ਪੈਟਰਨ ਮੇਲ ਵਿੱਚ ਅੱਖਰਾਂ ਦੀ ਵਿਆਖਿਆ ਅਤੇ ਅੱਖਰਾਂ ਦੀਆਂ ਕਲਾਸਾਂ ਦੇ ਵਿਵਹਾਰ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ.

LC_MESSAGES

ਇਹ ਵੇਰੀਏਬਲ ਇੱਕ $ ਦੁਆਰਾ ਪੂਰਵਲੇ ਡਬਲ-ਕੋਟੇਡ ਸਤਰਾਂ ਦਾ ਅਨੁਵਾਦ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਣ ਵਾਲਾ ਸਥਾਨਿਕ ਨਿਰਧਾਰਿਤ ਕਰਦਾ ਹੈ.

LC_NUMERIC

ਇਹ ਵੇਰੀਏਬਲ ਨਿਸ਼ਚਿਤ ਨੰਬਰ ਫਾਰਮੇਟਿੰਗ ਲਈ ਵਰਤੀ ਜਾਣ ਵਾਲੀ ਲੋਕੇਲ ਵਰਗ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ.

LINES

ਛਪਾਈ ਚੋਣ ਸੂਚੀ ਲਈ ਕਾਲਮ ਦੀ ਲੰਬਾਈ ਦਾ ਪਤਾ ਲਗਾਉਣ ਲਈ ਚੁਣੀ ਬਿਲਟਿਨ ਕਮਾਂਡ ਰਾਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਇੱਕ SIGWINCH ਦੀ ਰਸੀਦ ਤੇ ਆਟੋਮੈਟਿਕ ਸੈਟ ਕੀਤਾ

ਮੇਲ

ਜੇ ਇਹ ਪੈਰਾਮੀਟਰ ਫਾਇਲ ਨਾਂ ਤੇ ਨਿਰਧਾਰਤ ਕੀਤਾ ਹੈ ਅਤੇ MAILPATH ਵੇਰੀਏਬਲ ਸੈੱਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ bash ਨਿਰਧਾਰਤ ਫਾਇਲ ਵਿੱਚ ਮੇਲ ਦੇ ਆਉਣ ਵਾਲੇ ਯੂਜ਼ਰ ਨੂੰ ਸੂਚਿਤ ਕਰਦਾ ਹੈ.

ਮੇਲਾਚੈਕ

ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਕਿੰਨੀ ਵਾਰ (ਸਕਿੰਟਾਂ ਵਿੱਚ) ਮੇਲ ਲਈ bash ਚੈੱਕ. ਡਿਫਾਲਟ 60 ਸਕਿੰਟਾਂ ਹੈ. ਜਦੋਂ ਪੱਤਰ ਦੀ ਜਾਂਚ ਕਰਨ ਦਾ ਸਮਾਂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਸ਼ੈਲ ਪ੍ਰਾਇਮਰੀ ਪ੍ਰੌਮਪਟ ਦਰਸਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਹੁੰਦਾ ਹੈ. ਜੇ ਇਹ ਵੇਰੀਏਬਲ ਅਨਸੈਟ ਹੈ, ਜਾਂ ਇੱਕ ਵੈਲਯੂ ਤੇ ਸੈਟ ਕੀਤਾ ਜੋ ਕੋਈ ਜ਼ੀਰੋ ਨਾਲੋਂ ਵੱਡਾ ਜਾਂ ਬਰਾਬਰ ਨੰਬਰ ਨਹੀਂ ਹੈ, ਸ਼ੈੱਲ ਮੇਲ ਜਾਂਚ ਨੂੰ ਆਯੋਗ ਕਰਦਾ ਹੈ

MAILPATH

ਮੇਲ ਲਈ ਚੈੱਕ ਕੀਤੇ ਜਾਣ ਵਾਲੇ ਫਾਇਲ ਨਾਂ ਦੀ ਕੌਲਨ ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ. ਇੱਕ ਖਾਸ ਫਾਇਲ ਵਿੱਚ ਜਦੋਂ ਮੇਲ ਪਹੁੰਚਦਾ ਹੈ ਤਾਂ ਸੁਨੇਹਾ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਇੱਕ ਸੁਨੇਹੇ ਨੂੰ '?' ਜਦੋਂ ਸੰਦੇਸ਼ ਦੇ ਪਾਠ ਵਿੱਚ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ $ _ ਮੌਜੂਦਾ ਮੇਲਫਾਇਲ ਦੇ ਨਾਮ ਤੱਕ ਫੈਲਦਾ ਹੈ ਉਦਾਹਰਨ:

MAILPATH = '/ var / mail / bfox? "ਤੁਹਾਡੇ ਕੋਲ ਡਾਕ": ~ / shell-mail? "$ _ ਦਾ ਮੇਲ ਹੈ!"'

Bash ਇਸ ਵੇਰੀਏਬਲ ਲਈ ਇੱਕ ਡਿਫਾਲਟ ਮੁੱਲ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਪਰ ਉਪਭੋਗਤਾ ਮੇਲ ਫਾਈਲਾਂ ਦੀ ਸਥਿਤੀ ਜੋ ਇਸਦਾ ਉਪਯੋਗ ਕਰਦੀ ਹੈ ਸਿਸਟਮ ਨਿਰਭਰ (ਉਦਾਹਰਨ ਲਈ, / var / mail / $ USER ).

OPTERR

ਜੇਕਰ ਮੁੱਲ 1 ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਬੈਸਟ ਡਿਪਾਰਟਮੈਂਟ ਦੇ ਗਲਤੀ ਸੁਨੇਹੇ ਜੋ ਕਿ ਗੂਆਪਿਟਸ ਬਿਲਟਿਨ ਕਮਾਂਡ ਦੁਆਰਾ ਤਿਆਰ ਕੀਤੇ ਗਏ ਹਨ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿੰਟਨ ਕਮਮਾਂ ਵੇਖੋ). ਓਪਟਰ ਆਰ 1 ਵਾਰ ਸ਼ੁਰੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸ਼ੈੱਲ ਚੱਲਦਾ ਹੈ ਜਾਂ ਇੱਕ ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਲਾਗੂ ਹੁੰਦੀ ਹੈ.

ਪਾਥ

ਕਮਾਂਡਾਂ ਲਈ ਖੋਜ ਮਾਰਗ ਇਹ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਇੱਕ ਕੌਲਨ ਨਾਲ ਵੱਖ ਕੀਤੀ ਸੂਚੀ ਹੈ, ਜਿਸ ਵਿੱਚ ਸ਼ੈੱਲ ਕਮਾਂਡਾਂ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ (ਹੇਠਾਂ COMMAND EXECUTION ਵੇਖੋ) ਮੂਲ ਮਾਰਗ ਸਿਸਟਮ-ਨਿਰਭਰ ਹੈ, ਅਤੇ ਪ੍ਰਬੰਧਕ ਦੁਆਰਾ ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜੋ bash ਇੰਸਟਾਲ ਕਰਦਾ ਹੈ . ਇੱਕ ਆਮ ਮੁੱਲ `` / usr / gnu / bin: / usr / local / bin: / usr / ucb: / bin: / usr / bin: '' '' ਹੈ.

POSIXLY_CORRECT

ਜੇ ਇਹ ਵੇਰੀਏਬਲ ਵਾਤਾਵਰਣ ਵਿੱਚ ਹੁੰਦਾ ਹੈ ਜਦੋਂ bash ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਸ਼ੈੱਲ ਸ਼ੁਰੂਆਤੀ ਫਾਈਲਾਂ ਨੂੰ ਪੜ੍ਹਨ ਤੋਂ ਪਹਿਲਾਂ ਪਜ਼ਿਕਸ ਮੋਡ ਵਿੱਚ ਦਾਖਲ ਹੁੰਦਾ ਹੈ, ਜਿਵੇਂ ਕਿ --posix invocation ਵਿਕਲਪ ਦਿੱਤਾ ਗਿਆ ਸੀ. ਜੇ ਇਹ ਸ਼ੈੱਲ ਚੱਲ ਰਿਹਾ ਹੈ ਤਾਂ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, bash ਪਾਜ਼ੀਕਸ ਮੋਡ ਨੂੰ ਸਮਰੱਥ ਬਣਾਉਂਦਾ ਹੈ , ਜਿਵੇਂ ਕਿ ਕਮਾਂਡ ਸੈਟ-ਓ ਪੋਜ਼ੀਕਸ ਨੂੰ ਚਲਾਇਆ ਗਿਆ ਸੀ.

PROMPT_COMMAND

ਜੇ ਨਿਰਧਾਰਤ ਕੀਤਾ ਹੈ, ਹਰੇਕ ਪ੍ਰਾਇਮਰੀ ਪਰੌਂਪਟ ਜਾਰੀ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਮੁੱਲ ਨੂੰ ਕਮਾਂਡ ਦੇ ਤੌਰ ਤੇ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ.

PS1

ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਵਧਾਇਆ ਗਿਆ ਹੈ (ਹੇਠ ਤਰੱਕੀ ਦੇਖੋ) ਅਤੇ ਪ੍ਰਾਇਮਰੀ ਪ੍ਰੌਮ ਸਟ੍ਰਿੰਗ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਮੂਲ ਮੁੱਲ `` \ s- \ v \ $ '' ਹੈ.

PS2

ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ PS1 ਦੇ ਨਾਲ ਵਿਸਥਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਸਨੂੰ ਸੈਕੰਡਰੀ ਪ੍ਰੌਮ ਸਟ੍ਰਿੰਗ ਵਜੋਂ ਵਰਤਿਆ ਗਿਆ ਹੈ. ਮੂਲ ਹੈ `` > ''.

PS3

ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਚੁਣੀ ਕਮਾਂਡ ਲਈ ਪ੍ਰੋਂਪਟ ਵਜੋਂ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ (ਉਪਰ ਸ਼ੈਲ ਗਰਮਾ ਦੇਖੋ).

PS4

ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ PS1 ਦੇ ਨਾਲ ਵਿਸਥਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਹਰੇਕ ਕਮਾਂਡ ਬਾਅਸ਼ ਤੋਂ ਪਹਿਲਾਂ ਮੁੱਲ ਛਾਪਿਆ ਜਾਂਦਾ ਹੈ ਜੋ ਕਿ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਟਰੇਸ ਦੇ ਦੌਰਾਨ ਪ੍ਰਗਟ ਹੁੰਦਾ ਹੈ. ਪੀਐਸ 4 ਦਾ ਪਹਿਲਾ ਅੱਖਰ ਦੁਹਰਾਇਆ ਗਿਆ ਹੈ, ਜਿੰਨਾ ਲੋੜੀਂਦਾ ਹੈ, ਨਿਰਦੋਸ਼ ਦੇ ਕਈ ਪੱਧਰਾਂ ਨੂੰ ਦਰਸਾਉਣ ਲਈ. ਮੂਲ ਹੈ `` + ''.

TIMEFORMAT

ਇਸ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਇੱਕ ਫਾਰਮੈਟ ਸਤਰ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਗਿਆ ਹੈ ਜੋ ਦੱਸਦੀ ਹੈ ਕਿ ਸਮੇਂ ਰਾਖਵੇਂ ਸ਼ਬਦ ਨਾਲ ਪ੍ਰੀਫਿਕਸ ਕੀਤੇ ਪਾਈਪਲਾਈਨਾਂ ਲਈ ਸਮੇਂ ਦੀ ਜਾਣਕਾਰੀ ਕਿਵੇਂ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨੀ ਚਾਹੀਦੀ ਹੈ. % ਅੱਖਰ ਇੱਕ ਏਕੇਖ ਲੜੀ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਇੱਕ ਸਮੇਂ ਦੇ ਮੁੱਲ ਜਾਂ ਹੋਰ ਜਾਣਕਾਰੀ ਵਿੱਚ ਵਧਾਇਆ ਜਾਂਦਾ ਹੈ. ਬਚਣ ਦਾ ਕ੍ਰਮ ਅਤੇ ਇਹਨਾਂ ਦਾ ਮਤਲਬ ਹੇਠ ਲਿਖੇ ਹਨ; ਬ੍ਰੇਸ ਵਿਕਲਪਿਕ ਭਾਗਾਂ ਨੂੰ ਨਜਿੱਠਦੇ ਹਨ.

%%

ਇੱਕ ਸ਼ਾਬਦਿਕ %

% [ p ] [l] ਆਰ

ਸਕਿੰਟਾਂ ਵਿੱਚ ਲੰਘਿਆ ਸਮਾਂ.

% [ p ] [l] ਯੂ

ਯੂਜ਼ਰ ਮੋਡ ਵਿੱਚ ਬਿਤਾਏ CPU ਸਕਿੰਟ ਦੀ ਗਿਣਤੀ.

% [ p ] [l] ਸ

ਸਿਸਟਮ ਮੋਡ ਵਿੱਚ ਬਿਤਾਏ CPU ਸਕਿੰਟ ਦੀ ਗਿਣਤੀ.

% ਪੀ

CPU ਪ੍ਰਤੀਸ਼ਤ, ਜਿਸਦਾ ਗਣਨਾ (% U +% S) /% R ਹੈ.

ਵਿਕਲਪਿਕ p ਇਕ ਅੰਕ ਹੈ ਜੋ ਸਪਸ਼ਟੀਕਰਨ ਨੂੰ ਨਿਸ਼ਚਿਤ ਕਰਦਾ ਹੈ, ਡੈਸੀਮਲ ਪਾਈਪ ਤੋਂ ਬਾਅਦ ਫਰਕ ਦੇ ਅੰਕ ਦੀ ਗਿਣਤੀ. 0 ਦਾ ਮੁੱਲ ਆਉਟਪੁਟ ਹੋਣ ਲਈ ਦਸ਼ਮਲਵ ਜਾਂ ਅੰਸ਼ ਨੂੰ ਨਹੀਂ ਦਿੰਦਾ. ਦਸ਼ਮਲਵ ਅੰਕ ਦੇ ਬਾਅਦ ਵੱਧ ਤੋਂ ਵੱਧ ਤਿੰਨ ਸਥਾਨਾਂ ਤੇ ਨਿਰਦਿਸ਼ਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ; 3 ਤੋਂ ਵੱਧ ਪੀ ਦੇ ਮੁੱਲ 3 ਤੇ ਬਦਲ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ. ਜੇ p ਨਿਸ਼ਚਿਤ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ, ਤਾਂ ਮੁੱਲ 3 ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ.

ਐਮਐਮ ਐਮ ਐਸ ਐੱਸ ਦੇ ਫਾਰਮ ਦੇ ਵਿਕਲਪਿਕ l ਫਾਰਮੇਟ ਨੂੰ ਲੰਬਿਤ ਕਰਦਾ ਹੈ, ਮਿੰਟ ਸਮੇਤ. ਐੱਫ.ਐੱਫ . ਪੀ ਦਾ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ ਕਿ ਭਾਗ ਨੂੰ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ ਜਾਂ ਨਹੀਂ

ਜੇਕਰ ਇਹ ਵੇਰੀਏਬਲ ਸੈਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ bash ਇਸ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰਦਾ ਹੈ ਜਿਵੇਂ ਇਸਦੀ ਕੀਮਤ $ '\ nreal \ t% 3lR \ nuser \ t% 3lU \ nsys% 3lS' ਹੋਵੇ . ਜੇ ਵੈਲਯੂ ਖਾਲੀ ਹੈ, ਤਾਂ ਕੋਈ ਸਮਾਂ ਜਾਣਕਾਰੀ ਪ੍ਰਦਰਸ਼ਿਤ ਨਹੀਂ ਹੁੰਦੀ. ਜਦੋਂ ਇੱਕ ਫਾਰਮੈਟ ਸਟ੍ਰਿੰਗ ਦਿਖਾਈ ਜਾਂਦੀ ਹੈ ਤਾਂ ਇੱਕ ਸ਼ੁਰੂਆਤੀ ਨਵੀਂ ਲਾਈਨ ਜੋੜ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ.

TMOUT

ਜੇ ਜ਼ੀਰੋ ਤੋਂ ਵੱਧ ਵੈਲਯੂ ਤੇ ਸੈੱਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਤਾਂ TMOUT ਨੂੰ ਰੀਡ ਬਿਲਡਿਨ ਲਈ ਡਿਫਾਲਟ ਟਾਈਮਆਉਟ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. ਚੋਣ ਕਰੋ ਕਮਾਂਡ ਬੰਦ ਹੋ ਜਾਂਦੀ ਹੈ ਜੇ ਟੀਮੌਏਟ ਸਕਿੰਟ ਦੇ ਬਾਅਦ ਇਨਪੁਟ ਨਹੀਂ ਆਉਂਦੀ ਜਦੋਂ ਇੰਪੁੱਟ ਟਰਮੀਨਲ ਤੋਂ ਆ ਰਿਹਾ ਹੈ. ਇੱਕ ਇੰਟਰੈਕਟਿਵ ਸ਼ੈਲ ਵਿੱਚ, ਮੁੱਲ ਨੂੰ ਪ੍ਰਾਇਮਰੀ ਪ੍ਰੋਂਪਟ ਜਾਰੀ ਕਰਨ ਤੋਂ ਬਾਅਦ ਇਨਪੁਟ ਦਾ ਇੰਤਜ਼ਾਰ ਕਰਨ ਲਈ ਸੈਕੰਡ ਦੀ ਗਿਣਤੀ ਦੇ ਤੌਰ ਤੇ ਸਮਝਾਇਆ ਜਾਂਦਾ ਹੈ. ਜੇਕਰ ਇਨਪੁਟ ਨਹੀਂ ਹੁੰਦਾ ਹੈ ਤਾਂ ਸਕਿੰਟਾਂ ਦੀ ਗਿਣਤੀ ਲਈ ਉਡੀਕ ਕਰਨ ਤੋਂ ਬਾਅਦ ਬੈਸ ਬੰਦ ਹੋ ਜਾਂਦਾ ਹੈ

auto_resume

ਇਹ ਵੇਰੀਏਬਲ ਕੰਟਰੋਲ ਕਰਦਾ ਹੈ ਕਿ ਸ਼ੈੱਲ ਉਪਭੋਗਤਾ ਅਤੇ ਨੌਕਰੀ ਦੇ ਨਿਯੰਤਰਣ ਨਾਲ ਕਿਵੇਂ ਸੰਪਰਕ ਕਰਦਾ ਹੈ. ਜੇ ਇਹ ਵੇਰੀਏਬਲ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਬਿਨਾਂ ਕਿਸੇ ਨਿਰਦਿਸ਼ਟਤਾ ਦੇ ਸਿੰਗਲ ਸ਼ਬਦ ਸੌਫਟਵੇਅਰ ਆਉਂਦੇ ਹਨ ਤਾਂ ਕਿਸੇ ਮੌਜੂਦਾ ਰੋਡ ਨੌਕਰੀ ਦੀ ਵਾਪਸੀ ਲਈ ਉਮੀਦਵਾਰ ਵਜੋਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. ਇਸ ਵਿਚ ਕੋਈ ਅਸਪੱਸ਼ਟਤਾ ਨਹੀਂ ਹੈ; ਜੇ ਸਟ੍ਰਿੰਗ ਟਾਈਪ ਨਾਲ ਸ਼ੁਰੂ ਇਕ ਤੋਂ ਵੱਧ ਨੌਕਰੀ ਸ਼ੁਰੂ ਹੋ ਗਈ ਹੈ, ਤਾਂ ਸਭ ਤੋਂ ਹਾਲ ਹੀ ਵਿੱਚ ਐਕਸੈਸ ਕੀਤੇ ਜਾਣ ਵਾਲੀ ਨੌਕਰੀ ਦੀ ਚੋਣ ਕੀਤੀ ਗਈ ਹੈ. ਰੁਕਿਆ ਨੌਕਰੀ ਦਾ ਨਾਮ , ਇਸ ਸੰਦਰਭ ਵਿੱਚ, ਇਸਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਵਰਤੀ ਗਈ ਕਮਾਂਡ ਲਾਈਨ ਹੈ ਜੇ ਮੁੱਲ ਸਹੀ ਹੈ , ਤਾਂ ਦਿੱਤਾ ਗਿਆ ਸਤਰ, ਰੁੱਕ ਗਈ ਨੌਕਰੀ ਦੇ ਨਾਮ ਨਾਲ ਮਿਲਣਾ ਚਾਹੀਦਾ ਹੈ; ਜੇ ਸਬ-ਸੈਰਡ ਕਰਨ ਤੇ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਸਤਰ ਦੀ ਲੋੜ ਹੈ ਰੁਕਿਆ ਨੌਕਰੀ ਦੇ ਨਾਮ ਦੇ ਅਕਾਰ ਨਾਲ ਮੇਲ ਕਰਨ ਲਈ. ਸਬਸਟ੍ਰਿੰਗ ਮੁੱਲ % ਨੂੰ ਸਮਾਨਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ? ਨੌਕਰੀ ਪਛਾਣਕਰਤਾ (ਹੇਠਾਂ ਰੋਜ਼ਗਾਰ ਨਿਯਮ ਦੇਖੋ) ਜੇਕਰ ਕਿਸੇ ਹੋਰ ਮੁੱਲ ਨੂੰ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਸਪਲਾਈ ਕੀਤੀ ਸਤਰ ਨੂੰ ਰੁਕੇ ਹੋਏ ਨੌਕਰੀ ਦੇ ਨਾਮ ਦਾ ਇੱਕ ਅਗੇਤਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ; ਇਹ % ਨੌਕਰੀ ਪਛਾਣਕਰਤਾ ਦੇ ਅਨੁਸਾਰ ਕਾਰਜਕੁਸ਼ਲਤਾ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ.

ਹਿੰਸਟਰ

ਦੋ ਜਾਂ ਤਿੰਨ ਅੱਖਰ, ਜੋ ਇਤਿਹਾਸ ਦੇ ਵਿਸਤਾਰ ਅਤੇ ਟੋਕਨਾਈਜੇਸ਼ਨ ਨੂੰ ਨਿਯੰਤਰਿਤ ਕਰਦੇ ਹਨ (ਹੇਠਾਂ ਇਤਿਹਾਸ ਸੋਧ ਦੇਖੋ) ਪਹਿਲਾ ਅੱਖਰ, ਇਤਿਹਾਸ ਦਾ ਵਿਸਥਾਰ ਕਰਨ ਵਾਲਾ ਸ਼ਖ਼ਸੀਅਤ ਹੈ, ਉਹ ਅੱਖਰ ਜੋ ਇਤਿਹਾਸ ਦੀ ਸ਼ੁਰੂਆਤ ਦੀ ਸ਼ੁਰੂਆਤ ਨੂੰ ਸੰਕੇਤ ਕਰਦਾ ਹੈ, ਆਮ ਤੌਰ `ਤੇ ! ' ਦੂਜਾ ਅੱਖਰ ਇਕ ਤੇਜ਼ ਬਦਲਾਵ ਅੱਖਰ ਹੈ, ਜੋ ਕਿ ਕਮਾਂਡ ਵਿਚ ਦੂਜੇ ਲਈ ਇਕ ਸਤਰ ਨੂੰ ਬਦਲ ਕੇ ਪਿਛਲੀ ਕਤਾਰ ਨੂੰ ਮੁੜ-ਚਾਲੂ ਕਰਨ ਲਈ ਸ਼ਾਲਾਂ ਦੇ ਤੌਰ ਤੇ ਵਰਤੀ ਜਾਂਦੀ ਹੈ. ਮੂਲ ` ^ 'ਹੈ ਵਿਕਲਪਿਕ ਤੀਜਾ ਅੱਖਰ ਉਹ ਅੱਖਰ ਹੈ ਜੋ ਦਰਸਾਉਂਦਾ ਹੈ ਕਿ ਲਾਈਨ ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਇੱਕ ਟਿੱਪਣੀ ਹੈ ਜਦੋਂ ਇੱਕ ਸ਼ਬਦ ਦੇ ਪਹਿਲੇ ਅੱਖਰ ਦੇ ਰੂਪ ਵਿੱਚ ਪਾਇਆ ਜਾਂਦਾ ਹੈ, ਆਮ ਤੌਰ ਤੇ ` # ' ਇਤਿਹਾਸ ਟਿੱਪਣੀ ਦਾ ਅੱਖਰ ਲਾਈਨ ਦੇ ਬਾਕੀ ਬਚੇ ਸ਼ਬਦਾਂ ਲਈ ਇਤਿਹਾਸ ਬਦਲਣ ਨੂੰ ਛੱਡ ਦਿੰਦਾ ਹੈ. ਇਹ ਜ਼ਰੂਰੀ ਨਹੀਂ ਕਿ ਸ਼ੈੱਲ ਪਾਰਸਰ ਨੂੰ ਬਾਕੀ ਦੀ ਲਾਈਨ ਨੂੰ ਇੱਕ ਟਿੱਪਣੀ ਦੇ ਤੌਰ ਤੇ ਵਰਤਣ ਦਾ ਕਾਰਨ ਨਾ ਲੱਗੇ.

ਐਰੇਜ਼

ਬॅश ਇਕ-ਅਯਾਮੀ ਐਰੇ ਵੇਅਬਲਾਂ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ ਕਿਸੇ ਵੀ ਵੇਰੀਏਬਲ ਨੂੰ ਇੱਕ ਐਰੇ ਵਜੋਂ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ; ਡਿਲੀਵਰ ਘੋਸ਼ਿਤ ਕਰੇਗਾ ਸਪਸ਼ਟ ਤੌਰ ਤੇ ਇੱਕ ਐਰੇ ਐਲਾਨ ਕਰੇਗਾ. ਕਿਸੇ ਐਰੇ ਦੇ ਆਕਾਰ ਤੇ ਕੋਈ ਵੱਧ ਤੋਂ ਵੱਧ ਸੀਮਾ ਨਹੀਂ ਹੈ, ਨਾ ਹੀ ਕਿਸੇ ਲੋੜ ਨੂੰ ਜਿਸ ਨਾਲ ਮੈਂਬਰਾਂ ਨੂੰ ਅਨੁਸਾਰੀ ਸੂਚੀਬੱਧ ਕੀਤਾ ਜਾਂ ਵੰਡਿਆ ਜਾ ਸਕੇ. ਐਰੇਜ਼ ਨੂੰ ਇੰਟੀਜ਼ਰ ਨਾਲ ਇੰਡੈਕਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਜ਼ੀਰੋ-ਬੇਸਡ ਹੁੰਦੇ ਹਨ.

ਇੱਕ ਐਰੇ ਆਪਣੇ-ਆਪ ਬਣਾਇਆ ਗਿਆ ਹੈ ਜੇ ਕਿਸੇ ਵੀ ਵੇਰੀਏਬਲ ਨੂੰ ਸੰਟੈਕਸ ਨਾਂ [ ਸਬਸਕ੍ਰਿਪਟ ] = ਮੁੱਲ ਵਰਤਣ ਲਈ ਦਿੱਤਾ ਗਿਆ ਹੈ . ਸਬਸਕਰਿਪਟ ਨੂੰ ਇੱਕ ਅੰਕਗਣਿਤ ਸਮੀਕਰਨ ਵਜੋਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਜਿਸਦਾ ਮੁਲਾਂਕਣ ਜ਼ੀਰੋ ਤੋਂ ਵੱਡਾ ਜਾਂ ਇਸਦੇ ਬਰਾਬਰ ਦਾ ਹੋਵੇਗਾ. ਇਕ ਐਰੇ ਦੀ ਘੋਸ਼ਣਾ ਕਰਨ ਲਈ, declare -a ਨਾਮ ਦੀ ਵਰਤੋਂ ਕਰੋ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਟਨ ਕਮਾਂਡੇ ਦੇਖੋ). ਘੋਸ਼ਿਤ ਕਰੋ- ਇੱਕ ਨਾਮ [ ਸਬਸਕ੍ਰਿਪਟ ] ਵੀ ਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ; ਸਬਸਕਰਿਪਟ ਨੂੰ ਅਣਡਿੱਠਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਐਟਰੀਆਂ ਵੇਰੀਏਬਲ ਲਈ ਡੀਲਰ ਅਤੇ ਰੀਡੌਨਲੀ ਬਿਲਡਿਨਸ ਦੀ ਵਰਤੋਂ ਦੇ ਗੁਣਾਂ ਨੂੰ ਨਿਰਦਿਸ਼ਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਹਰੇਕ ਵਿਸ਼ੇਸ਼ਤਾ ਇੱਕ ਐਰੇ ਦੇ ਸਾਰੇ ਮੈਂਬਰਾਂ ਤੇ ਲਾਗੂ ਹੁੰਦੀ ਹੈ.

ਐਰੇ ਨੂੰ ਫਾਰਮ ਨਾਮ = ( ਮੁੱਲ 1 ... ਵੈਲਯੂ n ) ਦੇ ਕੰਪਲਾਊਂਟ ਅਸਾਈਨਮੈਂਟਸ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਨਿਯੁਕਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿੱਥੇ ਹਰੇਕ ਮੁੱਲ ਫਾਰਮ [ subscript ] = string ਹੁੰਦਾ ਹੈ . ਕੇਵਲ ਸਤਰ ਦੀ ਲੋੜ ਹੈ. ਜੇ ਵਿਕਲਪਿਕ ਬ੍ਰੈਕੇਟ ਅਤੇ ਸਬਸਕ੍ਰਿਪਟ ਦਿੱਤੇ ਗਏ ਹਨ, ਤਾਂ ਇੰਡੈਕਸ ਨੂੰ ਤੈਅ ਕੀਤਾ ਗਿਆ ਹੈ; ਨਹੀਂ ਤਾਂ ਤੈਅ ਕੀਤੇ ਤੱਤ ਦੇ ਇੰਡੈਕਸ ਨੂੰ ਬਿਆਨ ਰਾਹੀਂ ਦਿੱਤਾ ਗਿਆ ਆਖਰੀ ਇੰਡੈਕਸ ਪਲੱਸ ਇਕ ਹੈ. ਇੰਡੈਕਸਿੰਗ ਜ਼ੀਰੋ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੀ ਹੈ. ਇਹ ਸੈਂਟੈਕਸ ਡਿਲੀਵਰ ਕੀਤੇ ਗਏ ਬਿਲਟ ਦੁਆਰਾ ਵੀ ਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਵਿਅਕਤੀਗਤ ਐਰੇ ਤੱਤਾਂ ਨੂੰ ਉਪਰੋਕਤ ਦਿੱਤਾ ਗਿਆ ਨਾਮ [ ਸਬਸਕ੍ਰਿਪਟ ] = ਮੁੱਲ ਸੈਂਟੈਕਸ ਵਰਤਣ ਲਈ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ.

ਅਨਸੈਟ ਬਣਾਇਆ ਗਿਆ ਐਂਟਰੀ ਨਸ਼ਟ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਨਾਮ ਅਨਸੈੱਟ ਕਰੋ [ ਸਬਸਕ੍ਰਿਪਟ ] ਇੰਡੈਕਸ ਸਬਸਕ੍ਰਿਪਟ ਤੇ ਐਰੇ ਐਲੀਮੈਂਟ ਨੂੰ ਨਸ਼ਟ ਕਰ ਦਿੰਦਾ ਹੈ. ਨਾਮ ਅਿਸਤ ਕਰੋ , ਜਿੱਥੇ ਨਾਂ ਇੱਕ ਐਰੇ ਹੈ, ਜਾਂ ਨਾਮ [ ਸਬਸਕ੍ਰਿਪਟ ] ਨਾ ਸੈਟ ਕਰੋ , ਜਿੱਥੇ ਸਬਸਕ੍ਰਿਪਟ * ਜਾਂ @ ਹੈ , ਸਾਰੀ ਐਰੇ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ.

ਘੋਸ਼ਣਾ , ਲੋਕਲ ਅਤੇ ਰੀਡੌਨਲੀ ਬਿਲਡਿੰੰਡ ਹਰ ਇੱਕ ਨੂੰ ਇੱਕ ਐਰੇ ਨੂੰ ਦਰਸਾਉਣ ਲਈ a -a ਵਿਕਲਪ ਸਵੀਕਾਰ ਕਰਦੇ ਹਨ. ਪੜ੍ਹਿਆ ਹੋਇਆ ਐਂਟਿਨ ਸਟੈਂਡਰਡ ਇੰਪੁੱਟ ਤੋਂ ਇਕ ਐਰੇ ਤਕ ਲਿਖੇ ਸ਼ਬਦਾਂ ਦੀ ਇੱਕ ਸੂਚੀ ਨਿਰਧਾਰਤ ਕਰਨ ਲਈ -a ਵਿਕਲਪ ਸਵੀਕਾਰ ਕਰਦਾ ਹੈ. ਸੈੱਟ ਅਤੇ ਡਿਜ਼ਾਇਨ ਬਿਲਟਿਨ ਡਿਸਪਲੇ ਐਰੇ ਵੈਲਯੂ ਇੱਕ ਤਰੀਕੇ ਨਾਲ ਡਿਜਾਈਨ ਕਰਦਾ ਹੈ ਜੋ ਉਹਨਾਂ ਨੂੰ ਅਸਾਈਨਮੈਂਟਸ ਵਜੋਂ ਦੁਬਾਰਾ ਇਸਤੇਮਾਲ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ.

ਵਿਸਥਾਰ

ਵਿਸਥਾਰ ਨੂੰ ਸ਼ਬਦਾਂ ਵਿੱਚ ਵੰਡ ਦਿੱਤੇ ਜਾਣ ਤੋਂ ਬਾਅਦ ਕਮਾਂਡ ਲਾਈਨ ਤੇ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਪ੍ਰਦਰਸ਼ਨ ਦੇ ਸੱਤ ਤਰ੍ਹਾਂ ਦੇ ਵਿਸਥਾਰ ਹਨ: ਬਰੇਸ ਐਕਸਟੈਨਸ਼ਨ , ਟਿਲਡ ਐਕਸਟੈਨਸ਼ਨ , ਪੈਰਾਮੀਟਰ ਅਤੇ ਵੈਰੀਐਬਲ ਐਕਸਪੈਂਸ਼ਨ , ਕਮਾਂਡ ਪ੍ਰਤੀਸਥਾਪਨ , ਅੰਕਗਣਿਤ ਵਿਸਤਾਰ , ਸ਼ਬਦ ਵਿਭਾਜਨ , ਅਤੇ ਪਾਥਨਾਮ ਵਿਸਥਾਰ .

ਫੈਲਾਵਾਂ ਦਾ ਆਰਡਰ ਹੈ: ਬਰੇਸ ਐਕਸਟੈਨਸ਼ਨ, ਟਿਲਡ ਐਕਸਟੈਨਸ਼ਨ, ਪੈਰਾਮੀਟਰ, ਵੇਰੀਏਬਲ ਅਤੇ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਤਾਰ ਅਤੇ ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ (ਖੱਬੇ-ਤੋਂ-ਸੱਜੇ ਫੈਸ਼ਨ ਵਿੱਚ ਕੀਤਾ ਗਿਆ ਹੈ), ਸ਼ਬਦ ਵੰਡਣਾ, ਅਤੇ ਪਾਥਨਾਮ ਵਿਸਥਾਰ.

ਇਸ ਪ੍ਰਣਾਲੀ ਦਾ ਸਮਰਥਨ ਕਰਨ ਵਾਲੀਆਂ ਪ੍ਰਣਾਲੀਆਂ 'ਤੇ, ਇਕ ਹੋਰ ਵਾਧਾ ਉਪਲਬਧ ਹੈ: ਪ੍ਰਕਿਰਿਆ ਪ੍ਰਤੀਭੂਤੀ .

ਬ੍ਰੇਸ ਪਸਾਰ

ਬ੍ਰੇਸ ਵਿਸਥਾਰ ਇੱਕ ਵਿਧੀ ਹੈ ਜਿਸ ਦੁਆਰਾ ਮਨਮਾਨੀ ਸਤਰ ਪੈਦਾ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ. ਇਹ ਵਿਧੀ ਪਥ-ਨਾਂ ਦੇ ਵਿਸਥਾਰ ਦੇ ਸਮਾਨ ਹੈ, ਪਰ ਤਿਆਰ ਕੀਤੇ ਫਾਈਲਾਂ ਦੇ ਨਾਂ ਦੀ ਮੌਜੂਦਗੀ ਦੀ ਜ਼ਰੂਰਤ ਨਹੀਂ ਹੈ. ਮਿਸ਼ਰਨ ਨੂੰ ਵਧਾਉਣ ਲਈ ਪੈਟਰਨ ਇੱਕ ਵਿਕਲਪਿਕ ਪ੍ਰਸਤਾਵ ਦਾ ਰੂਪ ਲੈਂਦੇ ਹਨ, ਇਸ ਤੋਂ ਬਾਅਦ ਬ੍ਰੇਸਿਜ਼ ਦੀ ਇੱਕ ਜੋੜਾ ਦੇ ਵਿਚਕਾਰ ਕਾਮੇ ਨਾਲ ਵੱਖ ਕੀਤੀ ਸਤਰਾਂ ਦੀ ਲੜੀ ਹੁੰਦੀ ਹੈ, ਇੱਕ ਵਿਕਲਪਿਕ ਪੋਸਟਕੀਟ ਦੇ ਬਾਅਦ ਪ੍ਰਸਤਾਵਨਾ ਬ੍ਰੇਸ ਦੇ ਅੰਦਰ ਹਰੇਕ ਸਤਰ ਲਈ ਪ੍ਰੀਫਿਕਸ ਹੈ, ਅਤੇ ਫਿਰ ਪੋਸਟ-ਸਕ੍ਰਿਪਟ ਫਿਰ ਤੋਂ ਹਰੇਕ ਤੋਂ ਬਣੀ ਸਤਰ ਦੇ ਨਾਲ ਜੋੜੀ ਜਾਂਦੀ ਹੈ, ਜਿਸ ਤੋਂ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਵਧ ਜਾਂਦੀ ਹੈ.

ਬ੍ਰੇਸ ਦੇ ਵਿਸਥਾਰ ਨੂੰ ਐਨਥਰਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਹਰੇਕ ਫੈਲਾ ਕੀਤੀਆਂ ਸਤਰਾਂ ਦੇ ਨਤੀਜੇ ਨਹੀਂ ਕ੍ਰਮਬੱਧ ਹਨ; ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਕ੍ਰਮ ਨੂੰ ਸੁਰੱਖਿਅਤ ਰੱਖਿਆ ਗਿਆ ਹੈ. ਉਦਾਹਰਨ ਲਈ, ਇੱਕ { d, c, b } e 'ਏਡਈ ਏਸੇ ਅਬੇ' ਵਿੱਚ ਫੈਲਿਆ ਹੋਇਆ ਹੈ.

ਬ੍ਰੇਸ ਦਾ ਵਿਸਥਾਰ ਕਿਸੇ ਹੋਰ ਵਿਸਥਾਰ ਤੋਂ ਪਹਿਲਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਨਤੀਜਿਆਂ ਵਿੱਚ ਦੂਜੇ ਪ੍ਰਸਾਰਿਆਂ ਲਈ ਖਾਸ ਕੋਈ ਵੀ ਅੱਖਰ ਸੁਰੱਖਿਅਤ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ. ਇਹ ਸਖਤੀ ਨਾਲ ਟੈਕਸਟ ਹੈ. ਬੈਸ ਵਿਸਤਾਰ ਦੇ ਪ੍ਰਸੰਗ ਜਾਂ ਬ੍ਰੇਸਿਜ਼ ਦੇ ਵਿਚਕਾਰਲੇ ਪਾਠ ਦੇ ਕਿਸੇ ਵੀ ਵਿਆਖਿਆਤਮਕ ਵਿਆਖਿਆ ਨੂੰ ਲਾਗੂ ਨਹੀਂ ਕਰਦਾ.

ਇਹ ਨਿਰਮਾਣ ਆਮ ਤੌਰ 'ਤੇ ਸ਼ਾਲਾਂਦ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਸਤਰ ਦੇ ਆਮ ਅਗੇਤਰ ਤਿਆਰ ਕੀਤੇ ਜਾਣਗੇ ਉਪਰੋਕਤ ਉਦਾਹਰਨ ਦੇ ਮੁਕਾਬਲੇ:

mkdir / usr / local / src / bash / {ਪੁਰਾਣਾ, ਨਵਾਂ, ਡਿਸਟਰਾ, ਬੱਗ}

ਜਾਂ

chown root / usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}}

ਬ੍ਰੇਸ ਦੇ ਵਿਸਥਾਰ ਵਿੱਚ sh ਦੇ ਇਤਿਹਾਸਕ ਵਰਜ਼ਨਾਂ ਨਾਲ ਮਾਮੂਲੀ ਅਨੁਰੂਪਤਾ ਮੌਜੂਦ ਹੈ. sh ਉਦਘਾਟਨੀ ਜਾਂ ਸਮਾਪਤੀ ਬ੍ਰੇਸ ਦਾ ਧਿਆਨ ਨਹੀਂ ਰੱਖਦਾ, ਖ਼ਾਸ ਤੌਰ 'ਤੇ ਜਦ ਉਹ ਸ਼ਬਦ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਪ੍ਰਗਟ ਹੁੰਦੇ ਹਨ, ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਆਉਟਪੁੱਟ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਕਰਦੇ ਹਨ. ਬੈਸ ਬ੍ਰੇਸ ਪਸਾਰ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਸ਼ਬਦਾਂ ਤੋਂ ਬ੍ਰੇਸਿਜ਼ ਨੂੰ ਹਟਾਉਂਦਾ ਹੈ. ਉਦਾਹਰਣ ਵਜੋਂ, {1,2} ਫਾਇਲ ਨੂੰ sh ਤੌਰ 'ਤੇ ਦਾਖਲ ਕੀਤਾ ਸ਼ਬਦ ਆਉਟਪੁੱਟ ਵਿੱਚ ਇਕੋ ਜਿਹਾ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ. ਇਕੋ ਸ਼ਬਦ ਆਉਟਪੁਟ ਹੈ ਜਿਸਦਾ ਫਾਈਲ 1 ਫਾਈਲ 2 ਹੈ . ਜੇ sh ਨਾਲ ਸਖ਼ਤ ਅਨੁਕੂਲਤਾ ਦੀ ਲੋੜ ਹੈ, + B ਵਿਕਲਪ ਨਾਲ ਸ਼ੁਰੂ ਕਰੋ ਜਾਂ ਸੈੱਟ ਕਮਾਂਡ ਨੂੰ + B ਚੋਣ ਨਾਲ ਬਰੇਸ ਦੇ ਵਿਸਥਾਰ ਨੂੰ ਅਯੋਗ ਕਰੋ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿੰਟਨ ਕਮਮਾਂ ਵੇਖੋ).

ਟਿਲਡਾ ਵਿਸਥਾਰ

ਜੇ ਕੋਈ ਸ਼ਬਦ ਨਾ-ਬਚੇ ਹੋਏ ਟਿਲਡੇ ਅੱਖਰ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ (` ~ '), ਪਹਿਲੇ ਅਣ-ਸਲੈਸ਼ ਸਲੈਸ਼ ਤੋਂ ਪਹਿਲਾਂ ਦੇ ਸਾਰੇ ਅੱਖਰ (ਜਾਂ ਸਾਰੇ ਅੱਖਰ, ਜੇ ਕੋਈ ਅਣ -ਨਾ- ਸਲੇਸ਼ ਨਹੀਂ ਹੈ) ਨੂੰ ਇੱਕ ਟਿਲਡ-ਅਗੇਤਰ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਜੇ ਟਿਡਲ-ਅਗੇਤਰ ਵਿੱਚ ਕੋਈ ਵੀ ਅੱਖਰ ਦਾ ਹਵਾਲਾ ਨਹੀਂ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਟਿਲਡ ਤੋਂ ਬਾਅਦ ਟਿਲਡ-ਅਗੇਤਰ ਵਾਲੇ ਅੱਖਰਾਂ ਨੂੰ ਇੱਕ ਸੰਭਵ ਲੌਗਿਨ ਨਾਮ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ ਇਹ ਲੌਗਇਨ ਨਾਮ ਸੁੱਜੀ ਸਟ੍ਰਿੰਗ ਹੈ, ਤਾਂ ਟਿਡਲ ਨੂੰ ਸ਼ੈੱਲ ਪੈਰਾਮੀਟਰ HOME ਦੇ ਮੁੱਲ ਨਾਲ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਜੇਕਰ HOME ਅਨਸੈਟ ਹੈ, ਤਾਂ ਸ਼ੈੱਲ ਨੂੰ ਚਲਾਉਣ ਵਾਲੇ ਉਪਭੋਗਤਾ ਦੀ ਘਰੇਲੂ ਡਾਇਰੈਕਟਰੀ ਨੂੰ ਇਸਦਾ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਨਹੀਂ ਤਾਂ, ਟਿੱਡਲ-ਅਗੇਤਰ ਨੂੰ ਨਿਸ਼ਚਤ ਲੌਗਇਨ ਨਾਮ ਨਾਲ ਜੁੜੀ ਘਰੇਲੂ ਡਾਇਰੈਕਟਰੀ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ.

ਜੇ ਟਿਡਲ-ਅਗੇਤਰ ਇੱਕ `~ 'ਹੈ, ਸ਼ੈੱਲ ਪਰਿਵਰਤਨਸ਼ੀਲ PWD ਦਾ ਮੁੱਲ ਟਿਡਲ-ਅਗੇਤਰ ਦੀ ਥਾਂ ਲੈਂਦਾ ਹੈ ਜੇ ਟਿਡਲ-ਅਗੇਤਰ ਇੱਕ `~ - 'ਹੈ, ਤਾਂ ਸ਼ੈੱਲ ਪਰਿਵਰਤਨਾਂ ਦੇ ਮੁੱਲ OLDPWD , ਜੇਕਰ ਇਹ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਸ ਨੂੰ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਜੇ ਟਿਡਲ-ਅਗੇਤਰ ਵਿਚਲੇ ਟਿਲਡ ਤੋਂ ਬਾਅਦ ਵਾਲੇ ਅੱਖਰ ਨੂੰ ਇੱਕ ਨੰਬਰ N , ਚੋਣਵੇਂ ਰੂਪ ਵਿੱਚ ਇੱਕ `+ 'ਜਾਂ' - 'ਦੁਆਰਾ ਪ੍ਰੀਫਿਕਸ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਟਿਲਡ-ਅਗੇਤਰ ਨੂੰ ਡਾਇਰੈਕਟਰੀ ਸਟੈਕ ਤੋਂ ਸੰਬੰਧਿਤ ਤੱਤ ਨਾਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ਕਿਉਂਕਿ ਇਹ ਪ੍ਰਦਰਸ਼ਿਤ ਕੀਤਾ ਜਾਵੇਗਾ ਇੱਕ ਦਲੀਲ ਦੇ ਤੌਰ ਤੇ tilde-prefix ਨਾਲ ਅਰੰਭ ਕੀਤੇ ਡਾਇਸ ਬਿਲਟਿਨ ਦੁਆਰਾ. ਜੇ ਟਿਡਲ-ਅਗੇਤਰ ਵਿਚਲੇ ਟਿਲਡ ਤੋਂ ਬਾਅਦ ਵਾਲੇ ਅੱਖਰ ਵਿੱਚ ਕਿਸੇ ਪ੍ਰਮੁੱਖ `+ 'ਜਾਂ` -' ਬਿਨਾਂ ਇੱਕ ਨੰਬਰ ਹੁੰਦਾ ਹੈ, ਤਾਂ `+ 'ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ.

ਜੇਕਰ ਲੌਗਇਨ ਨਾਮ ਅਵੈਧ ਹੈ, ਜਾਂ ਟਿਲਡਰ ਦਾ ਵਿਸਥਾਰ ਅਸਫਲ ਹੋ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਸ਼ਬਦ ਅਸਧਾਰਣ ਹੈ.

ਹਰੇਕ ਵੇਰੀਏਬਲ ਅਸਾਈਨਮੈਂਟ ਅਣ-ਪੱਕਾ ਟਿੱਡਲ-ਪ੍ਰੀਫਿਕਸ ਲਈ ਚੈੱਕ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜੋ ਕਿ : ਇਹਨਾਂ ਮਾਮਲਿਆਂ ਵਿੱਚ, ਟਿਲਡ ਦਾ ਵਿਸਥਾਰ ਵੀ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਸਿੱਟੇ ਵਜੋਂ, ਕੋਈ ਵਿਅਕਤੀ ਫਾਈਲਾਂ ਦੇ ਨਾਂ ਨੂੰ PATH , MAILPATH , ਅਤੇ CDPATH ਦੇ ਟਿਲਡਸ ਨਾਲ ਵਰਤ ਸਕਦਾ ਹੈ, ਅਤੇ ਸ਼ੈੱਲ ਫੈਲਿਆ ਹੋਇਆ ਮੁੱਲ ਨਿਰਧਾਰਤ ਕਰਦਾ ਹੈ.

ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ

` $ 'ਅੱਖਰ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਹੁਕਮ ਬਦਲਣ, ਜਾਂ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਤਾਰ ਨੂੰ ਪੇਸ਼ ਕਰਦਾ ਹੈ. ਪੈਰਾਮੀਟਰ ਨਾਮ ਜਾਂ ਚਿੰਨ੍ਹ ਦਾ ਵਿਸਥਾਰ ਕਰਨਾ ਬ੍ਰੇਸ ਵਿੱਚ ਨਜਿੱਠਿਆ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ ਕਿ ਵਿਕਲਪਿਕ ਹੈ ਪਰ ਉਸ ਦੀ ਪਾਲਣਾ ਕਰਨ ਵਾਲੇ ਵੇਰੀਏਬਲ ਦੀ ਰੱਖਿਆ ਕਰਨ ਲਈ ਸੇਵਾ ਕਰਦਾ ਹੈ ਜੋ ਇਸਦੇ ਬਾਅਦ ਤੁਰੰਤ ਅੱਖਰਾਂ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜਿਸਦਾ ਨਾਮ ਦੇ ਹਿੱਸੇ ਦੇ ਤੌਰ ਤੇ ਅਰਥ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ.

ਜਦੋਂ ਬ੍ਰੇਸਿਜ਼ ਵਰਤੇ ਜਾਂਦੇ ਹਨ, ਤਾਂ ਮੇਲਿੰਗ ਐਂਡਿੰਗ ਬਰੇਸ ਪਹਿਲੀ ਬੈਕਟੀਲੇਸ਼ ਜਾਂ ਕਿਸੇ ਹਵਾਲਾਤੀ ਸਤਰ ਦੇ ਅੰਦਰ ਨਹੀਂ ਬਚੀ ਹੈ, ਅਤੇ ਐਂਬੈਬ੍ਰਿਪਡ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਤਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਨਿਧੀ ਜਾਂ ਪੈਰਾਮੀਟਰ ਦੇ ਵਿਸਤਾਰ ਦੇ ਅੰਦਰ ਨਹੀਂ ਹੈ.

ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਬ੍ਰੇਸ ਦੀ ਲੋੜ ਪੈਂਦੀ ਹੈ ਜਦੋਂ ਮਾਪਦੰਡ ਇੱਕ ਪੋਜੀਸ਼ਨਲ ਪੈਰਾਮੀਟਰ ਹੁੰਦਾ ਹੈ, ਇੱਕ ਤੋਂ ਵੱਧ ਅੰਕਾਂ ਨਾਲ, ਜਾਂ ਜਦੋਂ ਪੈਰਾਮੀਟਰ ਨੂੰ ਇੱਕ ਅੱਖਰ ਦੇ ਬਾਅਦ ਪਾਲਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਜਿਸਦਾ ਨਾਂ ਇਸਦੇ ਨਾਮ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਨਹੀਂ ਕੱਢਿਆ ਜਾਣਾ ਹੈ

ਹੇਠਲੇ ਹਰੇਕ ਕੇਸ ਵਿੱਚ, ਸ਼ਬਦ ਟਿਲਡ ਵਾਧੇ, ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਬਦਤੀ ਅਤੇ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ ਦੇ ਅਧੀਨ ਹੈ. ਜਦੋਂ ਸਬਸਟਿਰੰਗ ਵਿਸਥਾਰ ਨਾ ਕਰ ਰਿਹਾ ਹੋਵੇ, ਤਾਂ ਅਨਿਸ਼ਚਿਤ ਜਾਂ ਬੇਤਰਤੀ ਜਾਣ ਵਾਲੇ ਪੈਰਾਮੀਟਰ ਲਈ ਟੈਸਟ ਕਰੋ; ਕੋਲਾਨ ਨੂੰ ਛੱਡ ਕੇ ਸਿਰਫ ਕਿਸੇ ਪੈਰਾਮੀਟਰ ਦੇ ਲਈ ਟੈਸਟ ਵਿੱਚ ਨਤੀਜਾ ਆਉਂਦਾ ਹੈ ਜੋ ਅਨਸੈਟ ਹੈ.

ਮੂਲ ਮੁੱਲ ਵਰਤੋ ਜੇ ਮਾਪਦੰਡ ਅਨਸੈਟ ਜਾਂ ਬੇਤਰਤੀਬ ਹੈ, ਤਾਂ ਸ਼ਬਦ ਦਾ ਪਸਾਰਾ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ. ਨਹੀਂ ਤਾਂ, ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ.

ਮੂਲ ਮੁੱਲ ਦਿਓ ਜੇ ਪੈਰਾਮੀਟਰ ਅਨਸੈਟ ਜਾਂ ਬੇਅਰ ਹੈ, ਤਾਂ ਪੈਰਾਮੀਟਰ ਨੂੰ ਸ਼ਬਦ ਦਾ ਪਸਾਰ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ. ਫਿਰ ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ. ਸਥਿਤੀ ਦੇ ਮਾਪਦੰਡ ਅਤੇ ਵਿਸ਼ੇਸ਼ ਮਾਪਦੰਡ ਇਸ ਤਰੀਕੇ ਨਾਲ ਨਹੀਂ ਨਿਰਧਾਰਤ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ.

ਡਿਸਪਲੇਅ ਗਲਤੀ ਜੇ ਨੱਲ ਜਾਂ ਅਨਸੈਟ ਜੇ ਪੈਰਾਮੀਟਰ ਬੇਅਰਡ ਜਾਂ ਅਨਸੈਟ ਹੈ, ਤਾਂ ਸ਼ਬਦ ਦਾ ਪਸਾਰ (ਜਾਂ ਜੇ ਸ਼ਬਦ ਮੌਜੂਦ ਨਹੀਂ ਹੈ ਤਾਂ ਉਸ ਨੂੰ ਪ੍ਰਭਾਵ ਦੇਣ ਵਾਲਾ ਸੁਨੇਹਾ) ਸਟੈਂਡਰਡ ਐਰਰ ਅਤੇ ਸ਼ੈੱਲ ਨੂੰ ਲਿਖਿਆ ਜਾਂਦਾ ਹੈ, ਜੇ ਇਹ ਇੰਟਰੈਕਟਿਵ ਨਹੀਂ ਹੁੰਦਾ, ਤਾਂ ਬਾਹਰ ਨਿਕਲਦਾ ਹੈ. ਨਹੀਂ ਤਾਂ, ਪੈਰਾਮੀਟਰ ਦਾ ਮੁੱਲ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ.

ਵਿਕਲਪਿਕ ਵੈਲਯੂ ਦੀ ਵਰਤੋਂ ਕਰੋ ਜੇ ਪੈਰਾਮੀਟਰ ਬੇਅਰਡ ਜਾਂ ਅਣਸੁਲਝਿਆ ਹੈ, ਤਾਂ ਕੁਝ ਨਹੀਂ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ, ਨਹੀਂ ਤਾਂ ਸ਼ਬਦ ਦਾ ਪਸਾਰਾ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ.

ਉਹਨਾਂ ਵੇਰੀਏਬਲ ਦੇ ਨਾਂ ਨੂੰ ਵਿਸਤਾਰ ਕਰੋ ਜਿਹਨਾਂ ਦੇ ਨਾਂ ਪ੍ਰੀ-ਫਿਕਸ ਤੋਂ ਸ਼ੁਰੂ ਹੁੰਦੇ ਹਨ, IFS ਵਿਸ਼ੇਸ਼ ਵੇਰੀਏਬਲ ਦੇ ਪਹਿਲੇ ਅੱਖਰ ਦੁਆਰਾ ਵੱਖ ਕੀਤੇ ਹਨ.

ਪੈਰਾਮੀਟਰ ਦੇ ਮੁੱਲ ਦੇ ਅੱਖਰਾਂ ਵਿੱਚ ਲੰਬਾਈ ਨੂੰ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਜੇ ਪੈਰਾਮੀਟਰ * ਜਾਂ @ ਹੈ , ਤਾਂ ਬਦਲੇ ਗਏ ਮੁੱਲ ਨੂੰ ਸਥਾਨਿਕ ਮਾਪਦੰਡਾਂ ਦੀ ਗਿਣਤੀ ਹੈ. ਜੇ ਪੈਰਾਮੀਟਰ ਇਕ ਅਰੇ ਨਾਮ ਹੈ ਜੋ ਕਿ * ਜਾਂ @ ਦੁਆਰਾ ਸਬਸਕ੍ਰਿਪਟ ਕੀਤਾ ਹੈ, ਤਾਂ ਅਤਿਰਿਕਤ ਮੁੱਲ ਐਰੇ ਵਿਚਲੇ ਤੱਤਾਂ ਦੀ ਗਿਣਤੀ ਹੈ.

ਇਹ ਸ਼ਬਦ ਪੈਟਰਨਾਂ ਦੇ ਵਿਸਤਾਰ ਦੇ ਰੂਪ ਵਿੱਚ ਇੱਕ ਪੈਟਰਨ ਤਿਆਰ ਕਰਨ ਲਈ ਫੈਲਾਇਆ ਗਿਆ ਹੈ. ਜੇ ਪੈਟਰਨ ਪੈਰਾਮੀਟਰ ਦੇ ਮੁੱਲ ਦੀ ਸ਼ੁਰੂਆਤ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਤਾਂ ਵਿਸਥਾਰ ਦਾ ਨਤੀਜਾ ਪੈਰਾਮੀਟਰ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਮੁੱਲ ਹੁੰਦਾ ਹੈ, ਜੋ ਸਭ ਤੋਂ ਘੱਟ ਮੇਲਿੰਗ ਪੈਟਰਨ (`` # '' ਕੇਸ) ਜਾਂ ਲੰਬਾ ਮੇਲਿੰਗ ਪੈਟਰਨ (`` ## ' 'ਕੇਸ) ਮਿਟਾਏ ਗਏ. ਜੇ ਪੈਰਾਮੀਟਰ @ ਜਾਂ * ਹੈ , ਤਾਂ ਪੈਟਰਨ ਹਟਾਉਣ ਕਾਰਵਾਈ ਨੂੰ ਹਰ ਮੋਸ਼ਨਲ ਪੈਰਾਮੀਟਰ ਨੂੰ ਬਦਲੇ ਵਿੱਚ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ ਜੇ ਪੈਰਾਮੀਟਰ ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ ਹੈ ਜੋ ਕਿ @ ਜਾਂ * ਦੇ ਨਾਲ ਸਬਸਕਰਿਪਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਪੈਟਰਨ ਹਟਾਉਣ ਕਾਰਵਾਈ ਨੂੰ ਬਦਲੇ ਵਿੱਚ ਐਰੇ ਦੇ ਹਰੇਕ ਮੈਂਬਰ ਲਈ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ.

ਇਹ ਸ਼ਬਦ ਪੈਟਰਨਾਂ ਦੇ ਵਿਸਤਾਰ ਦੇ ਰੂਪ ਵਿੱਚ ਇੱਕ ਪੈਟਰਨ ਤਿਆਰ ਕਰਨ ਲਈ ਫੈਲਾਇਆ ਗਿਆ ਹੈ. ਜੇ ਪੈਟਰਨ ਪੈਰਾਮੀਟਰ ਦੇ ਫੈਲੇ ਮੁੱਲ ਦੇ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਤਾਂ ਵਿਸਥਾਰ ਦਾ ਨਤੀਜਾ ਪੈਰਾਮੀਟਰ ਦਾ ਫੈਲਾਇਆ ਮੁੱਲ ਹੈ, ਜੋ ਕਿ ਸਭ ਤੋਂ ਘੱਟ ਮੇਲਿੰਗ ਪੈਟਰਨ (`` % '' ਕੇਸ) ਜਾਂ ਲੰਬਾ ਮੇਲਿੰਗ ਪੈਟਰਨ (`` % % '' ਕੇਸ) ਮਿਟਾਏ ਗਏ. ਜੇ ਪੈਰਾਮੀਟਰ @ ਜਾਂ * ਹੈ , ਤਾਂ ਪੈਟਰਨ ਹਟਾਉਣ ਕਾਰਵਾਈ ਨੂੰ ਹਰ ਮੋਸ਼ਨਲ ਪੈਰਾਮੀਟਰ ਨੂੰ ਬਦਲੇ ਵਿੱਚ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ ਜੇ ਪੈਰਾਮੀਟਰ ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ ਹੈ ਜੋ ਕਿ @ ਜਾਂ * ਦੇ ਨਾਲ ਸਬਸਕਰਿਪਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਪੈਟਰਨ ਹਟਾਉਣ ਕਾਰਵਾਈ ਨੂੰ ਬਦਲੇ ਵਿੱਚ ਐਰੇ ਦੇ ਹਰੇਕ ਮੈਂਬਰ ਲਈ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ.

ਪੈਟਰਨ ਨੂੰ ਇੱਕ ਪੈਟਰਨ ਤਿਆਰ ਕਰਨ ਲਈ ਫੈਲਾਇਆ ਗਿਆ ਹੈ ਜਿਵੇਂ ਕਿ ਪੈਥਨਾਮ ਵਿਸਥਾਰ ਵਿੱਚ. ਪੈਰਾਮੀਟਰ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇਸਦੇ ਵੈਲਯੂ ਦੇ ਉਲਟ ਪੈਟਰਨ ਦਾ ਲੰਬਾ ਮੈਚ ਸਤਰ ਨਾਲ ਬਦਲਿਆ ਗਿਆ ਹੈ. ਪਹਿਲੇ ਰੂਪ ਵਿੱਚ, ਸਿਰਫ ਪਹਿਲਾ ਮੈਚ ਹੀ ਬਦਲਿਆ ਜਾਂਦਾ ਹੈ. ਦੂਸਰਾ ਫਾਰਮ ਸਤਰ ਨਾਲ ਬਦਲਣ ਲਈ ਪੈਟਰਨ ਦੇ ਸਾਰੇ ਮੈਚਾਂ ਦਾ ਕਾਰਨ ਬਣਦਾ ਹੈ. ਜੇ ਪੈਟਰਨ # ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਪੈਰਾਮੀਟਰ ਦੇ ਫੈਲਾਅ ਮੁੱਲ ਦੇ ਸ਼ੁਰੂ ਵਿਚ ਮੇਲ ਖਾਂਦਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ. ਜੇ ਪੈਟਰਨ % ਦੇ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਇਹ ਪੈਰਾਮੀਟਰ ਦੇ ਫੈਲਾਅ ਮੁੱਲ ਦੇ ਅੰਤ ਵਿਚ ਮੇਲ ਖਾਂਦਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ. ਜੇ ਸਤਰ ਖਾਲੀ ਹੈ, ਪੈਟਰਨ ਦੇ ਮੇਲ ਮਿਟਾਏ ਜਾਂਦੇ ਹਨ ਅਤੇ / ਹੇਠਾਂ ਦਿੱਤੇ ਪੈਟਰਨ ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਜੇ ਪੈਰਾਮੀਟਰ @ ਜਾਂ * ਹੈ , ਤਾਂ ਪ੍ਰਤੀਸਟੇਸ਼ਨ ਓਪਰੇਸ਼ਨ ਹਰ ਮੋਸ਼ਨਲ ਪੈਰਾਮੀਟਰ ਨੂੰ ਬਦਲੇ ਵਿਚ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ. ਜੇ ਪੈਰਾਮੀਟਰ ਇੱਕ ਐਰੇ ਵੇਰੀਏਬਲ ਹੈ ਜੋ @ ਜਾਂ * ਦੇ ਨਾਲ subscripted ਹੈ, ਬਦਲੇ ਵਿੱਚ ਅਰੇ ਦੇ ਹਰੇਕ ਮੈਂਬਰ ਨੂੰ ਪ੍ਰਤੀਸਥਾਪਨ ਕਾਰਵਾਈ ਲਾਗੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਵਿਸਥਾਰ ਨਤੀਜਾ ਸੂਚੀ ਹੈ.

ਕਮਾਂਡ ਸੰਪੂਰਨਤਾ

ਕਮਾਂਡ ਬਦਲਣ ਨਾਲ ਕਮਾਂਡ ਦੇ ਨਾਮ ਨੂੰ ਬਦਲਣ ਲਈ ਕਮਾਂਡ ਦੀ ਆਊਟਪੁੱਟ ਦੀ ਇਜਾਜਤ ਮਿਲਦੀ ਹੈ. ਦੋ ਰੂਪ ਹਨ:

$ ( ਕਮਾਂਡ )

ਜਾਂ

` ਹੁਕਮ`

Bash ਕਮਾਂਟ ਨੂੰ ਚਲਾਉਣ ਅਤੇ ਕਮਾਂਡ ਦੇ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਨਾਲ ਕਮਾਂਡ ਪ੍ਰਤੀਬਿੰਬ ਨੂੰ ਬਦਲ ਕੇ ਵਿਸਤਾਰ ਕਰਦਾ ਹੈ, ਕਿਸੇ ਵੀ ਸ਼ੁਰੂਆਤੀ ਨਵੀਆਂ ਧਾਰੀਆਂ ਨੂੰ ਮਿਟਾ ਕੇ. ਏਮਬੇਡ ਕੀਤੀਆਂ ਨਵੀਆਂ ਕਤਾਰਾਂ ਨਹੀਂ ਹਟਾਈਆਂ ਗਈਆਂ ਹਨ, ਪਰ ਇਹਨਾਂ ਨੂੰ ਸ਼ਬਦ ਵੰਡਣ ਦੌਰਾਨ ਹਟਾ ਦਿੱਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਕਮਾਂਡ ਪ੍ਰਤੀਬਿੰਬ $ (cat ਫਾਇਲ ) ਨੂੰ ਬਰਾਬਰ ਦੀ ਥਾਂ ਤੇ ਤਬਦੀਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਪਰ $ $ (< ਫਾਇਲ ).

ਜਦੋਂ ਪੁਰਾਣਾ-ਸ਼ੈਲੀ ਬੈਕਕੁਟ ਬਣਦੀ ਹੈ, ਤਾਂ ਬੈਕਸਲਾਸ਼ ਇਸਦਾ ਅਸਲੀ ਅਰਥ ਬਰਕਰਾਰ ਰੱਖਦਾ ਹੈ ਸਿਵਾਏ ਕਿ $ , ` , ਜਾਂ ' ਤੋਂ ਬਾਅਦ. ਬੈਕਸਲੇਸ਼ ਦੁਆਰਾ ਪਹਿਲਾਂ ਬੈਕਕੁਟ ਨਹੀਂ ਹੁੰਦਾ, ਕਮਾਂਡ ਬਦਲਣ ਨੂੰ ਖਤਮ ਕਰਦਾ ਹੈ. $ ( ਕਮਾਂਡ ) ਫਾਰਮ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਸਮੇਂ, ਬਰੈਕਟਾਂ ਦੇ ਸਾਰੇ ਅੱਖਰ ਕਮਾਂਡ ਬਣਾਉਂਦੇ ਹਨ; ਕਿਸੇ ਨੂੰ ਵਿਸ਼ੇਸ਼ ਤੌਰ ਤੇ ਨਹੀਂ ਵਰਤਿਆ ਜਾਂਦਾ.

ਕਮਾਂਡ ਵਰਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ. ਬੈਕਕੌਟਡ ਫਾਰਮ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ ਆਲ੍ਹਣਾ ਕਰਨ ਲਈ, ਅੰਦਰੂਨੀ ਬੈਕਕੋਟਸ ਨੂੰ ਬੈਕਸਲੇਸ਼ਸ ਨਾਲ ਛੁਪਾਓ

ਜੇ ਪ੍ਰਤੀਭੂਤੀ ਡਬਲ ਕੋਟਸ ਵਿੱਚ ਦਿਸਦੀ ਹੈ, ਸ਼ਬਦ ਵੰਡਣ ਅਤੇ ਪਥਨਾਮ ਪਸਾਰ ਨਤੀਜੇ ਦੇ ਨਤੀਜੇ ਤੇ ਨਹੀਂ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ

ਅੰਕਗਣਿਤਕ ਵਿਸਤਾਰ ਇੱਕ ਅੰਕਗਣਿਤ ਸਮੀਕਰਨ ਦਾ ਮੁਲਾਂਕਣ ਅਤੇ ਨਤੀਜਾ ਬਦਲਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ. ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ ਲਈ ਫੌਰਮੈਟ ਇਹ ਹੈ:

$ (( ਸਮੀਕਰਨ ))

ਐਕਸਪ੍ਰੇਸ਼ਨ ਨੂੰ ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ ਜਿਵੇਂ ਇਹ ਡਬਲ ਕੋਟਸ ਵਿੱਚ ਹੁੰਦਾ ਹੈ, ਪਰ ਬਰੈਕਟਾਂ ਦੇ ਅੰਦਰ ਇੱਕ ਡਬਲ ਕੋਟ ਵਿਸ਼ੇਸ਼ ਤੌਰ ਤੇ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ. ਸਮੀਕਰਨ ਵਿੱਚ ਸਾਰੇ ਟੋਕਨ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਸਟ੍ਰਿੰਗ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਨਿਧੀ, ਅਤੇ ਹਵਾਲਾ ਕੱਢਣ ਦੇ ਅਧੀਨ ਹਨ. ਅੰਕਗਣਿਤ ਦੇ ਪ੍ਰਤੀਭੂਤੀਆਂ ਨੂੰ ਨੈਸਟਡ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ.

ਅੰਡਰਮੇਟਿਕ ਦੇ ਅਨੁਮਾਨ ਹੇਠਾਂ ਸੂਚੀਬੱਧ ਨਿਯਮਾਂ ਅਨੁਸਾਰ ਇਹ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ . ਜੇਕਰ ਸਮੀਕਰਨ ਅਵੈਧ ਹੈ, bash ਇੱਕ ਸੁਨੇਹਾ ਦਰਸਾਉਂਦਾ ਹੈ ਜੋ ਅਸਫਲਤਾ ਦਾ ਸੰਕੇਤ ਹੈ ਅਤੇ ਕੋਈ ਬਦਲ ਨਹੀਂ ਵਾਪਰਦਾ.

ਪ੍ਰਕਿਰਿਆ ਸੰਪੂਰਨਤਾ

ਪ੍ਰਕਿਰਿਆ ਪ੍ਰਤੀਭੂਤੀ ਉਹਨਾਂ ਸਿਸਟਮਾਂ ਤੇ ਸਮਰਥਿਤ ਹੈ ਜੋ ਨਾਮ ਵਾਲੇ ਪਾਈਪਾਂ ( FIFO ) ਜਾਂ ਓਪਨ ਫਾਈਲਾਂ ਦੇ ਨਾਮ ਦੇਣ ਦੇ / dev / fd ਢੰਗ ਨੂੰ ਸਹਿਯੋਗ ਦਿੰਦੇ ਹਨ. ਇਹ <( ਸੂਚੀ ) ਜਾਂ > ( ਸੂਚੀ ) ਦਾ ਰੂਪ ਲੈਂਦਾ ਹੈ. ਪ੍ਰਕਿਰਿਆ ਸੂਚੀ ਨੂੰ ਉਸਦੇ ਇੰਪੁੱਟ ਜਾਂ ਫਿਫਓ ਨਾਲ ਜੁੜੇ ਆਊਟਪੁਟ ਨਾਲ ਜਾਂ / dev / fd ਵਿੱਚ ਕੁਝ ਫਾਈਲ ਨਾਲ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਵਿਸਥਾਰ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਇਸ ਫਾਈਲ ਦਾ ਨਾਮ ਵਰਤਮਾਨ ਕਮਾਂਡ ਵਿੱਚ ਆਰਗੂਮੈਂਟ ਵਜੋਂ ਪਾਸ ਕੀਤਾ ਗਿਆ ਹੈ. ਜੇ > ( ਸੂਚੀ ) ਫਾਰਮ ਵਰਤਿਆ ਗਿਆ ਹੈ, ਤਾਂ ਫਾਈਲ ਵਿਚ ਲਿਖਣ ਨਾਲ ਸੂਚੀ ਲਈ ਇੰਪੁੱਟ ਦਿੱਤੀ ਜਾਵੇਗੀ . ਜੇ <( ਸੂਚੀ ) ਫਾਰਮ ਵਰਤਿਆ ਗਿਆ ਹੈ, ਤਾਂ ਆਰਗੂਮੈਂਟ ਦੇ ਤੌਰ ਤੇ ਪਾਸ ਕੀਤੀ ਗਈ ਫਾਇਲ ਨੂੰ ਸੂਚੀ ਦੇ ਆਊਟਪੁੱਟ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਪੜ੍ਹਨਾ ਚਾਹੀਦਾ ਹੈ.

ਜਦੋਂ ਉਪਲਬਧ ਹੋਵੇ, ਪ੍ਰਕਿਰਿਆ ਪ੍ਰਤੀਕਿਰਿਆ ਇਕੋ ਸਮੇਂ ਪੈਰਾਮੀਟਰ ਅਤੇ ਪਰਿਵਰਤਨਸ਼ੀਲ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ, ਅਤੇ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਤਾਰ ਨਾਲ ਕੀਤੀ ਜਾਂਦੀ ਹੈ.

ਸ਼ਬਦ ਨੂੰ ਵੰਡਣਾ

ਸ਼ੈੱਲ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਬਦਲ, ਅਤੇ ਅੰਕਗਣਿਤ ਦੇ ਪਸਾਰ ਦੇ ਨਤੀਜਿਆਂ ਨੂੰ ਸਕੈਨ ਕਰਦਾ ਹੈ ਜੋ ਸ਼ਬਦ ਵੰਡਣ ਲਈ ਡਬਲ ਕੋਟਸ ਦੇ ਅੰਦਰ ਨਹੀਂ ਹੁੰਦਾ.

ਸ਼ੈੱਲ ਇਕ ਅੱਖਰ ਦੇ ਤੌਰ ਤੇ ਆਈਐਫਐਸ ਦੇ ਹਰ ਇੱਕ ਅੱਖਰ ਨੂੰ ਮੰਨਦਾ ਹੈ, ਅਤੇ ਇਹਨਾਂ ਅੱਖਰਾਂ ਦੇ ਸ਼ਬਦਾਂ ਦੇ ਦੂਜੇ ਪ੍ਰਸਾਰਨਾਂ ਦੇ ਨਤੀਜਿਆਂ ਨੂੰ ਵੰਡਦਾ ਹੈ. ਜੇ ਆਈਐਫਐਸ ਅਨਸੈਟ ਹੈ, ਜਾਂ ਇਸਦੀ ਵੈਲਯੂ ਬਿਲਕੁਲ , ਮੂਲ ਹੈ, ਤਾਂ ਆਈਐਫਐਸ ਅੱਖਰਾਂ ਦਾ ਕੋਈ ਕ੍ਰਮ ਸ਼ਬਦ ਨੂੰ ਸੀਮਿਤ ਕਰਨ ਲਈ ਕੰਮ ਕਰਦਾ ਹੈ. ਜੇ IFS ਕੋਲ ਡਿਫਾਲਟ ਤੋਂ ਇਲਾਵਾ ਕੋਈ ਹੋਰ ਮੁੱਲ ਹੈ, ਤਾਂ ਵਾਈਲਸਪੇਸ ਅੱਖਰ ਨੂੰ ਆਈਐਫਐਸ ( ਆਈਐਫਐਸ ਵ੍ਹਾਈਟਪੇਸ ਅੱਖਰ) ਦੇ ਮੁੱਲ ਵਿਚ ਹੈ, ਉਦੋਂ ਤੱਕ ਵ੍ਹਾਈਟਪੇਸ ਅੱਖਰ ਸਪੇਸ ਅਤੇ ਟੈਬ ਸ਼ਬਦ ਦੀ ਸ਼ੁਰੂਆਤ ਅਤੇ ਅੰਤ ਵਿਚ ਅਣਡਿੱਠ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਆਈਐਫਐਸ ਵਿਚ ਕੋਈ ਵੀ ਅੱਖਰ ਜਿਹੜਾ ਆਈਐਫਐਸ ਵ੍ਹਾਈਟਪੇਸ ਨਹੀਂ ਹੈ, ਕਿਸੇ ਵੀ ਨਾਲ ਲੱਗਵੇਂ ਆਈਐਫਐਸ ਵ੍ਹਾਈਟਪੇਸ ਅੱਖਰਾਂ ਦੇ ਨਾਲ, ਇਕ ਖੇਤਰ ਨੂੰ ਸੀਮਿਤ ਕਰਦਾ ਹੈ. ਆਈਐਫਐਸ ਵ੍ਹਾਈਟਪੇਸ ਅੱਖਰਾਂ ਦਾ ਇੱਕ ਲੜੀ ਵੀ ਡੀਲਿਮਟਰ ਦੇ ਤੌਰ ਤੇ ਵਰਤੀ ਜਾਂਦੀ ਹੈ. ਜੇਕਰ ਆਈਐਫਐਲ ਦਾ ਮੁੱਲ ਖਾਲੀ ਹੈ, ਤਾਂ ਕੋਈ ਸ਼ਬਦ- ਬਟ ਕਰਨਾ ਸੰਭਵ ਨਹੀਂ ਹੁੰਦਾ.

ਸਪੱਸ਼ਟ NULL ਆਰਗੂਮੈਂਟ ( "" ਜਾਂ "" ) ਰੱਖੇ ਜਾਂਦੇ ਹਨ. ਅਣਗਿਣਤ ਨਾਜਾਇਜ਼ ਬੇਤਰਤੀਬ ਬਹਿਸਾਂ, ਜਿਸਦਾ ਮੁੱਲ ਨਹੀਂ ਹੈ, ਦੇ ਪੈਰਾਮੀਟਰ ਦੇ ਵਿਸਥਾਰ ਦੇ ਨਤੀਜੇ ਹਟਾ ਦਿੱਤੇ ਗਏ ਹਨ. ਜੇ ਕੋਈ ਮੁੱਲ ਵਾਲਾ ਕੋਈ ਪੈਰਾਮੀਟਰ ਡਬਲ ਕੋਟਸ ਵਿੱਚ ਫੈਲਿਆ ਨਹੀਂ ਜਾਂਦਾ ਹੈ, ਇੱਕ ਨਿਕਾਰਾ ਬਹਿਸ ਨਤੀਜੇ ਅਤੇ ਇਸਨੂੰ ਬਰਕਰਾਰ ਰੱਖਿਆ ਜਾਂਦਾ ਹੈ.

ਨੋਟ ਕਰੋ ਕਿ ਜੇ ਕੋਈ ਵਿਸਥਾਰ ਨਹੀਂ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਕੋਈ ਵੰਡ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ.

ਪਾਥਨਾਮ ਪਸਾਰ

ਸ਼ਬਦ ਨੂੰ ਵੰਡਣ ਦੇ ਬਾਅਦ, ਜਦ ਤੱਕ ਕਿ -f ਚੋਣ ਨੂੰ ਸੈੱਟ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ, bash ਅੱਖਰਾਂ * ਲਈ ਹਰੇਕ ਸ਼ਬਦ ਨੂੰ ਸਕੈਨ ਕਰਦਾ ਹੈ ? , ਅਤੇ [ . ਜੇ ਇਹਨਾਂ ਵਿਚੋਂ ਕੋਈ ਅੱਖਰ ਨਜ਼ਰ ਆਉਂਦੇ ਹਨ, ਤਾਂ ਸ਼ਬਦ ਨੂੰ ਇੱਕ ਪੈਟਰਨ ਸਮਝਿਆ ਜਾਂਦਾ ਹੈ , ਅਤੇ ਪੈਟਰਨ ਨਾਲ ਮਿਲਦੇ ਫਾਈਲ ਨਾਮਾਂ ਦੀ ਇੱਕ ਵਰਣਮਾਲਾ ਅਨੁਸਾਰ ਕ੍ਰਮਬੱਧ ਸੂਚੀ ਨਾਲ ਤਬਦੀਲ ਕੀਤਾ ਗਿਆ ਹੈ. ਜੇ ਕੋਈ ਮੇਲ ਖਾਂਦੇ ਫਾਈਲ ਨਾਂ ਨਹੀਂ ਮਿਲੇ ਹਨ, ਅਤੇ ਸ਼ੈੱਲ ਵਿਕਲਪ nullglob ਨੂੰ ਅਯੋਗ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਸ਼ਬਦ ਨੂੰ ਕੋਈ ਬਦਲਾਅ ਨਹੀਂ ਰੱਖਿਆ ਗਿਆ ਹੈ. ਜੇ nullglob ਚੋਣ ਸੈਟ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਅਤੇ ਕੋਈ ਮੇਲ ਨਹੀਂ ਮਿਲਦੇ, ਸ਼ਬਦ ਨੂੰ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ ਸ਼ੈੱਲ ਵਿਕਲਪ nocaseglob ਨੂੰ ਯੋਗ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਇਹ ਮੈਚ ਅੱਖਰਕ੍ਰਮ ਦੇ ਅੱਖਰਾਂ ਦੇ ਮਾਮਲੇ ਤੋਂ ਬਿਨਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜਦੋਂ ਇੱਕ ਪੈਟਰਨ ਪਥ-ਨਾਂ ਦੇ ਵਿਸਥਾਰ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇੱਕ ਨਾਂ ਦੀ ਸ਼ੁਰੂਆਤ ' ਤੇ ਅੱਖਰ ``.' ' ਜਾਂ ਸਲੇਸ਼ ਤੋਂ ਬਾਅਦ ਤੁਰੰਤ ਸਪਸ਼ਟ ਰੂਪ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਜਦੋਂ ਤੱਕ ਕਿ ਸ਼ੈਲ ਚੋਣ dotglob ਸੈਟ ਨਹੀਂ ਕੀਤੀ ਜਾਂਦੀ. ਜਦੋਂ ਇੱਕ ਪਾਥ ਨਾਂ ਮਿਲਦਾ ਹੈ, ਤਾਂ ਸਲੈਸ਼ ਅੱਖਰ ਹਮੇਸ਼ਾ ਸਪਸ਼ਟ ਰੂਪ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ. ਦੂਜੇ ਮਾਮਲਿਆਂ ਵਿੱਚ, ``. '' ਅੱਖਰ ਨੂੰ ਖਾਸ ਤੌਰ ਤੇ ਨਹੀਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ. Nocaseglob , nullglob , ਅਤੇ ਡੌਟਗਿਲ ਸ਼ੈੱਲ ਵਿਕਲਪਾਂ ਦੇ ਵੇਰਵੇ ਲਈ ਸ਼ੈਲ ਬਿਲਟਨ ਕਮਾਂਡਜ਼ ਦੇ ਹੇਠ ਸ਼ੁੱਕਰ ਦੇ ਵੇਰਵੇ ਵੇਖੋ.

ਗਲੋਬਿਨਅਰ ਸ਼ੈੱਲ ਵੈਲਿਉਬਲ ਨੂੰ ਪੈਟਰਨ ਨਾਲ ਮਿਲਦੇ ਫਾਈਲ ਨਾਂ ਦੇ ਸੈਟ ਨੂੰ ਸੀਮਤ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ. ਜੇਕਰ ਗਲੋਬਿਨਯੂਰ ਨੂੰ ਸੈਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਹਰ ਇੱਕ ਮੇਲਿੰਗ ਫਾਈਲ ਨਾਮ ਜਿਹੜਾ GLOBIGNOU ਵਿੱਚ ਇੱਕ ਪੈਟਰਨ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ, ਮੈਚਾਂ ਦੀ ਸੂਚੀ ਵਿੱਚੋਂ ਹਟਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ. ਫਾਇਲ ਨਾਂ `` .`` ਅਤੇ `` ..`` ਹਮੇਸ਼ਾ ਅਣਡਿੱਠ ਕਰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ, ਭਾਵੇਂ ਕਿ ਗਲੋਬੀਨੇਅਰ ਸੇਟ ਹੈ. ਹਾਲਾਂਕਿ, GLOBIGNOU ਦੀ ਸੈਟਿੰਗ ਵਿੱਚ ਡੌਟਗਲਬ ਸ਼ੈੱਲ ਵਿਕਲਪ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਦਾ ਪ੍ਰਭਾਵ ਹੈ, ਇਸ ਲਈ ਇੱਕ ਤੋਂ ਸ਼ੁਰੂ ਹੋ ਕੇ ਹੋਰ ਸਾਰੇ ਫਾਈਲ ਨਾਮ ``. '' ਨਾਲ ਮਿਲਦੇ ਹਨ. ``. '' ਨਾਲ ਸ਼ੁਰੂ ਹੋਣ ਵਾਲੇ ਫਾਈਲ ਨਾਮਾਂ ਦੀ ਅਣਦੇਖੀ ਦੇ ਪੁਰਾਣੇ ਵਰਤਾਓ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ, '' . * '' ਗਲੋਬਿਨਯੋਰ ਵਿੱਚ ਇੱਕ ਪੈਟਰਨ ਬਣਾਉ . Dotglob ਵਿਕਲਪ ਅਯੋਗ ਕੀਤਾ ਗਿਆ ਹੈ ਜਦੋਂ GLOBIGNORE ਅਸੈੱਸ ਨਹੀਂ ਹੈ.

ਪੈਟਰਨ ਮਿਲਾਨਿੰਗ

ਕਿਸੇ ਵੀ ਅੱਖਰ, ਜੋ ਕਿਸੇ ਪੈਟਰਨ ਵਿੱਚ ਨਜ਼ਰ ਆਉਂਦੇ ਹਨ, ਹੇਠਾਂ ਦਿੱਤੇ ਵਿਸ਼ੇਸ਼ ਪੈਟਰਨ ਅੱਖਰਾਂ ਤੋਂ ਇਲਾਵਾ, ਆਪਣੇ ਆਪ ਨਾਲ ਮਿਲਦਾ ਹੈ ਹੋ ਸਕਦਾ ਹੈ ਕਿ NUL ਅੱਖਰ ਇਕ ਪੈਟਰਨ ਵਿਚ ਨਾ ਹੋਵੇ. ਸਪੈਸਟ ਪੈਟਰਨ ਅੱਖਰਾਂ ਦਾ ਹਵਾਲਾ ਦੇਣਾ ਜਰੂਰੀ ਹੈ ਜੇ ਉਨ੍ਹਾਂ ਦਾ ਸ਼ਾਬਦਿਕ ਮੇਲ ਖਾਂਦਾ ਹੋਵੇ

ਖਾਸ ਪੈਟਰਨ ਅੱਖਰ ਦੇ ਹੇਠਲੇ ਅਰਥ ਹਨ:

*

ਨੱਲ ਸਟ੍ਰਿੰਗ ਸਮੇਤ ਕਿਸੇ ਵੀ ਸਤਰ ਨਾਲ ਮਿਲਦਾ ਹੈ.

?

ਕਿਸੇ ਇੱਕ ਅੱਖਰ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ.

[...]

ਕਿਸੇ ਨਾਲ ਸਬੰਧਤ ਅੱਖਰਾਂ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ ਹਾਈਫਨ ਦੁਆਰਾ ਵੱਖ ਕੀਤੇ ਅੱਖਰਾਂ ਦੀ ਇੱਕ ਜੋੜੀ ਇੱਕ ਸੀਮਾ ਐਕਸਪਰੈਸ਼ਨ ਨੂੰ ਸੰਕੇਤ ਕਰਦੀ ਹੈ ; ਮੌਜੂਦਾ ਅੱਖਰ ਦੀ ਗਿਣਤੀ ਅਤੇ ਅੱਖਰ ਸਮੂਹ ਦਾ ਇਸਤੇਮਾਲ ਕਰਨ ਵਾਲੇ ਉਹਨਾਂ ਦੋ ਅੱਖਰਾਂ, ਸੰਮਿਲਤ, ਵਿਚਕਾਰ ਕੋਈ ਵੀ ਸ਼੍ਰੇਸ਼ਟ ਦਾ ਮੇਲ ਹੈ. ਜੇ ਪਹਿਲਾ ਅੱਖਰ [ ਹੈ ! ਜਾਂ ਇਕ ^ ^ ਫਿਰ ਕਿਸੇ ਵੀ ਅੱਖਰ ਨੂੰ ਨਾ ਜੋੜਿਆ ਗਿਆ ਹੈ. ਰੇਂਜ ਸਮੀਕਰਨ ਵਿੱਚ ਅੱਖਰਾਂ ਦੀ ਲੜੀਬੱਧ ਕ੍ਰਮ ਮੌਜੂਦਾ ਲੋਕੇਲ ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਅਤੇ LC_COLLATE ਸ਼ੈੱਲ ਵੇਰੀਏਬਲ ਦੇ ਮੁੱਲ, ਜੇ ਸੈਟ ਹੈ. A - ਨੂੰ ਸੈੱਟ ਵਿੱਚ ਪਹਿਲੇ ਜਾਂ ਆਖਰੀ ਚਰਿੱਤਰ ਦੇ ਤੌਰ ਤੇ ਸ਼ਾਮਿਲ ਕਰਕੇ ਇਸਦਾ ਮੇਲ ਕਰ ਸਕਦਾ ਹੈ. A ] ਨੂੰ ਸੈੱਟ ਵਿੱਚ ਪਹਿਲੇ ਅੱਖਰ ਦੇ ਤੌਰ ਤੇ ਸ਼ਾਮਿਲ ਕਰਕੇ ਇਸਦਾ ਮੇਲ ਕਰ ਸਕਦਾ ਹੈ.

[ ਅਤੇ ] ਦੇ ਅੰਦਰ, ਵਰਣ ਕਲਾਕਾਰ ਨੂੰ ਸਿੰਟੈਕਸ [[ class :]] ਦੇ ਜ਼ਰੀਏ ਨਿਸ਼ਚਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜਿੱਥੇ ਕਲਾਸ ਇੱਕ POSIX.2 ਸਟੈਂਡਰਡ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਹੇਠਲੇ ਕਲਾਸਾਂ ਵਿੱਚੋਂ ਇੱਕ ਹੈ:

alnum alpha ascii ਖਾਲੀ cntrl ਅੰਕ ਗ੍ਰਾਫ ਘੱਟ ਪ੍ਰਿੰਟ punct ਸਪੇਸ ਉਪੱਰ ਸ਼ਬਦ xdigit
ਇੱਕ ਵਰਗ ਕਲਾਸ ਉਸ ਕਲਾਸ ਨਾਲ ਸਬੰਧਿਤ ਕਿਸੇ ਵੀ ਅੱਖਰ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ. ਅੱਖਰ ਸ਼ਬਦ ਨੂੰ ਅੱਖਰ, ਅੰਕ ਅਤੇ ਅੱਖਰ _ ਨਾਲ ਮਿਲਦਾ ਹੈ.

[ ਅਤੇ ] ਦੇ ਅੰਦਰ, ਇਕ ਸਮਾਨਤਾ ਕਲਾਸ ਨੂੰ ਸਿੰਟੈਕਸ [= c =] ਵਰਤ ਕੇ ਨਿਰਦਿਸ਼ਟ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ, ਜੋ ਅੱਖਰ c ਦੇ ਤੌਰ ਤੇ ਇੱਕੋ ਜਿਹੇ ਭਾਰ ਦੇ ਨਾਲ ਸਾਰੇ ਅੱਖਰਾਂ (ਮੌਜੂਦਾ ਲੋਕੇਲ ਦੁਆਰਾ ਪ੍ਰਭਾਸ਼ਿਤ) ਦੇ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ.

[ ਅਤੇ ] ਦੇ ਅੰਦਰ, ਸੰਟੈਕਸ [. ਸੰਕੇਤ ]] ਸੰਕੇਤ ਪ੍ਰਤੀਕ ਚਿੰਨ੍ਹ ਨਾਲ ਮਿਲਦਾ ਹੈ .

ਜੇ ਐਟਪਲੌਬ ਸ਼ੈੱਲ ਵਿਕਲਪ ਸ਼ੌਟਟ ਬਿਲਟਿਨ ਦੀ ਵਰਤੋਂ ਨਾਲ ਸਮਰੱਥ ਕੀਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਕਈ ਵਿਸਤ੍ਰਿਤ ਪੈਟਰਨ ਮੇਲਿੰਗ ਆਪਰੇਟਰ ਪਛਾਣੇ ਜਾਂਦੇ ਹਨ. ਹੇਠ ਦਿੱਤੇ ਵੇਰਵੇ ਵਿੱਚ, ਇੱਕ ਪੈਟਰਨ-ਲਿਸਟ ਇੱਕ | . ਹੇਠ ਲਿਖੀਆਂ ਉਪ-ਨਮੂਨਿਆਂ ਵਿੱਚੋਂ ਇੱਕ ਜਾਂ ਵੱਧ ਵਰਤ ਕੇ ਕੰਪੋਜਿਟ ਪੈਟਰਨ ਬਣਾਏ ਜਾ ਸਕਦੇ ਹਨ:

? ( ਪੈਟਰਨ-ਲਿਸਟ )

ਦਿੱਤੇ ਗਏ ਪੈਟਰਨਾਂ ਦੀ ਜ਼ੀਰੋ ਜਾਂ ਇੱਕ ਮੌਜੂਦਗੀ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ

* ( ਪੈਟਰਨ-ਲਿਸਟ )

ਦਿੱਤੇ ਗਏ ਪੈਟਰਨਾਂ ਦੀ ਜ਼ੀਰੋ ਜਾਂ ਵੱਧ ਮੌਜੂਦਗੀ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ

+ ( ਪੈਟਰਨ-ਸੂਚੀ )

ਦਿੱਤੇ ਪੈਟਰਨ ਦੇ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਮੌਜੂਦਗੀ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ

@ ( ਪੈਟਰਨ-ਲਿਸਟ )

ਦਿੱਤੇ ਗਏ ਪੈਟਰਨਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ

! ( ਪੈਟਰਨ-ਲਿਸਟ )

ਦਿੱਤੇ ਪੈਟਰਨਾਂ ਵਿੱਚੋਂ ਇੱਕ ਨੂੰ ਛੱਡ ਕੇ ਕੁਝ ਮੇਲ ਕਰਦਾ ਹੈ

ਹਵਾਲਾ ਹਟਾਉਣ

ਪਿਛਲਾ ਵਿਸਥਾਰ ਕਰਨ ਤੋਂ ਬਾਅਦ, \ , ' , ਅਤੇ ' ' ਅੱਖਰਾਂ ਦੇ ਸਾਰੇ ਅਣਪਛਾਤੀ ਮੌਜੂਦਗੀ ਹਟਾਏ ਗਏ ਹਨ, ਜੋ ਉਪਰੋਕਤ ਫੈਲਾਵਾਂ ਵਿੱਚੋਂ ਇੱਕ ਦਾ ਨਤੀਜਾ ਨਹੀਂ ਨਿਕਲਿਆ.

ਰੀਡਾਇਰੈਕਸ਼ਨ

ਇੱਕ ਕਮਾਂਡ ਚਲਾਉਣ ਤੋਂ ਪਹਿਲਾਂ, ਇਸਦੇ ਇੰਪੁੱਟ ਅਤੇ ਆਉਟਪੁਟ ਸ਼ੈਲ ਦੁਆਰਾ ਵਰਤੇ ਗਏ ਖਾਸ ਨੋਟੇਸ਼ਨ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਰੀਡਾਇਰੈਕਟ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ. ਮੌਜੂਦਾ ਸ਼ੈਲ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਣ ਲਈ ਫਾਈਲਾਂ ਨੂੰ ਖੋਲ੍ਹਣ ਅਤੇ ਬੰਦ ਕਰਨ ਲਈ Redirection ਵੀ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ. ਹੇਠ ਦਿੱਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਇੱਕ ਸਧਾਰਨ ਕਮਾਂਡ ਦੇ ਅੰਦਰ ਜਾਂ ਅੱਗੇ ਆ ਸਕਦੇ ਹਨ ਜਾਂ ਇੱਕ ਕਮਾਂਡ ਦੀ ਪਾਲਣਾ ਕਰ ਸਕਦੇ ਹਨ. ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਨੂੰ ਉਹਨਾਂ ਦੇ ਕ੍ਰਮ ਵਿੱਚ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਤੱਕ ਸੰਚਾਲਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਨਿਮਨਲਿਖਤ ਵਰਣਨ ਵਿਚ, ਜੇਕਰ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਨੰਬਰ ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਅਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਦਾ ਪਹਿਲਾ ਅੱਖਰ < , ਰੀਡਾਇਰੈਕਸ਼ਨ, ਸਟੈਂਡਰਡ ਇਨਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0) ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ. ਜੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਦਾ ਪਹਿਲਾ ਅੱਖਰ ਹੈ > , ਰੀਡਾਇਰੈਕਸ਼ਨ, ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ.

ਹੇਠ ਲਿਖੇ ਵਿਆਖਿਆਵਾਂ ਵਿੱਚ ਦੁਹਰਾਓ ਓਪਰੇਟਰ ਤੋਂ ਬਾਅਦ ਸ਼ਬਦ, ਜਦੋਂ ਤੱਕ ਨੋਟ ਨਾ ਕੀਤਾ ਗਿਆ ਹੋਵੇ, ਉਦੋਂ ਤਕ ਬ੍ਰੇਸ ਐਕਸਪੈਂਸ਼ਨ, ਟਿਲਡੇ ਵਿਸਥਾਰ, ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ, ਅੰਕਗਣਿਤ ਵਿਸਤਾਰ, ਹਵਾਲਾ ਕੱਢਣ, ਪਾਥਨਾਮ ਵਿਸਤਾਰ ਅਤੇ ਸ਼ਬਦ ਵੰਡਣ ਦੇ ਅਧੀਨ ਹੈ. ਜੇ ਇਹ ਇਕ ਤੋਂ ਵੱਧ ਸ਼ਬਦਾਂ ਦਾ ਵਿਸਤਾਰ ਕਰਦੀ ਹੈ, ਤਾਂ ਬੈਸ਼ ਇੱਕ ਗਲਤੀ ਦੀ ਰਿਪੋਰਟ ਦਿੰਦਾ ਹੈ

ਨੋਟ ਕਰੋ ਕਿ ਮੁੜ ਨਿਰਦੇਸ਼ਾਂ ਦਾ ਕ੍ਰਮ ਮਹੱਤਵਪੂਰਣ ਹੈ ਉਦਾਹਰਣ ਲਈ, ਕਮਾਂਡ

ls > dirlist 2 > & 1

ਫਾਈਲ ਡਿਰਲਿਸਟ ਨੂੰ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਅਤੇ ਸਟੈਂਡਰਡ ਗਲਤੀ ਦੋਵਾਂ ਨੂੰ ਨਿਰਦੇਸ਼ਤ ਕਰਦਾ ਹੈ, ਜਦੋਂ ਕਿ ਕਮਾਂਡ

ls 2 > & 1 > ਡ੍ਰਿਲਿਸਟ

ਡਿਰਿਲਸਟ ਨੂੰ ਫਾਇਲ ਕਰਨ ਲਈ ਸਿਰਫ ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਨੂੰ ਨਿਰਦੇਸ਼ਤ ਕਰਦਾ ਹੈ, ਕਿਉਂਕਿ ਸਟੈਂਡਰਡ ਗਲਤੀ ਨੂੰ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਡ੍ਰਿਲਿਸਟ ਨੂੰ ਨਿਰਦੇਸ਼ਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਵਜੋਂ ਡੁਪਲੀਕੇਟ ਕੀਤਾ ਗਿਆ ਸੀ.

ਬॅश ਵਿਸ਼ੇਸ਼ ਤੌਰ 'ਤੇ ਕਈ ਫਾਈਲਨਾਂਮਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਦੀ ਹੈ ਜਦੋਂ ਇਹਨਾਂ ਨੂੰ ਹੇਠਾਂ ਦਿੱਤੇ ਸਾਰਨੀ ਵਿੱਚ ਵਰਣਨ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ ਉਹ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਵਿੱਚ ਵਰਤੇ ਜਾਂਦੇ ਹਨ:

/ dev / fd / fd

ਜੇ fd ਇੱਕ ਠੀਕ ਪੂਰਨ ਅੰਕ ਹੈ, ਤਾਂ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ fd ਡੁਪਲੀਕੇਟ ਹੈ.

/ dev / stdin

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0 ਨੂੰ ਡੁਪਲੀਕੇਟ ਕੀਤਾ ਗਿਆ ਹੈ.

/ dev / stdout

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1 ਨੂੰ ਡੁਪਲੀਕੇਟ ਕੀਤਾ ਗਿਆ ਹੈ.

/ dev / stderr

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 2 ਨੂੰ ਡੁਪਲੀਕੇਟ ਕੀਤਾ ਗਿਆ ਹੈ.

/ dev / tcp / host / port

ਜੇ ਹੋਸਟ ਇੱਕ ਵੈਧ ਹੋਸਟ ਨਾਂ ਜਾਂ ਇੰਟਰਨੈਟ ਐਡਰੈੱਸ ਹੈ, ਅਤੇ ਪੋਰਟ ਇਕ ਇੰਟਜ਼ਰ ਪੋਰਟ ਨੰਬਰ ਜਾਂ ਸਰਵਿਸ ਨਾਮ ਹੈ, ਤਾਂ ਬਤੌਰ ਅਨੁਸਾਰੀ ਸਾਕੇਟ ਨਾਲ TCP ਕੁਨੈਕਸ਼ਨ ਖੋਲ੍ਹਣ ਦੀਆਂ ਕੋਸ਼ਿਸ਼ਾਂ ਕੀਤੀਆਂ ਜਾ ਸਕਦੀਆਂ ਹਨ.

/ dev / udp / host / port

ਜੇ ਹੋਸਟ ਇੱਕ ਵੈਧ ਮੇਜ਼ਬਾਨ ਨਾਂ ਜਾਂ ਇੰਟਰਨੈਟ ਐਡਰੈੱਸ ਹੈ, ਅਤੇ ਪੋਰਟ ਇੱਕ ਪੂਰਨ ਅੰਕ ਪੋਰਟ ਨੰਬਰ ਜਾਂ ਸੇਵਾ ਦਾ ਨਾਮ ਹੈ, ਬਿੱਟ ਅਨੁਸਾਰੀ ਸਾਕਟ ਨਾਲ UDP ਕੁਨੈਕਸ਼ਨ ਖੋਲ੍ਹਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ.

ਇੱਕ ਫਾਇਲ ਨੂੰ ਖੋਲ੍ਹਣ ਜਾਂ ਬਣਾਉਣ ਵਿੱਚ ਅਸਫਲਤਾ ਨੂੰ ਰੀਡਾਇਰੈਕਸ਼ਨ ਫੇਲ੍ਹ ਹੋਣ ਦਾ ਕਾਰਨ ਬਣਦਾ ਹੈ.

ਇੰਪੁੱਟ ਨੂੰ ਮੁੜ ਨਿਰਦੇਸ਼ਤ ਕਰਨਾ

ਇਨਪੁਟ ਦਾ ਰੀਡਾਇਰੈਕਸ਼ਨ ਇੰਨਫੋਲਟ ਕਰਦਾ ਹੈ ਜਿਸਦਾ ਨਾਮ ਨਤੀਜਾ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ n ਤੇ ਪੜ੍ਹਨ ਲਈ ਜਾਂ ਸਟੈਂਡਰਡ ਇਨਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0) ਤੇ ਖੋਲ੍ਹਣ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਸ਼ਬਦ ਦੇ ਵਿਸਥਾਰ ਤੋਂ ਹੁੰਦਾ ਹੈ ਜੇਕਰ n ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ.

ਇੰਪੁੱਟ ਭੇਜਣ ਲਈ ਆਮ ਫਾਰਮੈਟ ਇਹ ਹੈ:

[ n ] < ਸ਼ਬਦ

ਆਉਟਪੁੱਟ ਨੂੰ ਮੁੜ ਨਿਰਦੇਸ਼ਤ ਕਰਨਾ

ਆਉਟਪੁਟ ਦਾ ਰੀਡਾਇਰੈਕਸ਼ਨ ਕਰਨ ਨਾਲ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ n ਜਾਂ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) 'ਤੇ ਲਿਖਣ ਲਈ ਖੋਲ੍ਹੇ ਜਾਣ ਵਾਲੇ ਸ਼ਬਦ ਦੇ ਪਸਾਰ ਤੋਂ ਨਤੀਜਾ ਦੱਸਿਆ ਗਿਆ ਹੈ, ਜੇ n ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ. ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਨਹੀਂ ਹੈ ਤਾਂ ਇਸ ਨੂੰ ਬਣਾਇਆ ਗਿਆ ਹੈ; ਜੇ ਇਹ ਮੌਜੂਦ ਹੁੰਦਾ ਹੈ ਤਾਂ ਇਹ ਜ਼ੀਰੋ ਅਕਾਰ ਤੋਂ ਘੱਟ ਹੁੰਦਾ ਹੈ.

ਆਉਟਪੁੱਟ ਨੂੰ ਰੀਡਾਇਰੈਕਟ ਕਰਨ ਲਈ ਆਮ ਫਾਰਮੈਟ ਇਹ ਹੈ:

[ n ] > ਸ਼ਬਦ

ਜੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਹੈ, ਅਤੇ ਸੈਟ ਬਿਲਡਿਨ ਵਿਚ ਨੋਕਲਾਬਾਰ ਵਿਕਲਪ ਯੋਗ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਫਾਈਲਡਾਈਕੇਸ਼ਨ ਅਸਫਲ ਹੋ ਜਾਏਗੀ, ਜੇ ਫਾਈਲ ਜਿਸਦਾ ਨਾਮ ਸ਼ਬਦ ਦੇ ਵਾਧੇ ਤੋਂ ਨਤੀਜਾ ਹੋਵੇ ਅਤੇ ਇਕ ਰੈਗੂਲਰ ਫਾਇਲ ਹੈ. ਜੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਹੈ > | , ਜਾਂ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ ਹੈ > ਅਤੇ ਸੈਟ ਬਿਲਟਿਨ ਕਮਾਂਡ ਲਈ noclobber ਵਿਕਲਪ ਸਮਰਥ ਨਹੀਂ ਹੈ, ਰੀਡਾਇਰੈਕਸ਼ਨ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਭਾਵੇਂ ਸ਼ਬਦ ਦੁਆਰਾ ਨਾਮ ਫਾਈਲ ਮੌਜੂਦ ਹੋਵੇ.

ਰੀਡਾਇਰੈਕਟ ਆਉਟਪੁੱਟ ਜੋੜਨਾ

ਇਸ ਫੈਸ਼ਨ ਵਿੱਚ ਆਉਟਪੁਟ ਦੀ ਰੀਡਾਇਰੈਕਸ਼ਨ, ਫਾਈਲ ਦਾ ਕਾਰਨ ਬਣਦੀ ਹੈ ਜਿਸਦਾ ਨਾਮ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ n ਤੇ ਆੱਨਲਾਈਨ, ਜਾਂ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) ਤੇ ਖੋਲ੍ਹਣ ਲਈ ਸ਼ਬਦ ਦੇ ਵਿਸਥਾਰ ਤੋਂ ਨਤੀਜਾ ਦਿੰਦਾ ਹੈ ਜੇ n ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ. ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਨਹੀਂ ਹੈ ਤਾਂ ਇਹ ਬਣਦਾ ਹੈ.

ਆਉਟਪੁੱਟ ਜੋੜਨ ਲਈ ਆਮ ਫਾਰਮੈਟ ਇਹ ਹੈ:

[ n ] >> ਸ਼ਬਦ

ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ ਅਤੇ ਸਟੈਂਡਰਡ ਗਲਤੀ ਨੂੰ ਮੁੜ ਨਿਰਦੇਸ਼ਤ ਕਰਨਾ

ਬॅश ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) ਅਤੇ ਸਟੈਂਡਰਡ ਐਰਰ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 2) ਨੂੰ ਉਸ ਫੋਰਮ ਨੂੰ ਰੀਡਾਇਰੈਕਟ ਕਰਨ ਦੀ ਇਜਾਜ਼ਤ ਦਿੰਦਾ ਹੈ ਜਿਸਦਾ ਨਾਮ ਇਸ ਨਿਰਮਾਣ ਨਾਲ ਸ਼ਬਦ ਦਾ ਪਸਾਰ ਹੈ.

ਮਿਆਰੀ ਆਉਟਪੁੱਟ ਅਤੇ ਮਿਆਰੀ ਗਲਤੀ ਭੇਜਣ ਲਈ ਦੋ ਫਾਰਮੈਟ ਹਨ:

& ਸ਼ਬਦ

ਅਤੇ

> & ਸ਼ਬਦ

ਦੋ ਰੂਪਾਂ ਵਿਚੋਂ, ਪਹਿਲੀ ਨੂੰ ਤਰਜੀਹ ਦਿੱਤੀ ਜਾਂਦੀ ਹੈ. ਇਹ ਸਿਧਾਂਤਕ ਤੌਰ ਤੇ ਬਰਾਬਰ ਹੈ

> ਸ਼ਬਦ 2 > & 1

ਇੱਥੇ ਦਸਤਾਵੇਜ਼

ਇਸ ਕਿਸਮ ਦੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਨੇ ਮੌਜੂਦਾ ਸ੍ਰੋਤ ਤੋਂ ਇੰਪੁੱਟ ਪੜ੍ਹਨ ਲਈ ਸ਼ੈੱਲ ਨੂੰ ਨਿਰਦੇਸ਼ਿਤ ਕਰ ਦਿੱਤਾ ਹੈ ਜਦੋਂ ਤੱਕ ਕਿ ਸਿਰਫ ਸ਼ਬਦ (ਕੋਈ ਸ਼ੁਰੂਆਤੀ ਖਾਲੀ ਥਾਂ ਦੇ ਨਾਲ) ਵਾਲੀ ਲਾਈਨ ਨਹੀਂ ਦੇਖੀ ਜਾਂਦੀ. ਉਸ ਬਿੰਦੂ ਤੱਕ ਪੜ੍ਹੀਆਂ ਗਈਆਂ ਸਾਰੀਆਂ ਲਾਈਨਾਂ ਇੱਕ ਕਮਾਂਡ ਲਈ ਸਟੈਂਡਰਡ ਇੰਪੁੱਟ ਦੇ ਤੌਰ ਤੇ ਵਰਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ.

ਇੱਥੇ-ਦਸਤਾਵੇਜ਼ਾਂ ਦਾ ਫਾਰਮੈਟ ਇਹ ਹੈ:

<< [ - ] ਇੱਥੇ ਸ਼ਬਦ -ਦਸਤਾਵੇਜ਼ ਡੀਲਿਮਟਰ

ਸ਼ਬਦ 'ਤੇ ਕੋਈ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਹੁਕਮ ਬਦਲਣਾ, ਅੰਕਗਣਿਤ ਵਿਸਤਾਰ, ਜਾਂ ਪਾਥਨਾਮ ਪਸਾਰਾ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ . ਜੇ ਸ਼ਬਦ ਵਿਚਲੇ ਕਿਸੇ ਵੀ ਸ਼ਬਦ ਦਾ ਹਵਾਲਾ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਡੀਲਿਮਟਰ ਸ਼ਬਦ ਦੇ ਹਵਾਲੇ 'ਤੇ ਹਵਾਲਾ ਕੱਢਣ ਦਾ ਨਤੀਜਾ ਹੈ, ਅਤੇ ਇੱਥੇ-ਦਸਤਾਵੇਜ਼ਾਂ ਦੀਆਂ ਲਾਈਨਾਂ ਵਿਸਥਾਰ ਨਹੀਂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ. ਜੇ ਸ਼ਬਦ ਨਾ- ਜੋੜਿਆ ਗਿਆ ਹੋਵੇ, ਤਾਂ ਇੱਥੇ-ਦਸਤਾਵੇਜ਼ ਦੀਆਂ ਸਾਰੀਆਂ ਲਾਈਨਾਂ ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਕਮਾਂਡ ਪ੍ਰਤੀਬਦਲ, ਅਤੇ ਅੰਕਗਣਿਤ ਦੇ ਵਿਸਥਾਰ ਦੇ ਅਧੀਨ ਹਨ. ਬਾਅਦ ਦੇ ਮਾਮਲੇ ਵਿੱਚ, ਅੱਖਰ ਕ੍ਰਮ \ ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਗਿਆ ਹੈ, ਅਤੇ \ ਅੱਖਰ \ , $ , ਅਤੇ `` ਦਾ ਹਵਾਲਾ ਦੇਣ ਲਈ ਵਰਤਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ

ਜੇ ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ << - ਹੈ , ਤਾਂ ਸਾਰੇ ਪ੍ਰਮੁੱਖ ਟੈਬ ਅੱਖਰ ਇਨਪੁਟ ਲਾਈਨਾਂ ਅਤੇ ਡੀਲਿਮਟਰ ਵਾਲੇ ਲਾਈਨ ਤੋਂ ਉਤਾਰ ਦਿੱਤੇ ਜਾਂਦੇ ਹਨ. ਇਹ ਇੱਥੇ-ਦਸਤਾਵੇਜ਼ਾਂ ਨੂੰ ਸ਼ੈੱਲ ਸਕਰਿਪਟ ਦੇ ਅੰਦਰ ਕੁਦਰਤੀ ਤੌਰ ਤੇ ਦੱਬਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ.

ਇੱਥੇ ਸਟਰਿੰਗਜ਼

ਇੱਥੇ ਦਸਤਾਵੇਜ਼ਾਂ ਦਾ ਇੱਕ ਰੂਪ, ਫਾਰਮੈਟ ਹੈ:

<<< ਸ਼ਬਦ

ਸ਼ਬਦ ਨੂੰ ਮਿਆਰੀ ਇੰਪੁੱਟ ਤੇ ਫੈਲਾਇਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸਪਸ਼ਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰਾਂ ਦੀ ਡੁਪਲੀਕੇਟ

ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ

[ n ] < ਸ਼ਬਦ ਅਤੇ ਸ਼ਬਦ

ਇੰਪੁੱਟ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰਾਂ ਦੀ ਨਕਲ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ ਸ਼ਬਦ ਇਕ ਜਾਂ ਇਕ ਤੋਂ ਵੱਧ ਅੰਕਾਂ ਤੱਕ ਫੈਲਦਾ ਹੈ, ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਨੂੰ n ਦੁਆਰਾ ਦਰਸਾਇਆ ਜਾਂਦਾ ਹੈ ਤਾਂ ਉਸ ਫਾਇਲ ਡਿਸਕ੍ਰਿਪਟਰ ਦੀ ਇੱਕ ਕਾਪੀ ਬਣ ਜਾਂਦੀ ਹੈ. ਜੇ ਸ਼ਬਦ ਵਿਚਲੇ ਅੰਕੜੇ ਨੂੰ ਇਨਪੁਟ ਲਈ ਇੱਕ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਖੁੱਲ੍ਹਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਇੱਕ ਰੀਡਾਇਰੈਕਸ਼ਨ ਗਲਤੀ ਆਉਂਦੀ ਹੈ. ਜੇ ਸ਼ਬਦ ਦਾ ਮੁਲਾਂਕਣ - , ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ n ਬੰਦ ਹੈ. ਜੇ n ਨਿਸ਼ਚਿਤ ਨਹੀਂ ਹੈ, ਤਾਂ ਸਟੈਂਡਰਡ ਇਨਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0) ਵਰਤੀ ਜਾਂਦੀ ਹੈ.

ਆਪਰੇਟਰ

[ n ] > & ਸ਼ਬਦ

ਡੁਪਲੀਕੇਟ ਆਉਟਪੁਟ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਵਾਂਗ ਹੀ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ n ਨਿਸ਼ਚਿਤ ਨਹੀਂ ਹੈ, ਤਾਂ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਜੇ ਸ਼ਬਦ ਵਿਚਲੇ ਅੰਕੜੇ ਆਊਟਪੁਟ ਲਈ ਇੱਕ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਖੁੱਲ੍ਹਦੇ ਨਹੀਂ ਹਨ, ਤਾਂ ਇੱਕ ਰੀਡਾਇਰੈਕਸ਼ਨ ਗਲਤੀ ਆਉਂਦੀ ਹੈ. ਇੱਕ ਵਿਸ਼ੇਸ਼ ਕੇਸ ਦੇ ਤੌਰ ਤੇ, ਜੇਕਰ n ਨੂੰ ਛੱਡਿਆ ਜਾਂਦਾ ਹੈ, ਅਤੇ ਸ਼ਬਦ ਇੱਕ ਜਾਂ ਇੱਕ ਤੋਂ ਵੱਧ ਡਿਜ਼ਿਟ ਤੇ ਨਹੀਂ ਫੈਲਦਾ, ਤਾਂ ਮਿਆਰੀ ਆਉਟਪੁਟ ਅਤੇ ਸਟੈਂਡਰਡ ਗਲਤੀ ਨੂੰ ਪਹਿਲਾਂ ਦੱਸੇ ਅਨੁਸਾਰ ਰੀਡਾਇਰੈਕਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਫਾਇਲ ਵੇਰਵਾ ਦੇਣ ਵਾਲਿਆਂ ਨੂੰ ਮੂਵ ਕਰਨਾ

ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ

[ n ] <ਅਤੇ ਅੰਕ -

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਅੰਕਾਂ ਨੂੰ ਡਿਸਕ੍ਰਿਪਟਰ n , ਜਾਂ ਸਟੈਂਡਰਡ ਇਨਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0) ਫਾਈਲ ਕਰਨ ਲਈ ਪ੍ਰੇਰਿਤ ਕਰਦਾ ਹੈ ਜੇ n ਨਿਰਧਾਰਤ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ. n ਨੂੰ ਡੁਪਲੀਕੇ ਜਾਣ ਤੋਂ ਬਾਅਦ ਡਿਜੀਟ ਨੂੰ ਬੰਦ ਕਰ ਦਿੱਤਾ ਗਿਆ ਹੈ

ਇਸੇ ਤਰ੍ਹਾਂ, ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ

[ n ] > ਅਤੇ ਅੰਕ -

ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਡਿਜੀਟ ਨੂੰ ਡਿਸਕ੍ਰਿਪਟਰ n , ਜਾਂ ਸਟੈਂਡਰਡ ਆਉਟਪੁਟ (ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 1) ਫਾਈਲ ਕਰਨ ਲਈ ਪ੍ਰੇਰਿਤ ਕਰਦਾ ਹੈ ਜੇ n ਨਿਸ਼ਚਿਤ ਨਹੀਂ ਹੈ.

ਰੀਡਿੰਗ ਅਤੇ ਲਿਖਣ ਲਈ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ ਖੋਲ੍ਹਣਾ

ਰੀਡਾਇਰੈਕਸ਼ਨ ਓਪਰੇਟਰ

[ n ] <> ਸ਼ਬਦ

ਉਸ ਫਾਈਲ ਦਾ ਨਾਮ ਦਿੰਦਾ ਹੈ ਜਿਸਦਾ ਨਾਮ ਫਾਈਲ ਡਿਸਪਲੀਟਰ n ਤੇ ਰੀਡਿੰਗ ਅਤੇ ਲਿਖਣ ਲਈ, ਜਾਂ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 2 ਤੇ ਖੋਲ੍ਹਣ ਲਈ ਵਰਤੇ ਜਾਣ ਵਾਲੇ ਸ਼ਬਦ ਦਾ ਪਸਾਰ ਹੈ. ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸ ਨੂੰ ਬਣਾਇਆ ਗਿਆ ਹੈ.

ਅਲਿਦਾਸ

ਉਪਨਾਮਸ ਸਤਰ ਨੂੰ ਸ਼ਬਦ ਲਈ ਬਦਲਣ ਦੀ ਆਗਿਆ ਦਿੰਦੇ ਹਨ ਜਦੋਂ ਇਹ ਸਧਾਰਨ ਕਮਾਂਡ ਦੇ ਪਹਿਲੇ ਸ਼ਬਦ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਸ਼ੈੱਲ ਉਹਨਾਂ ਉਪਨਾਮਿਆਂ ਦੀ ਇੱਕ ਸੂਚੀ ਬਣਾਉਂਦਾ ਹੈ ਜੋ ਉਪਨਾਮ ਅਤੇ ਅਨਾਲੀਆਸ ਦੇ ਅੰਦਰੂਨੀ ਹੁਕਮਾਂ ਨਾਲ ਸੈਟ ਅਤੇ ਅਣਸੁਲਿਤ ਹੋ ਸਕਦੇ ਹਨ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿਨ ਕਮਾਂਡੇ ਦੇਖੋ). ਹਰੇਕ ਹੁਕਮ ਦਾ ਪਹਿਲਾ ਸ਼ਬਦ, ਜੇਕਰ ਅਣ-ਚੁਣਿਆ ਹੋਇਆ ਹੈ, ਇਹ ਦੇਖਣ ਲਈ ਚੈਕ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਕਿ ਕੀ ਉਸਦਾ ਉਪਨਾਮ ਹੈ ਜੇ ਅਜਿਹਾ ਹੈ, ਤਾਂ ਉਸ ਸ਼ਬਦ ਨੂੰ ਏਲੀਅਸ ਦੇ ਪਾਠ ਨਾਲ ਬਦਲ ਦਿੱਤਾ ਜਾਵੇਗਾ. ਉਪਨਾਮ ਨਾਂ ਅਤੇ ਬਦਲਵੇਂ ਪਾਠ ਵਿੱਚ ਕਿਸੇ ਵੀ ਜਾਇਜ਼ ਸ਼ੈੱਲ ਇਨਪੁਟ ਸ਼ਾਮਿਲ ਹੋ ਸਕਦੇ ਹਨ, ਜਿਸ ਵਿੱਚ ਉਪਰੋਕਤ ਸੂਚੀਬੱਧ ਕੀਤੇ ਮੈਟਾਚਾਰਕ ਸ਼ਾਮਲ ਹਨ, ਅਪਵਾਦ ਦੇ ਨਾਲ ਕਿ ਉਪਨਾਮ ਦੇ ਨਾਂ ਵਿੱਚ = ਨਹੀਂ ਹੋ ਸਕਦਾ ਹੈ ਬਦਲਵੇਂ ਟੈਕਸਟ ਦਾ ਪਹਿਲਾ ਸ਼ਬਦ ਉਪਨਾਮਿਆਂ ਲਈ ਟੈਸਟ ਕੀਤਾ ਗਿਆ ਹੈ, ਪਰ ਇਕ ਸ਼ਬਦ ਜਿਹੜਾ ਦੂਜੀ ਵਾਰ ਵਿਸਤਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਉਸ ਲਈ ਦੂਜੀ ਵਾਰ ਫੈਲਾਇਆ ਨਹੀਂ ਜਾਂਦਾ. ਇਸਦਾ ਅਰਥ ਇਹ ਹੈ ਕਿ ਇੱਕ ਉਰਫ ls ਲਈ ls -F , ਉਦਾਹਰਣ ਵਜੋਂ, ਅਤੇ bash ਲਗਾਤਾਰ ਟੈਕਸਟ ਨੂੰ ਬਦਲਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਨਹੀਂ ਕਰਦਾ. ਜੇਕਰ ਅੱਲਾ ਮੁੱਲ ਦਾ ਆਖਰੀ ਅੱਖਰ ਖਾਲੀ ਹੁੰਦਾ ਹੈ , ਤਾਂ ਅਗਲਾ ਕਮਾਂਡ ਸ਼ਬਦ ਉਰਫ ਵਿਸਥਾਰ ਲਈ ਵੀ ਚੈੱਕ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਉਪਨਾਮ ਬਣਾਏ ਗਏ ਹਨ ਅਤੇ ਉਪਨਾਮ ਦੇ ਹੁਕਮ ਨਾਲ ਸੂਚੀਬੱਧ ਕੀਤੇ ਗਏ ਹਨ, ਅਤੇ ਅਣਲਿਅਸ ਕਮਾਂਡ ਨਾਲ ਹਟਾਏ ਗਏ ਹਨ.

ਬਦਲਵੇਂ ਪਾਠ ਵਿਚ ਆਰਗੂਮੈਂਟ ਵਰਤਣ ਲਈ ਕੋਈ ਤਰੀਕਾ ਨਹੀਂ ਹੈ. ਜੇ ਆਰਗੂਮਿੰਟ ਦੀ ਲੋੜ ਹੈ, ਇੱਕ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਵਰਤੀ ਜਾਣੀ ਚਾਹੀਦੀ ਹੈ (ਹੇਠ ਦਿੱਤੇ ਕਾਰਜ ਵੇਖੋ).

ਜਦੋਂ ਐੱਲਈਏਸ ਦਾ ਪ੍ਰਭਾਵੀ ਨਹੀਂ ਹੁੰਦਾ ਤਾਂ ਸ਼ੈਲ ਨੂੰ ਇੰਟਰਐਕਟਿਵ ਨਹੀਂ ਹੁੰਦਾ, ਜਦੋਂ ਤੱਕ ਫੈਸਟ_ਅਲਾਇਜ਼ ਸ਼ੈੱਲ ਵਿਕਲਪ ਸ਼ੌਟਟ ਦੀ ਵਰਤੋਂ ਨਹੀਂ ਕਰ ਲੈਂਦਾ (ਹੇਠਾਂ ਸ਼ੈਲ ਬਿਲਿਨ ਕਮਾਂਡੇਜ਼ ਦੇ ਹੇਠਾਂ ਸ਼ੌਟਟ ਦਾ ਵੇਰਵਾ ਦੇਖੋ).

ਪਰਿਭਾਸ਼ਾ ਅਤੇ ਉਪਨਾਮਿਆਂ ਦੀ ਵਰਤੋਂ ਸੰਬੰਧੀ ਨਿਯਮ ਕੁਝ ਉਲਝਣਾਂ ਹਨ. Bash ਹਮੇਸ਼ਾ ਉਸ ਲਾਈਨ ਦੇ ਕਿਸੇ ਵੀ ਹੁਕਮ ਨੂੰ ਲਾਗੂ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਘੱਟੋ ਘੱਟ ਇਕ ਪੂਰੀ ਲਾਈਨ ਇੰਪੁੱਟ ਪੜ੍ਹਦੀ ਹੈ. ਉਪ-ਨਿਯਮਾਂ ਨੂੰ ਵਿਸਤਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਕਮਾਂਡ ਪੜ੍ਹੀ ਜਾਂਦੀ ਹੈ ਨਾ ਕਿ ਜਦੋਂ ਇਹ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਇਸ ਲਈ, ਇਕ ਉਪ-ਨਾਂ ਦੀ ਪਰਿਭਾਸ਼ਾ ਉਸੇ ਲਾਈਨ ਤੇ ਨਜ਼ਰ ਆਉਂਦੀ ਹੈ ਜਿਵੇਂ ਇਕ ਹੋਰ ਕਮਾਂਡ ਪ੍ਰਭਾਵੀ ਨਹੀਂ ਹੁੰਦੀ ਜਦੋਂ ਤੱਕ ਇੰਪੁੱਟ ਦੀ ਅਗਲੀ ਲਾਈਨ ਨੂੰ ਪੜ੍ਹ ਨਹੀਂ ਜਾਂਦਾ. ਉਸ ਲਾਈਨ ਤੇ ਉਪਨਾਮ ਪਰਿਭਾਸ਼ਾ ਦੀ ਪਾਲਣਾ ਕਰਨ ਵਾਲੀਆਂ ਕਮਾਂਡਾਂ ਨਵੇਂ ਉਪਨਾਮ ਦੁਆਰਾ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਹੁੰਦੀਆਂ ਹਨ. ਫੰਕਸ਼ਨ ਉਦੋਂ ਚਲਾਉਂਦੇ ਹਨ ਜਦੋਂ ਫੰਕਸ਼ਨ ਚਲਾਏ ਜਾਂਦੇ ਹਨ. ਉਪਕਰਣਾਂ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇੱਕ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾ ਪੜ੍ਹੀ ਜਾਂਦੀ ਹੈ, ਨਾ ਕਿ ਜਦੋਂ ਫੰਕਸ਼ਨ ਲਾਗੂ ਹੁੰਦਾ ਹੈ, ਕਿਉਂਕਿ ਫੰਕਸ਼ਨ ਪਰਿਭਾਸ਼ਾ ਖੁਦ ਹੀ ਇੱਕ ਕਮਾਂਡ ਕਮਾਂਡ ਹੈ. ਇਸਦੇ ਪਰਿਣਾਮ ਵਜੋਂ, ਇੱਕ ਫੰਕਸ਼ਨ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਉਪਨਾਮ ਉਪਲੱਬਧ ਨਹੀਂ ਹੁੰਦੇ ਹਨ ਜਦੋਂ ਤੱਕ ਉਸ ਫੰਕਸ਼ਨ ਨੂੰ ਲਾਗੂ ਨਹੀਂ ਹੁੰਦਾ. ਸੁਰੱਖਿਅਤ ਰਹਿਣ ਲਈ, ਵੱਖਰੀਆਂ ਲਾਈਨਾਂ 'ਤੇ ਉਪਨਾਮ ਪਰਿਭਾਸ਼ਾ ਹਮੇਸ਼ਾਂ ਰੱਖੋ, ਅਤੇ ਉਪਨਾਮ ਨੂੰ ਸੰਯੁਕਤ ਕਮਾਂਡ ਵਿੱਚ ਨਾ ਵਰਤੋ.

ਲਗਭਗ ਹਰੇਕ ਉਦੇਸ਼ ਲਈ, ਉਪਨਾਮਾਂ ਨੂੰ ਸ਼ੈਲ ਫੰਕਸ਼ਨਾਂ ਤੋਂ ਵੱਖ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਫੰਕਸ਼ਨ

ਇੱਕ ਸ਼ੈਲ ਫੰਕਸ਼ਨ, ਜੋ ਕਿ ਸ਼ੈਲ ਗ੍ਰਾਮਰ ਦੇ ਉਪਰੋਕਤ ਵਰਣਨ ਅਨੁਸਾਰ ਪ੍ਰਭਾਸ਼ਿਤ ਹੈ , ਬਾਅਦ ਵਿੱਚ ਚੱਲਣ ਲਈ ਬਹੁਤ ਸਾਰੇ ਕਮਾਂਡਾਂ ਸਟੋਰ ਕਰਦਾ ਹੈ. ਜਦੋਂ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਦਾ ਨਾਮ ਸਧਾਰਨ ਕਮਾਂਡ ਨਾਂ ਦੇ ਤੌਰ ਤੇ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ, ਉਸ ਫੰਕਸ਼ਨ ਨਾਮ ਨਾਲ ਜੁੜੇ ਕਮਾਂਡਾਂ ਦੀ ਸੂਚੀ ਨੂੰ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਮੌਜੂਦਾ ਸ਼ੈਲ ਦੇ ਸੰਦਰਭ ਵਿੱਚ ਫੰਕਸ਼ਨ ਚਲਾਏ ਜਾਂਦੇ ਹਨ; ਉਹਨਾਂ ਦੀ ਵਿਆਖਿਆ ਕਰਨ ਲਈ ਕੋਈ ਨਵੀਂ ਪ੍ਰਕਿਰਿਆ ਨਹੀਂ ਬਣਾਈ ਗਈ ਹੈ (ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਦੇ ਲਾਗੂ ਹੋਣ ਨਾਲ ਇਸਦੇ ਉਲਟ) ਜਦੋਂ ਇੱਕ ਫੰਕਸ਼ਨ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਫੰਕਸ਼ਨ ਲਈ ਆਰਗੂਮੈਂਟ ਉਸਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਦੇ ਦੌਰਾਨ ਸਥਾਈ ਪੈਰਾਮੀਟਰ ਬਣ ਜਾਂਦੇ ਹਨ. ਵਿਸ਼ੇਸ਼ ਪੈਰਾਮੀਟਰ # ਨੂੰ ਤਬਦੀਲੀ ਦਰਸਾਉਣ ਲਈ ਅਪਡੇਟ ਕੀਤਾ ਗਿਆ ਹੈ. ਸਥਿਤੀ ਪੈਰਾਮੀਟਰ 0 ਅਸਥਿਰ ਹੈ. ਫੰਕਸ਼ਨ ਵੈਲਿਉਬਲ ਫੰਕਸ਼ਨ ਦੇ ਨਾਂ ਨਾਲ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜਦੋਂ ਕਿ ਫੰਕਸ਼ਨ ਚਲ ਰਿਹਾ ਹੈ. ਸ਼ੈੱਲ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਨ ਦੇ ਹੋਰ ਸਾਰੇ ਪਹਿਲੂ ਇੱਕ ਫੰਕਸ਼ਨ ਅਤੇ ਇਸਦੇ ਕੈਲਰ ਦੇ ਅਪਵਾਦ ਦੇ ਨਾਲ ਇਕੋ ਜਿਹੇ ਹੁੰਦੇ ਹਨ, ਜੋ DEBUG ਫੰਕਸ਼ਨ (ਹੇਠਲੇ ਸ਼ੈਲ ਬਿਲਿਨਨ ਕਮਾਂਡਜ਼ ਦੇ ਹੇਠਾਂ ਫੜੇ ਦੇ ਟ੍ਰਿਬਿਊਨਲ ਦਾ ਵਰਣਨ ਵੇਖੋ) ਉਦੋਂ ਤਕ ਵਿਰਾਸਤ ਨਹੀਂ ਹੋ ਜਾਂਦਾ ਜਦੋਂ ਤੱਕ ਕਾਰਜ ਨੂੰ ਟਰੇਸ ਐਟਰੀਬਿਊਟ ਨਹੀਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ ( ਹੇਠਾਂ ਘੋਸ਼ਿਤ ਡੌਟਾਇਰ ਦੇ ਵਰਣਨ ਨੂੰ ਵੇਖੋ)

ਇਸ ਫੰਕਸ਼ਨ ਵਿਚਲੇ ਸਥਾਨਿਕ ਵੈਰੀਬਲ ਨੂੰ ਸਥਾਨਕ ਬਿਲਟਿਨ ਕਮਾਂਡ ਨਾਲ ਘੋਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ. ਆਮ ਤੌਰ ਤੇ, ਵੇਰੀਏਬਲ ਅਤੇ ਉਹਨਾਂ ਦੇ ਮੁੱਲਾਂ ਨੂੰ ਫੰਕਸ਼ਨ ਅਤੇ ਇਸਦੇ ਕਾੱਲਰ ਦੇ ਵਿਚਕਾਰ ਸਾਂਝਾ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਜੇ ਇਕ ਫੰਕਸ਼ਨ ਵਿੱਚ ਬਿਲਟਿਨ ਕਮਾਂਡ ਰਿਟਰਨ ਲਾਗੂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਫੰਕਸ਼ਨ ਕਾਲ ਪੂਰਾ ਹੋਣ ਤੋਂ ਬਾਅਦ ਫੰਕਸ਼ਨ ਮੁਕੰਮਲ ਹੋ ਜਾਂਦਾ ਹੈ ਅਤੇ ਫੌਂਟ ਜਾਰੀ ਹੁੰਦਾ ਹੈ. ਜਦੋਂ ਇੱਕ ਫੰਕਸ਼ਨ ਪੂਰਾ ਹੁੰਦਾ ਹੈ, ਤਾਂ ਸਥਿਤੀ ਦੇ ਮਾਪਦੰਡ ਅਤੇ ਵਿਸ਼ੇਸ਼ ਪੈਰਾਮੀਟਰ ਦੇ ਮੁੱਲ # ਉਹਨਾਂ ਫੰਕਸ਼ਨਾਂ ਦੇ ਚੱਲਣ ਤੋਂ ਪਹਿਲਾਂ ਵਾਲੇ ਮੁੱਲਾਂ ਨੂੰ ਬਹਾਲ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

ਫੰਕਸ਼ਨ ਨਾਂ ਅਤੇ ਪਰਿਭਾਸ਼ਾ ਡਿਪਲੇਅਰ ਜਾਂ ਟਾਈਪਿੰਗਟ ਬਿਲਟਿਨ ਕਮਾਂਡਾਂ ਨੂੰ -f ਵਿਕਲਪ ਨਾਲ ਸੂਚੀਬੱਧ ਕੀਤੇ ਜਾ ਸਕਦੇ ਹਨ. ਘੋਸ਼ਣਾ ਜਾਂ ਟਾਈਪੱਸਟ ਨੂੰ -F ਚੋਣ ਸਿਰਫ ਫੰਕਸ਼ਨ ਦੇ ਨਾਮ ਦੀ ਸੂਚੀ ਦੇਵੇਗਾ. ਫੰਕਸ਼ਨਾਂ ਨੂੰ ਨਿਰਯਾਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਤਾਂ ਕਿ ਸਬਸੈੱਲਾਂ ਨੇ ਉਹਨਾਂ ਨੂੰ ਆਪਣੇ ਆਪ ਹੀ -f ਚੋਣ ਨਾਲ ਪ੍ਰਭਾਸ਼ਿਤ ਕੀਤਾ ਹੋਵੇ ਤਾਂ ਕਿ ਨਿਰਯਾਤ ਬਿਲਡਿਨ ਵਿਚ.

ਫੰਕਸ਼ਨ ਲਗਾਤਾਰ ਹੋ ਸਕਦੇ ਹਨ ਲਗਾਤਾਰ ਕਾਲਾਂ ਦੀ ਗਿਣਤੀ ਤੇ ਕੋਈ ਸੀਮਾ ਲਾਗੂ ਨਹੀਂ ਕੀਤੀ ਗਈ ਹੈ

ਅੰਥਿਕ ਅਨੁਮਾਨ

ਸ਼ੈੱਲ ਕੁਝ ਸਿਥਤੀਆਂ ਦੇ ਤਹਿਤ ਅੰਕਗਣਿਤ ਸਮੀਕਰਨ ਦਾ ਮੁਲਾਂਕਣ ਕਰਨ ਵਿੱਚ ਸਹਾਇਤਾ ਕਰਦਾ ਹੈ (ਵੇਖੋ ਕਿ ਬਿਲਟਿਨ ਕਮਾਂਡਰ ਅਤੇ ਅਰਧਮੈਟਿਕ ਪਸਾਰ ਦੇਖੋ ). ਮੁਲਾਂਕਣ ਨਿਸ਼ਚਿਤ-ਚੌੜਾਈ ਇੰਟੀਜ਼ਰ ਵਿੱਚ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਿਸ ਨਾਲ ਓਵਰਫਲੋ ਲਈ ਕੋਈ ਚੈੱਕ ਨਹੀਂ ਮਿਲਦਾ ਭਾਵੇਂ ਕਿ 0 ਦੁਆਰਾ ਵੰਡਿਆ ਇੱਕ ਫਿਕਸ ਕੀਤਾ ਗਿਆ ਹੈ ਅਤੇ ਇੱਕ ਗਲਤੀ ਵਜੋਂ ਫਲੈਗ ਕੀਤਾ ਗਿਆ ਹੈ. ਓਪਰੇਟਰਸ ਅਤੇ ਉਹਨਾਂ ਦੀ ਤਰਜੀਹ ਅਤੇ ਸੰਗਠਨਾਤਮਕਤਾ, ਸੀ ਭਾਸ਼ਾ ਵਿਚ ਮਿਲਦੀ ਹੈ. ਓਪਰੇਟਰਾਂ ਦੀ ਹੇਠ ਲਿਖੀ ਸੂਚੀ ਬਰਾਬਰ-ਤਰਜੀਹੀ ਓਪਰੇਟਰਾਂ ਦੇ ਪੱਧਰ ਵਿੱਚ ਵੰਡੀ ਗਈ ਹੈ. ਪੱਧਰਾਂ ਨੂੰ ਘਟਦੀ ਤਰਜੀਹ ਦੇ ਕ੍ਰਮ ਵਿੱਚ ਸੂਚੀਬੱਧ ਕੀਤਾ ਗਿਆ ਹੈ.

id ++ id -

ਵੇਰੀਏਬਲ ਪੋਸਟ-ਇਨਕਰੀਮੈਂਟ ਅਤੇ ਪੋਸਟ-ਡਿਗਰੀਮੈਂਟ

++ id - id

ਵੇਰੀਏਬਲ ਪ੍ਰੀ-ਇਨਕਰੀਮੈਂਟ ਅਤੇ ਪ੍ਰੀ-ਡਿਗ੍ਰੀਮੈਂਟ

- +

ਇਕਸਾਰ ਘਟਾਓ ਅਤੇ ਪਲੱਸ

! ~

ਲਾਜ਼ੀਕਲ ਅਤੇ bitwise ਿਨਕਾਸ਼ਨ

**

exponentiation

* /%

ਗੁਣਾ, ਡਿਵੀਜ਼ਨ, ਬਾਕੀ

+ -

ਜੋੜ, ਘਟਾਉ

<< >>

ਖੱਬੇ ਅਤੇ ਸਹੀ ਬਿੱਟwise ਸ਼ਿਫਟ

<=> = <>

ਤੁਲਨਾ

==! =

ਸਮਾਨਤਾ ਅਤੇ ਅਸਮਾਨਤਾ

&

bitwise ਅਤੇ

^

bitwise exclusive ਜਾਂ

|

bitwise ਜਾਂ

&&

ਲਾਜ਼ੀਕਲ AND

||

ਲਾਜ਼ੀਕਲ OR

expr ? expr : expr

ਸ਼ਰਤੀਆ ਮੁਲਾਂਕਣ

= * = / =% = + = - = << = >> = ਅਤੇ = ^ = | =

ਅਸਾਈਨਮੈਂਟ

expr1 , expr2

ਕਾਮੇ

ਸ਼ੈਲ ਵੈਲਿਉਲਾਂ ਨੂੰ ਓਪਰੇਂਡਸ ਦੇ ਤੌਰ ਤੇ ਆਗਿਆ ਹੈ; ਸਮੀਕਰਨ ਦਾ ਮੁਲਾਂਕਣ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਪੈਰਾਮੀਟਰ ਦਾ ਵਿਸਥਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਇੱਕ ਸਮੀਕਰਨ ਦੇ ਅੰਦਰ, ਸ਼ੈੱਲ ਵੇਰੀਏਬਲ ਪੈਰਾਮੀਟਰ ਵਿਸਤਾਰਸ ਸੰਟੈਕਸ ਦੀ ਵਰਤੋਂ ਕੀਤੇ ਬਿਨਾਂ ਵੀ ਹਵਾਲਾ ਦੇ ਸਕਦੇ ਹਨ ਇੱਕ ਵੇਰੀਏਬਲ ਦਾ ਮੁੱਲ ਹਿਸਾਬ ਦੇ ਤੌਰ ਤੇ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਦੋਂ ਇਹ ਹਵਾਲਾ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ. ਇੱਕ ਸ਼ੈਲ ਪਰਿਵਰਤਨਸ਼ੀਲ ਲਈ ਇਸਦਾ ਪੂਰਨ ਅੰਕ ਗੁਣ ਇੱਕ ਐਕਸਪਰੈਸ਼ਨ ਵਿੱਚ ਚਾਲੂ ਨਹੀਂ ਹੋਣਾ ਚਾਹੀਦਾ.

ਪ੍ਰਮੁੱਖ 0 ਦੇ ਨਾਲ ਸਥਿਰ ਕੀਤੇ ਗਏ ਅੰਕਾਂ ਨੂੰ ਅੰਸ਼ਕ ਨੰਬਰ ਕਹਿੰਦੇ ਹਨ ਇੱਕ ਪ੍ਰਮੁੱਖ 0x ਜਾਂ 0X ਹੈਕਸਾਡੈਸੀਮਲ ਨੂੰ ਸੰਕੇਤ ਕਰਦਾ ਹੈ. ਨਹੀਂ ਤਾਂ, ਨੰਬਰ ਫਾਰ [ ਬੇਸ # ] n ਲੈਂਦੇ ਹਨ, ਜਿੱਥੇ ਆਧਾਰ ਅੰਕ ਅਤੇ ਗਣਿਤ ਆਧਾਰ ਦਾ 2 ਅਤੇ 64 ਦਸ਼ਮਲਵ ਦਾ ਦਸ਼ਮਲਵ ਅੰਕ ਹੁੰਦਾ ਹੈ, ਅਤੇ n ਉਸ ਆਧਾਰ ਵਿੱਚ ਇੱਕ ਨੰਬਰ ਹੁੰਦਾ ਹੈ. ਜੇਕਰ ਬੇਸ # ਨੂੰ ਛੱਡ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਤਾਂ ਬੇਸ 10 ਵਰਤੀ ਜਾਂਦੀ ਹੈ. 9 ਤੋਂ ਜਿਆਦਾ ਅੰਕ ਛੋਟੇ ਅੱਖਰਾਂ ਦੁਆਰਾ ਦਰਸਾਈਆਂ ਗਈਆਂ ਹਨ, ਵੱਡੇ ਅੱਖਰ, @, ਅਤੇ _, ਉਸ ਕ੍ਰਮ ਵਿੱਚ. ਜੇ ਬੇਸ 36 ਤੋਂ ਘੱਟ ਜਾਂ ਇਸਦੇ ਬਰਾਬਰ ਹੈ, ਤਾਂ ਲੋਅਰਕੇਸ ਅਤੇ ਅਪਰਕੇਸ ਅੱਖਰਾਂ ਨੂੰ 10 ਤੋਂ 35 ਵਿਚਕਾਰ ਨੰਬਰ ਦਰਸਾਉਣ ਲਈ ਇਕਸੁਰਤਾ ਨਾਲ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.

ਆਪਰੇਟਰਾਂ ਨੂੰ ਤਰਜੀਹ ਦੇ ਆਧਾਰ ਤੇ ਮੁਲਾਂਕਣ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਪ੍ਹੈਰੇ ਵਿੱਚ ਉਪ-ਪ੍ਰਗਟਾਵਾਂ ਦਾ ਮੁਲਾਂਕਣ ਪਹਿਲਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਅਤੇ ਉਪਰੋਕਤ ਤਰਜੀਹ ਨਿਯਮਾਂ ਨੂੰ ਓਵਰਰਾਈਡ ਕਰ ਸਕਦਾ ਹੈ.

ਸ਼ਰਤੀਆ ਐਕਸਪ੍ਰੈਸ

ਕੰਡੀਸ਼ਨਲ ਸਮੀਕਰਨ [[ ਮਿਸ਼ਰਿਤ ਕਮਾਂਡ ਅਤੇ ਟੈਸਟ ਅਤੇ [ ਗੁਣਵੱਤਾ ਆਦੇਸ਼ਾਂ ਦੁਆਰਾ ਫਾਇਲ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਦੀ ਜਾਂਚ ਅਤੇ ਸਤਰ ਅਤੇ ਅੰਕਗਣਿਤ ਤੁਲਨਾ ਕਰਨ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ. ਸਮੀਕਰਨ ਹੇਠਲੇ ਅਨਾਰਰੀ ਜਾਂ ਬਾਈਨਰੀ ਪ੍ਰਾਇਮਰੀ ਤੋਂ ਬਣਦੇ ਹਨ. ਜੇ ਪ੍ਰਾਇਮਰੀ ਦੇ ਕਿਸੇ ਵੀ ਫਾਇਲ ਨੂੰ / dev / fd / n ਫਾਰਮ ਦਾ ਕੋਈ ਆਰਜ਼ੀ ਦਲੀਲ ਹੈ, ਤਾਂ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ n ਦੀ ਜਾਂਚ ਕੀਤੀ ਗਈ ਹੈ. ਜੇ ਪ੍ਰਾਇਮਰੀ ਦੀ ਇੱਕ ਫਾਇਲ ਆਰਗੂਮੈਂਟ / dev / stdin , / dev / stdout , ਜਾਂ / dev / stderr , ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ 0, 1, ਜਾਂ 2, ਕ੍ਰਮਵਾਰ ਹੈ, ਚੈੱਕ ਕੀਤਾ ਗਿਆ ਹੈ.

-a ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ.

-b ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਬਲਾਕ ਵਿਸ਼ੇਸ਼ ਫਾਇਲ ਹੈ.

-c ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਵਿਸ਼ੇਸ਼ ਫਾਇਲ ਹੈ.

-d ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਡਾਇਰੈਕਟਰੀ ਹੈ.

-e ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ.

-f ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇੱਕ ਨਿਯਮਤ ਫਾਇਲ ਹੈ.

-g ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਸੈੱਟ-ਗਰੁੱਪ-id ਹੈ

-h ਫਾਈਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇੱਕ ਸਿੰਬੋਲਿਕ ਲਿੰਕ ਹੈ.

-k ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਸਦਾ `ਸਟਿੱਕੀ 'ਬਿੱਟ ਸੈਟ ਹੈ.

-p ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇੱਕ ਨਾਮਵਰ ਪਾਈਪ (ਫੀਫਾ) ਹੈ.

-r ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਪੜ੍ਹਨਯੋਗ ਹੈ.

-s ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਸਦਾ ਸ਼ੀਜ਼ਨ ਤੋਂ ਵੱਧ ਵੱਡਾ ਆਕਾਰ ਹੈ.

-t fd

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰ fd ਖੁੱਲ੍ਹਾ ਹੈ ਅਤੇ ਇੱਕ ਟਰਮੀਨਲ ਦਾ ਹਵਾਲਾ ਦਿੰਦਾ ਹੈ.

-u ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਸ ਦਾ ਸੈਟ-ਯੂਜ਼ਰ-ਆਈਡੀ ਬਿੱਟ ਸੈਟ ਹੈ.

-w ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਲਿਖਣ ਯੋਗ ਹੈ.

-x ਫਾਈਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਚੱਲਣਯੋਗ ਹੈ.

-O ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਪ੍ਰਭਾਵੀ ਯੂਜਰ ਆਈਡੀ ਦੀ ਮਲਕੀਅਤ ਹੈ.

-G ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਪ੍ਰਭਾਵਸ਼ਾਲੀ ਸਮੂਹ ਆਈਡੀ ਦੇ ਮਾਲਕ ਹੈ.

-L ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇੱਕ ਸਿੰਬੋਲਿਕ ਲਿੰਕ ਹੈ.

-S ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਕ ਸਾਕਟ ਹੈ.

-N ਫਾਇਲ

ਸਹੀ ਹੈ ਕਿ ਜੇ ਫਾਇਲ ਮੌਜੂਦ ਹੈ ਅਤੇ ਇਸ ਨੂੰ ਆਖਰੀ ਵਾਰ ਪੜ੍ਹਨ ਤੋਂ ਬਾਅਦ ਸੋਧਿਆ ਗਿਆ ਹੈ.

file1 - nt file2

ਸਹੀ ਹੈ ਕਿ file1 ਨਵੀਂ ਹੈ (ਸੋਧ ਮਿਤੀ ਅਨੁਸਾਰ) file2 ਨਾਲੋਂ, ਜਾਂ ਜੇ file1 ਮੌਜੂਦ ਹੈ ਅਤੇ file2 ਨਹੀਂ ਤਾਂ.

file1 - ot file2

ਸਹੀ ਹੈ ਜੇ file1 file2 ਤੋਂ ਪੁਰਾਣਾ ਹੈ, ਜਾਂ ਜੇ file2 ਮੌਜੂਦ ਹੈ ਅਤੇ ਫਾਇਲ 1 ਨਹੀਂ ਹੈ.

file1 -ef ਫਾਇਲ 2

ਸਹੀ ਹੈ ਜੇ file1 ਅਤੇ file2 ਇੱਕੋ ਹੀ ਜੰਤਰ ਅਤੇ ਆਈਔਡ ਨੰਬਰ ਵੇਖਦੇ ਹਨ.

-o optname

ਸਹੀ ਹੈ ਕਿ ਜੇ ਸ਼ੈੱਲ ਵਿਕਲਪ ਦਾ ਚੋਣ ਯੋਗ ਹੈ. ਹੇਠਾਂ ਦਿੱਤੇ ਸੈੱਟ ਬਿਲਟ ਵਿਚ -o ਚੋਣ ਦੇ ਵਰਣਨ ਦੇ ਤਹਿਤ ਵਿਕਲਪਾਂ ਦੀ ਸੂਚੀ ਦੇਖੋ.

-z ਸਟ੍ਰਿੰਗ

ਸਹੀ ਹੈ ਕਿ ਸਤਰ ਦੀ ਲੰਬਾਈ ਸਿਫਰ ਹੈ.

-n ਸਤਰ

ਸਤਰ

ਸਹੀ ਹੈ ਕਿ ਸਤਰ ਦੀ ਲੰਬਾਈ ਗੈਰ-ਜ਼ੀਰੋ ਹੈ.

ਸਤਰ 1 == ਸਤਰ 2

ਸਹੀ ਹੈ ਕਿ ਸਤਰ ਬਰਾਬਰ ਹਨ. = ਸਖਤ POSIX ਅਨੁਕੂਲਤਾ ਲਈ == ਦੀ ਥਾਂ ਤੇ ਵਰਤਿਆ ਜਾ ਸਕਦਾ ਹੈ.

ਸਤਰ 1 ! = ਸਤਰ 2

ਸਹੀ ਹੈ ਕਿ ਸਤਰ ਬਰਾਬਰ ਨਹੀਂ ਹਨ.

ਸਤਰ 1 < ਸਤਰ 2

ਸਹੀ ਹੈ ਜੇ string1 ਟਾਈਪ 2 ਤੋਂ ਪਹਿਲਾਂ ਮੌਜੂਦਾ ਲੋਕੇਲ ਵਿੱਚ ਸੰਦਰਭ ਰੂਪ ਵਿੱਚ ਹੈ.

ਸਤਰ 1 > ਸਤਰ 2

ਸਹੀ ਜੇ string1 ਟਾਈਪ ਕਰਨ ਤੋਂ ਬਾਅਦ ਮੌਜੂਦਾ ਲੋਕੇਲ ਵਿੱਚ ਸ਼ਬਦ- ਅਧਾਰਿਤ ਰੂਪ ਵਿੱਚ.

ਆਰਗ 1 ਆਰ ਆਰ ਆਰ 2

OP -eq , -ne , -lt , -le , -gt , ਜਾਂ -ge ਵਿੱਚੋਂ ਇੱਕ ਹੈ ਇਹ ਅੰਕਗਣਕ ਬਾਇਨਰੀ ਓਪਰੇਟਰਸ ਸੱਚ ਦਰੁਸਤ ਹੁੰਦੇ ਹਨ ਜੇ ਆਰ ਬੀ 1 ਬਰਾਬਰ, ਕ੍ਰਮਵਾਰ ਬਰਾਬਰ, ਘੱਟ ਤੋਂ ਘੱਟ, ਬਰਾਬਰ ਜਾਂ ਆਰਜੀ 2 ਦੇ ਬਰਾਬਰ ਜਾਂ ਇਸ ਤੋਂ ਬਰਾਬਰ, ਕ੍ਰਮਵਾਰ. ਆਰਗ 1 ਅਤੇ ਆਰਜੀ 2 ਸਕਾਰਾਤਮਕ ਜਾਂ ਰਿੰਗਿਕ ਪੂਰਨ ਅੰਕ ਹੋ ਸਕਦੇ ਹਨ.

ਸਧਾਰਨ ਕਮੈਂਟੇਸ਼ਨ ਦਾ ਉਤਾਰਾ

ਜਦੋਂ ਇੱਕ ਸਧਾਰਨ ਕਮਾਂਡ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਸ਼ੈੱਲ ਹੇਠ ਦਿੱਤੇ ਵਿਸਥਾਰਾਂ, ਨਿਯੁਕਤੀਆਂ ਅਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਨੂੰ ਖੱਬੇ ਤੋਂ ਸੱਜੇ ਕਰਦਾ ਹੈ

1.

ਸ਼ਬਦ ਜੋ ਪਾਸਰ ਨੂੰ ਵੇਅਰਿਏਬਲ ਅਸਾਈਨਮੈਂਟ (ਕਮਾਂਡ ਨਾਂ ਤੋਂ ਪਹਿਲਾਂ) ਅਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਦੇ ਰੂਪ ਵਿੱਚ ਚਿੰਨ੍ਹਿਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਉਹ ਬਾਅਦ ਵਿੱਚ ਪ੍ਰੋਸੈਸਿੰਗ ਲਈ ਸੁਰੱਖਿਅਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

2.

ਉਹ ਸ਼ਬਦ ਜੋ ਵੇਅਰਿਏਬਲ ਅਸਾਈਨਮੈਂਟ ਜਾਂ ਰੀਡਾਇਰੈਕਸ਼ਨਸ ਨਹੀਂ ਹਨ, ਉਹਨਾਂ ਦਾ ਵਿਸਤਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ ਵਿਸਤਾਰ ਦੇ ਬਾਅਦ ਕੋਈ ਸ਼ਬਦ ਬਾਕੀ ਰਹਿੰਦੇ ਹਨ ਤਾਂ ਪਹਿਲੇ ਸ਼ਬਦ ਨੂੰ ਕਮਾਂਡ ਦਾ ਨਾਂ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਬਾਕੀ ਬਚੇ ਸ਼ਬਦ ਆਰਗੂਮਿੰਟ ਹਨ.

3.

REDIRECTION ਹੇਠ ਉਪ੍ਰੋਕਤ ਵਰਣਨ ਅਨੁਸਾਰ ਮੁੜ ਨਿਰਦੇਸ਼ਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

4.

ਹਰ ਵੇਰੀਏਬਲ ਅਸਾਈਨਮੈਂਟ ਤੋਂ ਬਾਅਦ = ਪਾਠ ਪਰਿਭਾਸ਼ਾ ਨੂੰ ਨਿਰਧਾਰਤ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਟਿਲਡ ਵਾਧੇ, ਪੈਰਾਮੀਟਰ ਵਿਸਥਾਰ, ਹੁਕਮ ਬਦਲਣ, ਅੰਕਗਣ ਵਿਸਥਾਰ, ਅਤੇ ਹਵਾਲਾ ਕੱਢਣ ਤੋਂ ਬਾਅਦ.

ਜੇ ਕੋਈ ਕਮਾਂਡ ਨਾਂ ਦਾ ਨਤੀਜਾ ਨਹੀਂ ਹੁੰਦਾ, ਤਾਂ ਵੇਰੀਏਬਲ ਅਸਾਈਨਮੈਂਟ ਵਰਤਮਾਨ ਸ਼ੈੱਲ ਵਾਤਾਵਰਣ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਕਰਦੇ ਹਨ. ਨਹੀਂ ਤਾਂ, ਵੇਰੀਏਬਲ ਨੂੰ ਚਲਾਉਣ ਵਾਲੇ ਕਮਾਂਡ ਦੇ ਵਾਤਾਵਰਣ ਵਿੱਚ ਜੋੜਿਆ ਜਾਵੇਗਾ ਅਤੇ ਵਰਤਮਾਨ ਸ਼ੈੱਲ ਵਾਤਾਵਰਨ ਤੇ ਪ੍ਰਭਾਵ ਨਹੀਂ ਪਾਵੇਗਾ. ਜੇ ਕਿਸੇ ਵੀ ਇਕਰਾਰਨਾਮੇ ਨੂੰ ਸਿਰਫ ਪੜਨਯੋਗ ਮੁੱਲ ਦੇ ਮੁੱਲ ਨੂੰ ਦੇਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ, ਤਾਂ ਇੱਕ ਤਰੁੱਟੀ ਉਤਪੰਨ ਹੁੰਦੀ ਹੈ, ਅਤੇ ਕਮਾਂਡ ਇੱਕ ਗੈਰ-ਜ਼ੀਰੋ ਸਥਿਤੀ ਨਾਲ ਬੰਦ ਹੋ ਜਾਂਦੀ ਹੈ.

ਜੇ ਕੋਈ ਕਮਾਂਡ ਨਾਂ ਦਾ ਨਤੀਜਾ ਨਹੀਂ, ਰੀਡਾਇਰੈਕਸ਼ਨ ਕੀਤੇ ਜਾਂਦੇ ਹਨ, ਪਰ ਵਰਤਮਾਨ ਸ਼ੈੱਲ ਵਾਤਾਵਰਨ ਤੇ ਪ੍ਰਭਾਵ ਨਹੀਂ ਪਾਉਂਦੇ. ਇੱਕ ਰੀਡਾਇਰੈਕਸ਼ਨ ਗਲਤੀ ਨੇ ਇੱਕ ਗ਼ੈਰ-ਜ਼ੀਰੋ ਸਥਿਤੀ ਨਾਲ ਬੰਦ ਹੋਣ ਵਾਲੀ ਕਮਾਂਡ ਦੀ ਆਲੋਚਨਾ ਕੀਤੀ ਹੈ.

ਜੇ ਵਿਸਥਾਰ ਕਰਨ ਤੋਂ ਬਾਅਦ ਇੱਕ ਨਾਮ ਦਾ ਨਾਮ ਬਾਕੀ ਹੈ, ਤਾਂ ਹੇਠਾਂ ਦੱਸੇ ਅਨੁਸਾਰ ਲਾਗੂ ਕਰਨ ਦੀ ਕਮਾਈ ਹੈ. ਨਹੀਂ ਤਾਂ ਕਮਾਂਡ ਬਾਹਰ ਨਿਕਲਦਾ ਹੈ. ਜੇ ਇੱਕ ਐਕਸਪੈਂਸ਼ਨ ਵਿੱਚ ਇੱਕ ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ ਹੈ, ਤਾਂ ਕਮਾਂਡ ਦੀ ਨਿਵੇਸ਼ਕ ਸਥਿਤੀ ਆਖਰੀ ਕਮਾਂਡ ਪ੍ਰਤੀਭੂਤੀ ਦੀ ਬਾਹਰਲੀ ਸਥਿਤੀ ਹੈ. ਜੇ ਕੋਈ ਕਮਾਂਡ ਬਦਲਵਾਂ ਨਹੀਂ ਸਨ, ਕਮਾਂਡ ਜ਼ੀਰੋ ਦੀ ਸਥਿਤੀ ਨਾਲ ਬੰਦ ਹੋ ਜਾਂਦੀ ਹੈ.

COMMAND EXECUTION

ਇੱਕ ਹੁਕਮ ਨੂੰ ਸ਼ਬਦਾਂ ਵਿੱਚ ਵੰਡਣ ਤੋਂ ਬਾਅਦ, ਜੇ ਇਹ ਇੱਕ ਸਧਾਰਨ ਕਮਾਂਡ ਅਤੇ ਆਰਗੂਮਿੰਟ ਦੀ ਇੱਕ ਚੋਣਵੀਂ ਸੂਚੀ ਵਿੱਚ ਆਉਂਦੀ ਹੈ, ਤਾਂ ਹੇਠ ਲਿਖੀਆਂ ਕਾਰਵਾਈਆਂ ਕੀਤੀਆਂ ਗਈਆਂ ਹਨ.

ਜੇਕਰ ਕਮਾਂਡ ਨਾਂ ਵਿੱਚ ਕੋਈ ਸਲੈਸ਼ ਨਹੀਂ ਹੈ, ਸ਼ੈੱਲ ਇਸ ਨੂੰ ਲੱਭਣ ਲਈ ਕੋਸ਼ਿਸ਼ ਕਰਦਾ ਹੈ ਜੇਕਰ ਉਸ ਨਾਂ ਦੁਆਰਾ ਇੱਕ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਮੌਜੂਦ ਹੈ, ਤਾਂ ਉਸ ਫੰਕਸ਼ਨ ਨੂੰ ਫੰਕਸ਼ਨ ਵਿੱਚ ਉਪ੍ਰੋਕਤ ਦੱਸੇ ਵਜੋਂ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ. ਜੇ ਨਾਮ ਕਿਸੇ ਫੰਕਸ਼ਨ ਨਾਲ ਮੇਲ ਨਹੀਂ ਖਾਂਦਾ, ਸ਼ੈੱਲ ਸ਼ੈੱਲ ਬਿਲਡਿਨਸ ਦੀ ਸੂਚੀ ਵਿਚ ਇਸ ਲਈ ਖੋਜਦਾ ਹੈ. ਜੇਕਰ ਮੈਚ ਮਿਲਦਾ ਹੈ, ਤਾਂ ਉਸ ਬਿਲਟ ਨੂੰ ਅਪਣਾਇਆ ਜਾਂਦਾ ਹੈ.

ਜੇ ਨਾਂ ਨਾ ਇੱਕ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਹੈ ਅਤੇ ਨਾ ਹੀ ਇਕ ਬਿਲਟਿਨ ਹੈ, ਅਤੇ ਇਸ ਵਿੱਚ ਕੋਈ ਸਲਾਸ ਨਹੀਂ ਹੈ, ਤਾਂ bash ਉਸ ਡਾਇਰੈਕਟਰੀ ਵਿੱਚੋਂ ਕਿਸੇ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਫਾਈਲ ਵਾਲੀ ਡਾਇਰੈਕਟਰੀ ਲਈ PATH ਦੀ ਹਰੇਕ ਐਲੀਮੈਂਟ ਦੀ ਖੋਜ ਕਰਦਾ ਹੈ. ਬॅश ਐਕਟੇਬਲ ਕਰਨ ਯੋਗ ਫਾਈਲਾਂ ਦੇ ਪੂਰੇ ਪਾਥਨਾਂ ਨੂੰ ਯਾਦ ਕਰਨ ਲਈ ਇੱਕ ਹੈਸ਼ ਟੇਬਲ ਵਰਤਦਾ ਹੈ (ਹੇਠਾਂ ਸ਼ੇਲ ਬਿਲਟਿਨ ਕਮਾਂਡਾਂ ਦੇ ਅਧੀਨ ਹੈਸ਼ ਦੇਖੋ) PATH ਵਿਚਲੀਆਂ ਡਾਇਰੈਕਟਰੀਆਂ ਦੀ ਪੂਰੀ ਖੋਜ ਤਾਂ ਹੀ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੇ ਕਮਾਂਡ ਹੈਸ਼ ਟੇਬਲ ਵਿੱਚ ਨਹੀਂ ਲੱਭੀ ਹੈ. ਜੇਕਰ ਖੋਜ ਅਸਫਲ ਹੋ ਗਈ ਹੈ, ਸ਼ੈੱਲ ਇੱਕ ਗਲਤੀ ਸੁਨੇਹਾ ਪ੍ਰਿੰਟ ਕਰਦਾ ਹੈ ਅਤੇ 127 ਦੀ ਇੱਕ ਬਾਹਰਲੀ ਸਥਿਤੀ ਵਾਪਸ ਕਰਦਾ ਹੈ.

ਜੇ ਖੋਜ ਸਫਲ ਹੁੰਦੀ ਹੈ, ਜਾਂ ਜੇ ਕਮਾਂਡ ਨਾਂ ਵਿੱਚ ਇੱਕ ਜਾਂ ਵਧੇਰੇ ਸਲੈਸ਼ਾਂ ਹਨ, ਸ਼ੈੱਲ ਇੱਕ ਵੱਖਰੇ ਚੱਲਣ ਵਾਤਾਵਰਣ ਵਿੱਚ ਨਾਮ ਵਾਲੇ ਪ੍ਰੋਗਰਾਮ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ. ਆਰਗੂਮੈਂਟ 0 ਨੂੰ ਦਿੱਤਾ ਗਿਆ ਨਾਂ ਦਿੱਤਾ ਗਿਆ ਹੈ, ਅਤੇ ਬਾਕੀ ਰਹਿੰਦੇ ਆਰਗੂਮੈਂਟ ਦਿੱਤੇ ਆਰਗੂਮੈਂਟਾਂ ਤੇ ਨਿਰਧਾਰਤ ਕੀਤੇ ਹਨ, ਜੇ ਕੋਈ ਹੋਵੇ.

ਜੇ ਇਹ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਫੇਲ ਹੁੰਦਾ ਹੈ ਕਿਉਂਕਿ ਫਾਇਲ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਫਾਰਮੈਟ ਵਿੱਚ ਨਹੀਂ ਹੈ, ਅਤੇ ਫਾਇਲ ਡਾਇਰੈਕਟਰੀ ਨਹੀਂ ਹੈ, ਇਸ ਨੂੰ ਸ਼ੈੱਲ ਸਕ੍ਰਿਪਟ ਮੰਨਿਆ ਜਾਂਦਾ ਹੈ, ਸ਼ੈੱਲ ਕਮਾਂਡ ਵਾਲੇ ਇੱਕ ਫਾਇਲ. ਇੱਕ ਸਬਸ਼ੀਲ ਨੂੰ ਚਲਾਉਣ ਲਈ ਪੈਦਾ ਕੀਤਾ ਗਿਆ ਹੈ. ਇਹ ਸਬਹੈਲ ਆਪਣੇ ਆਪ ਨੂੰ ਦੁਬਾਰਾ ਸ਼ੁਰੂ ਕਰਦਾ ਹੈ, ਇਸ ਲਈ ਪ੍ਰਭਾਵ ਇਹ ਹੈ ਜਿਵੇਂ ਇੱਕ ਸਕ੍ਰਿਪਟ ਨੂੰ ਸੰਭਾਲਣ ਲਈ ਇੱਕ ਨਵੀਂ ਸ਼ੈੱਲ ਦੀ ਮੰਗ ਕੀਤੀ ਗਈ ਸੀ, ਅਪਵਾਦ ਦੇ ਨਾਲ, ਜੋ ਕਿ ਮਾਪਿਆਂ ਦੁਆਰਾ ਯਾਦ ਕੀਤੇ ਗਏ ਆਦੇਸ਼ਾਂ ਦੇ ਸਥਾਨਾਂ ਨੂੰ ( ਸ਼ੈਲ ਬਿੱਲਟਿਨ ਕਮਮਾਂ ਦੇ ਥੱਲੇ ਥੱਲੇ ਦੇਖੋ) ਬੱਚੇ ਦੁਆਰਾ ਰੱਖੇ ਜਾਂਦੇ ਹਨ.

ਜੇ ਪ੍ਰੋਗਰਾਮ ਇੱਕ ਫਾਇਲ ਹੈ ਜੋ # ਨਾਲ ਸ਼ੁਰੂ ਹੈ ! , ਪਹਿਲੀ ਲਾਈਨ ਦਾ ਬਾਕੀ ਹਿੱਸਾ ਪ੍ਰੋਗਰਾਮ ਲਈ ਦੁਭਾਸ਼ੀਏ ਨੂੰ ਦਰਸਾਉਂਦਾ ਹੈ. ਸ਼ੈੱਲ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮਾਂ ਤੇ ਸਪਸ਼ਟ ਪਰਿਭਾਸ਼ਾ ਨੂੰ ਚਲਾਉਂਦਾ ਹੈ ਜੋ ਇਹਨਾਂ ਐਗਜ਼ੀਕਿਊਟੇਬਲ ਫਾਰਮੈਟਾਂ ਨੂੰ ਆਪਣੇ ਆਪ ਨਹੀਂ ਸੰਭਾਲਦਾ. ਦੁਭਾਸ਼ੀਏ ਲਈ ਆਰਗੂਮੈਂਟ ਇੱਕ ਸਿੰਗਲ ਵਿਕਲਪਿਕ ਆਰਗੂਮੈਂਟ, ਪ੍ਰੋਗਰਾਮ ਦੀ ਪਹਿਲੀ ਲਾਈਨ ਤੇ ਦੁਭਾਸ਼ੀਏ ਦੇ ਨਾਂ ਦੇ ਬਾਅਦ, ਪ੍ਰੋਗਰਾਮ ਦੇ ਨਾਮ ਤੋਂ ਬਾਅਦ, ਕਮਾਂਡ ਆਰਗੂਮੈਂਟ ਦੇ ਬਾਅਦ, ਜੇ ਕੋਈ ਹੋਵੇ.

COMMAND ਪ੍ਰਣਾਲੀ ਵਾਤਾਵਰਣ

ਸ਼ੈੱਲ ਵਿੱਚ ਇੱਕ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਣ ਹੈ , ਜਿਸ ਵਿੱਚ ਹੇਠ ਲਿਖਿਆ ਹੁੰਦਾ ਹੈ:

*

ਓਪਨ ਫਾਈਲਾਂ ਨੂੰ ਸ਼ੈੱਲ ਦੁਆਰਾ ਵਾਰ-ਵਾਰ ਆਵਾਜਾਈ ਦੇ ਤੌਰ ਤੇ ਪ੍ਰਾਪਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਿਵੇਂ ਕਿ ਐਕ ਬਿਲਟਿਨ ਨੂੰ ਦਿੱਤੇ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਦੁਆਰਾ ਸੰਸ਼ੋਧਿਤ ਕੀਤਾ ਗਿਆ ਹੈ

*

ਮੌਜੂਦਾ ਕੰਮ ਕਰ ਰਿਹਾ ਡਾਇਰੈਕਟਰੀ ਜਿਸ ਨੂੰ cd , pushd , ਜਾਂ popd ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤਾ ਗਿਆ ਹੈ, ਜਾਂ ਸ਼ੈੱਲ ਦੁਆਰਾ ਇਨਵੋਕੇਸ਼ਨ ਤੇ ਵਿਸਥਾਰ ਕੀਤਾ ਗਿਆ ਹੈ

*

ਫਾਇਲ ਬਣਾਉਣ ਮੋਡ ਜਿਸ ਨੂੰ umask ਦੁਆਰਾ ਸੈੱਟ ਕੀਤਾ ਗਿਆ ਹੈ ਜਾਂ ਸ਼ੈਲ ਦੇ ਮਾਤਾ ਜਾਂ ਪਿਤਾ ਦੁਆਰਾ ਵਿਰਾਸਤ ਕੀਤਾ ਗਿਆ ਹੈ

*

ਫੰਕਸ਼ਨ ਦੁਆਰਾ ਸੈੱਟ ਕੀਤੇ ਮੌਜੂਦਾ ਜਾਲ

*

ਸ਼ੈੱਲ ਪੈਰਾਮੀਟਰ ਜੋ ਕਿ ਵੇਰੀਏਬਲ ਨਿਰਧਾਰਨ ਦੁਆਰਾ ਨਿਰਧਾਰਤ ਕੀਤੇ ਗਏ ਹਨ ਜਾਂ ਸੈਟੇਲਾਈਟ ਨਾਲ ਜਾਂ ਵਾਤਾਵਰਣ ਵਿੱਚ ਸ਼ੈੱਲ ਦੇ ਮਾਪਿਆਂ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਹਨ

*

ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਨੂੰ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਿੱਚ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਾਂ ਵਾਤਾਵਰਣ ਵਿੱਚ ਸ਼ੈੱਲ ਦੇ ਮਾਪੇ ਤੋਂ ਵਿਰਾਸਤ ਪ੍ਰਾਪਤ ਹੁੰਦਾ ਹੈ

*

ਚੋਣਾਂ ਨੂੰ ਅਵਾਜ ਕਰਨ ਤੇ ਯੋਗ ਕੀਤਾ ਗਿਆ (ਜਾਂ ਤਾਂ ਡਿਫਾਲਟ ਰੂਪ ਵਿੱਚ ਜਾਂ ਕਮਾਂਡ-ਲਾਈਨ ਆਰਗੂਮੈਂਟ ਨਾਲ) ਜਾਂ ਸੈਟ ਰਾਹੀਂ

*

ਸ਼ੌਟਟ ਦੁਆਰਾ ਵਿਕਲਪ ਯੋਗ

*

alias ਨਾਲ ਪਰਿਭਾਸ਼ਿਤ ਕੀਤੀਆਂ ਸ਼ੈੱਲ ਉਪਨਾਮ

*

ਵੱਖ-ਵੱਖ ਪ੍ਰਕਿਰਿਆ IDs, ਬੈਕਗ੍ਰਾਉਂਡ ਦੀਆਂ ਨੌਕਰੀਆਂ ਸਮੇਤ, $ $ ਦਾ ਮੁੱਲ, ਅਤੇ $ PPID ਦਾ ਮੁੱਲ

ਜਦੋਂ ਇਕ ਅੰਦਰੂਨੀ ਜਾਂ ਸ਼ੈੱਲ ਫੰਕਸ਼ਨ ਤੋਂ ਇਲਾਵਾ ਇਕ ਸਧਾਰਨ ਹੁਕਮ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਇਕ ਵੱਖਰੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਣ ਵਿਚ ਲਾਗੂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜਿਸ ਵਿਚ ਹੇਠ ਲਿਖੀਆਂ ਗੱਲਾਂ ਹੁੰਦੀਆਂ ਹਨ. ਜਦੋਂ ਤੱਕ ਹੋਰ ਨੋਟ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ, ਮੁੱਲ ਸ਼ੈੱਲ ਤੋਂ ਪ੍ਰਾਪਤ ਕੀਤੇ ਜਾਂਦੇ ਹਨ.

*

ਸ਼ੈੱਲ ਦੀਆਂ ਖੁੱਲੀਆਂ ਫਾਈਲਾਂ, ਨਾਲ ਹੀ ਕੋਈ ਵੀ ਸੋਧ ਅਤੇ ਵਾਧੇ ਕਮਾਂਡ ਨੂੰ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਦੁਆਰਾ ਦਰਸਾਏ ਗਏ ਹਨ

*

ਮੌਜੂਦਾ ਵਰਕਿੰਗ ਡਾਇਰੈਕਟਰੀ

*

ਫਾਇਲ ਨਿਰਮਾਣ ਢੰਗ ਦਾ ਮਾਸਕ

*

ਨਿਰਯਾਤ ਲਈ ਮਾਰਕ ਕੀਤੇ ਸ਼ੈੱਲ ਵੇਰੀਬਲ, ਵਾਤਾਵਰਨ ਵਿੱਚ ਪਾਸ ਕੀਤੇ ਕਮਾਂਡ ਲਈ ਐਕਸਪੋਰਟ ਕੀਤੇ ਵੇਰੀਏਬਲਾਂ ਸਮੇਤ

*

ਸ਼ੈੱਲ ਦੁਆਰਾ ਪਕੜੇ ਫਾਹੇ ਸ਼ੈੱਲ ਦੇ ਮਾਤਾ-ਪਿਤਾ ਤੋਂ ਪ੍ਰਾਪਤ ਹੋਣ ਵਾਲੇ ਮੁੱਲਾਂ ਨੂੰ ਰੀਸੈਟ ਕਰਦੇ ਹਨ, ਅਤੇ ਸ਼ੈੱਲ ਦੁਆਰਾ ਅਣਡਿੱਠ ਕੀਤੇ ਜਾਲਾਂ ਨੂੰ ਅਣਡਿੱਠ ਕੀਤਾ ਜਾਂਦਾ ਹੈ.

ਇਸ ਵੱਖਰੇ ਵਾਤਾਵਰਣ ਵਿੱਚ ਲਾਗੂ ਇੱਕ ਕਮਾਂਡ ਸ਼ੈੱਲ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਣ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਕਰ ਸਕਦੀ.

ਇੱਕ ਸਬਸ਼ੀਲ ਵਾਤਾਵਰਨ ਵਿੱਚ ਕਮਾਂਡ ਬਦਲਣ ਅਤੇ ਅਸਿੰਕਰੋਨਸ ਕਮਾਂਡਾਂ ਦੀ ਵਰਤੋਂ ਕੀਤੀ ਜਾਂਦੀ ਹੈ ਜੋ ਕਿ ਸ਼ੈੱਲ ਵਾਤਾਵਰਨ ਦੀ ਇੱਕ ਡੁਪਲੀਕੇਟ ਹੈ, ਇਸਦੇ ਇਲਾਵਾ ਸ਼ੈੱਲ ਦੁਆਰਾ ਫੜੇ ਹੋਏ ਫਾਹਾਂ ਨੂੰ ਉਹਨਾਂ ਮੁੱਲਾਂ ਤੇ ਰੀਸੈਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ ਜੋ ਸ਼ੈੱਲ ਨੂੰ ਆਪਣੇ ਮਾਤਾ-ਪਿਤਾ ਵੱਲੋਂ ਮੰਗੇ ਗਏ ਸਨ. ਅੰਦਰੂਨੀ ਕਮਾਂਡਾਂ ਜੋ ਇੱਕ ਪਾਈਪਲਾਈਨ ਦੇ ਹਿੱਸੇ ਵਜੋਂ ਲਾਗੂ ਕੀਤੀਆਂ ਜਾਂਦੀਆਂ ਹਨ ਨੂੰ ਵੀ ਇੱਕ ਸਬ-ਸ਼ੈੱਲ ਵਾਤਾਵਰਣ ਵਿੱਚ ਚਲਾਇਆ ਜਾਂਦਾ ਹੈ. ਸਬਹੈਲ ਵਾਤਾਵਰਣ ਵਿੱਚ ਕੀਤੇ ਗਏ ਬਦਲਾਅ ਸ਼ੈੱਲ ਦੇ ਐਗਜ਼ੀਕਿਊਸ਼ਨ ਵਾਤਾਵਰਣ ਨੂੰ ਪ੍ਰਭਾਵਤ ਨਹੀਂ ਕਰ ਸਕਦੇ.

ਜੇਕਰ ਇੱਕ ਕਮਾਂਡ ਨੂੰ ਐਂਡ ਐਂਡ ਜੋਅਰ ਕੰਟ੍ਰੋਲ ਚਾਲੂ ਨਹੀਂ ਕੀਤਾ ਜਾਂਦਾ, ਤਾਂ ਕਮਾਂਡ ਲਈ ਡਿਫਾਲਟ ਸਟੈਂਡਰਡ ਇੰਪੁੱਟ ਖਾਲੀ ਫਾਇਲ ਹੈ / dev / null ਨਹੀਂ ਤਾਂ, ਆੱਂਡਰਡ ਕਮਾਂਡ, ਡੈੱਡਿੰਗ ਸ਼ੈਲ ਦੇ ਫਾਈਲ ਡਿਸਕ੍ਰਿਪਟਰਾਂ ਨੂੰ ਪ੍ਰਾਪਤ ਕਰਦੀ ਹੈ, ਜਿਵੇਂ ਕਿ ਰੀਡਾਇਰੈਕਸ਼ਨਾਂ ਦੁਆਰਾ ਸੋਧਿਆ ਗਿਆ ਹੈ.

ਇਹ ਵੀ ਵੇਖੋ

ਬੈਸ ਰੈਫਰੈਂਸ ਮੈਨੂਅਲ , ਬ੍ਰਾਇਨ ਫੌਕਸ ਅਤੇ ਚੇਟ ਰਮੀ

ਗਨੂ ਰੀਪਲਾਈਨ ਲਾਇਬ੍ਰੇਰੀ , ਬ੍ਰਾਇਨ ਫੌਕਸ ਅਤੇ ਚੇਤ ਰਿਮੀ

ਜੀਐਨਯੂ ਇਤਿਹਾਸ ਲਾਇਬ੍ਰੇਰੀ , ਬ੍ਰਾਇਨ ਫਾਕਸ ਅਤੇ ਚੇਤ ਰਮੀ

ਪੋਰਟੇਬਲ ਓਪਰੇਟਿੰਗ ਸਿਸਟਮ ਇੰਟਰਫੇਸ (POSIX) ਭਾਗ 2: ਸ਼ੈੱਲ ਅਤੇ ਉਪਯੋਗਤਾਵਾਂ , IEEE

sh (1), ksh (1), ਸੀਐਸਐਸ (1)

ਇਮੈਕਸ (1), vi (1)

ਰੀਡਲਾਈਨ (3)