ਤੁਸੀਂ $ SHLVL ਵੇਰੀਬਲ ਕਿਉਂ ਅਤੇ ਕਿਵੇਂ ਵਰਤਣਾ ਹੈ

$ SHLVL ਵੇਰੀਏਬਲ ਤੁਹਾਨੂੰ ਦੱਸਣ ਲਈ ਵਰਤਿਆ ਜਾਂਦਾ ਹੈ ਕਿ ਤੁਸੀਂ ਕਿੰਨੇ ਡੂੰਘੇ ਡੂੰਘੇ ਹੋ. ਜੇ ਤੁਸੀਂ ਇਸ ਦੁਆਰਾ ਉਲਝਣ 'ਚ ਹੁੰਦੇ ਹੋ ਤਾਂ ਇਹ ਸ਼ੁਰੂ ਤੋਂ ਸ਼ੁਰੂ ਕਰਨ ਦੇ ਯੋਗ ਹੈ.

ਇੱਕ ਸ਼ੈੱਲ ਕੀ ਹੈ?

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

ਲੀਨਕਸ ਸ਼ੈਲ ਤਕ ਕਿਵੇਂ ਪਹੁੰਚਣਾ ਹੈ

ਆਮ ਤੌਰ ਤੇ ਜਦੋਂ ਤੁਸੀਂ ਇੱਕ ਟਰਮੀਨਲ ਇਮੂਲੇਸ਼ਨ ਪ੍ਰੋਗਰਾਮ ਜਿਵੇਂ ਕਿ XTerm, ਕਨਸੋਲ ਜਾਂ ਗਨੋਮ-ਟਰਮੀਨਲ ਵਰਤਦੇ ਹੋ, ਸ਼ੈੱਲ ਪ੍ਰੋਗਰਾਮ ਨਾਲ ਜੁੜੇ ਇੱਕ ਉਪਭੋਗਤਾ ਦੇ ਰੂਪ ਵਿੱਚ.

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

ਵਿਕਲਪਕ ਤੌਰ ਤੇ ਤੁਸੀਂ ਕਿਸੇ ਹੋਰ ਟੀਟੀ (ਟੇਲੇਟਾਈਪਰਾਇਟਰ) ਤੇ ਸਵਿਚ ਕਰ ਸਕਦੇ ਹੋ ਜੋ ਕਿ ਕਮਾਂਡ ਲਾਈਨ ਸ਼ੈੱਲ ਤੱਕ ਸਿੱਧੀ ਪਹੁੰਚ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ. ਤੁਸੀਂ CTRL ALT ਅਤੇ F1 ਜਾਂ CTRL ALT ਅਤੇ F2 ਆਦਿ ਨੂੰ ਦਬਾ ਕੇ ਇਹ ਕਰ ਸਕਦੇ ਹੋ.

ਸ਼ੈੱਲ ਪੱਧਰ ਕੀ ਹੈ?

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

ਇਸ ਲਈ ਮਾਪੇ ਦੇ ਸ਼ੈਲ ਨੂੰ ਸ਼ਾਇਦ ਲੈਵਲ 1 ਸ਼ੈੱਲ ਮੰਨਿਆ ਜਾਵੇਗਾ ਅਤੇ ਬੱਚੇ ਦੀ ਸ਼ੈਲ ਇੱਕ ਲੈਵਲ 2 ਸ਼ੈੱਲ ਹੋਵੇਗੀ.

ਸ਼ੈੱਲ ਪੱਧਰ ਨੂੰ ਕਿਵੇਂ ਪ੍ਰਦਰਸ਼ਿਤ ਕਰਨਾ ਹੈ

ਇਹ ਲੇਖ ਦੇ ਸਿਰਲੇਖ ਦੇ ਆਧਾਰ ਤੇ ਕੋਈ ਹੈਰਾਨੀ ਦੇ ਤੌਰ ਤੇ ਆਉਣਾ ਨਹੀਂ ਚਾਹੀਦਾ ਹੈ ਜਿਸ ਤਰੀਕੇ ਨਾਲ ਤੁਸੀਂ ਇਹ ਦੱਸ ਸਕਦੇ ਹੋ ਕਿ ਤੁਸੀਂ $ SHLVL ਵੇਰੀਏਬਲ ਵਰਤ ਰਹੇ ਹੋ.

