Sobes.tech
Senior

CLI-də əmrlərin ardıcıl icrası üçün nöqtə vergül (;) və iki ampersand (&&) arasındakı fərq nədir?

sobes.tech Süni İntellekt

AI-dan cavab

CLI-də, nöqtə vergül (;) ilə ayrılmış əmrlər ardıcıl olaraq icra olunur, əvvəlki əmrin nəticəsindən asılı olmayaraq. Yəni, bütün əmrlər icra olunacaq, hətta biri səhvlə başa çatsa belə.

İki ampersand (&&) ilə ayrılmış əmrlər ardıcıl icra olunur, lakin növbəti əmrin başlaması yalnız əvvəlki uğurla tamamlandıqda (çıxış kodu 0) baş verir. Əgər hansısa əmrin nəticəsi səhv olarsa, icra zənciri dayandırılır.

Misal:

mkdir test_dir; cd test_dir; echo "Hello"

Üç əmrin hamısı icra olunacaq, hətta mkdir və ya cd uğursuz olsa belə.

mkdir test_dir && cd test_dir && echo "Hello"

İkinci və üçüncü əmrlər yalnız əvvəlki əmrlər uğurlu olarsa icra ediləcək.