ਸ਼ੈੱਲ ਪੱਧਰ ਦੇਖਣ ਲਈ ਜੋ ਤੁਸੀਂ ਵਰਤਮਾਨ ਵਿੱਚ ਹੇਠ ਲਿਖੇ ਨੂੰ ਟਾਈਪ ਕਰਦੇ ਹੋ:

ਈਕੋ $ SHLVL

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

ਜੇ ਤੁਸੀਂ ਉਹੀ ਕਮਾਂਡ tty ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ ਤਾਂ ਨਤੀਜਾ 1 ਹੈ.

ਤੁਸੀਂ ਅਜਿਹਾ ਕਿਉਂ ਪੁੱਛ ਸਕਦੇ ਹੋ? Well ਤੁਹਾਡੇ ਵੱਲੋਂ ਚਲਾਏ ਜਾਂਦੇ ਡੈਸਕਟੌਪ ਇੰਵਾਇਰਨ ਸ਼ੈਲ ਦੇ ਉਪਰ ਚੱਲ ਰਿਹਾ ਹੈ. ਉਹ ਸ਼ੈਲ ਪੱਧਰ 1 ਹੋਵੇਗਾ. ਕੋਈ ਵੀ ਟਰਮਿਨਲ ਵਿੰਡੋ ਜਿਸ ਨੂੰ ਤੁਸੀਂ ਡੈਸਕਟੌਪ ਇਨਵਾਇਰਮੈਂਟ ਦੇ ਅੰਦਰ ਖੋਲੋ ਹੋ, ਉਸਦੀ ਸ਼ੈੱਲ ਦਾ ਬੱਚਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ, ਜੋ ਕਿ ਡੈਸਕਟੌਪ ਵਾਤਾਵਰਣ ਨੂੰ ਖੋਲਦਾ ਹੈ ਅਤੇ ਇਸਲਈ ਸ਼ੈਲ ਪੱਧਰ 2 ਤੋਂ ਵੱਧ ਕਿਸੇ ਵੀ ਨੰਬਰ ਤੇ ਅਰੰਭ ਨਹੀਂ ਹੋ ਸਕਦਾ.

Tty ਇੱਕ ਡੈਸਕਟੌਪ ਵਾਤਾਵਰਨ ਨਹੀਂ ਚਲਾ ਰਿਹਾ ਹੈ ਅਤੇ ਇਸਲਈ ਇਹ ਸਿਰਫ਼ ਇੱਕ ਪੱਧਰ 1 ਸ਼ੈਲ ਹੈ

Subshells ਕਿਵੇਂ ਬਣਾਉਣਾ ਹੈ

ਸ਼ੈੱਲਾਂ ਅਤੇ ਸਬ-ਸ਼ੇਲਸ ਦੀ ਧਾਰਨਾ ਦੀ ਜਾਂਚ ਕਰਨ ਦਾ ਸਭ ਤੋਂ ਆਸਾਨ ਤਰੀਕਾ ਹੈ ਜਿਵੇਂ ਕਿ. ਇੱਕ ਟਰਮੀਨਲ ਵਿੰਡੋ ਖੋਲੋ ਅਤੇ ਹੇਠ ਦਿੱਤੀ ਟਾਈਪ ਕਰੋ:

ਈਕੋ $ SHLVL

ਜਿਵੇਂ ਕਿ ਅਸੀਂ ਇੱਕ ਟਰਮੀਨਲ ਵਿੰਡੋ ਤੋਂ ਜਾਣਦੇ ਹਾਂ ਕਿ ਘੱਟੋ ਘੱਟ ਪੱਧਰ 2 ਹੈ.

ਹੁਣ ਟਰਮੀਨਲ ਵਿੰਡੋ ਦੇ ਅੰਦਰ ਇਹ ਟਾਈਪ ਕਰੋ:

sh

Sh ਕਮਾਂਡ ਆਪਣੇ ਆਪ ਇਕ ਇੰਟਰਐਕਟਿਵ ਸ਼ੈਲ ਚਲਾਉਂਦੀ ਹੈ ਜਿਸਦਾ ਅਰਥ ਹੈ ਕਿ ਤੁਸੀਂ ਇੱਕ ਸ਼ੈੱਲ ਜਾਂ ਸਬਸ਼ੇਅੱਲ ਵਿੱਚ ਇੱਕ ਸ਼ੈੱਲ ਦੀ ਵਰਤੋਂ ਕਰ ਰਹੇ ਹੋ.

ਜੇ ਤੁਸੀਂ ਇਸ ਨੂੰ ਦੁਬਾਰਾ ਟਾਈਪ ਕਰਦੇ ਹੋ:

ਈਕੋ $ SHLVL

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

ਸ਼ੈਲ ਦਾ ਪੱਧਰ ਮਹੱਤਵਪੂਰਨ ਕਿਉਂ ਹੈ?

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

ਆਉ ਅਸੀਂ ਕੁਝ ਸਧਾਰਨ ਨਾਲ ਸ਼ੁਰੂ ਕਰੀਏ:

ਡੌਗ = ਮਾਈਸੀ
ਈਕੋ $ ਕੁੱਤਾ

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

ਹੇਠ ਲਿਖੇ ਟਾਈਪ ਕਰਕੇ ਨਵਾਂ ਸ਼ੈੱਲ ਖੋਲੋ:

sh

ਜੇ ਤੁਸੀਂ ਇਹ ਕਮਾਂਡ ਚਲਾਉਂਦੇ ਹੋ ਤਾਂ ਤੁਸੀਂ ਵੇਖੋਗੇ ਕਿ ਕੁਝ ਵੀ ਅਸਲ ਵਿੱਚ ਵਾਪਸ ਨਹੀਂ ਕੀਤਾ ਗਿਆ ਹੈ:

ਈਕੋ $ ਕੁੱਤਾ

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

ਇਹ ਇੱਕ ਸ਼ੈੱਲ ਦੇ ਅੰਦਰਲੇ ਗਲੋਬਲ ਵੇਅਬਲ ਅਸਰਾਂ ਦੇ ਵਿਹਾਰ ਬਾਰੇ ਵੀ ਸੋਚਣਯੋਗ ਹੈ.

ਇੱਕ ਨਵੇਂ ਟਰਮੀਨਲ ਵਿੰਡੋ ਵਿੱਚ ਬੰਦ ਕਰੋ ਅਤੇ ਹੇਠ ਦਿੱਤੀ ਟਾਈਪ ਕਰੋ:

ਨਿਰਯਾਤ ਡ੍ਰੋਸ = ਮਾਇਆਈ
ਈਕੋ $ ਕੁੱਤਾ

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

ਇਸਦਾ ਕਾਰਨ ਇਹ ਹੈ ਕਿ ਨਿਰਯਾਤ ਕਮਾਡ ਨੇ $ ਕੁੱਤੇ ਪਰਿਵਰਤਨਸ਼ੀਲ ਗਲੋਬਲ ਬਣਾ ਦਿੱਤਾ ਹੈ. Subshell ਵਿਚ $ ਕੁੱਤਾ ਵੇਰੀਏਬਲ ਨੂੰ ਬਦਲਣਾ ਭਾਵੇਂ ਤੁਸੀਂ ਐਕਸਪੋਰਟ ਕਮਾਂਡ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ ਇਸਦੇ ਪੇਰੈਂਟਲ ਸ਼ੈੱਲ ਤੇ ਕੋਈ ਪ੍ਰਭਾਵ ਨਹੀਂ ਪੈਂਦਾ ਹੈ.

ਆਸ ਹੈ ਕਿ ਇਸ ਤੋਂ ਤੁਸੀਂ ਇਹ ਦੇਖ ਸਕਦੇ ਹੋ ਕਿ ਲਿਖੇ ਲਿਪੀਆਂ ਲਿਖਣ ਵੇਲੇ ਤੁਹਾਡੇ ਕੋਲ ਜੋ ਸ਼ੈੱਲ ਪੱਧਰ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ ਉਹ ਕੁਝ ਮਹੱਤਤਾ ਰੱਖਦਾ ਹੈ.

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