CLI (Command Line Interface)

botond küldte be 2018. 07. 02., h - 19:41 időpontban

A Command Line Interface (CLI) vagy Command Language Interpreter (CLI) néven is ismert eszköz egy olyan felület, aminek a segítségével a felhasználók (kliensek) – begépelt szöveg formájában – parancsokat tudnak kiadni a számítógépnek. A beadott parancsokat a parancsnyelvi feldolgozó kezeli, ami operációs rendszerenként eltérő lehet. Ilyen parancssori felület szinte mindegyik operációs rendszeren van, Linuxon például shell-nek hívják. A feldolgozott, vagy végrehajtott parancsok kimenete a képernyőre kerül, de átirányítható fájlokba is, vagy akár a különböző perifériákra.

A parancssori felület hatékony módja a számítógépek kezelésének, mivel sok olyan feladatot is el lehet végezni a segítségével, amit grafikus felületen nem lehet megoldani. Továbbá a legtöbb parancssori felület támogatja a különböző script programok futtatását, ezeknek köszönhetően a munka automatizálható, a gyakran ismétlődő feladatok könnyen elvégezhetők. Ezért a haladó felhasználók, rendszergazdák előnyben részesítik a különböző menü vezérelt grafikus felületekkel szemben.

Az 1960-as évek közepén a CLI volt a számítógépekkel való interakció elsődleges eszköze, és az 1970-es és 1980-as években is tovább használták az OpenVMS, UNIX/Linux rendszereken, valamint a személyi számítógépeken, amiken MS-DOS, CP/M vagy Apple DOS rendszer futott.

A mai modern Unix-szerű operációs rendszerek mindegyike rendelkezik valamilyen rendszerhéj (shell) programmal, amiket használhatunk a parancssori felületen, és ezek tetszőlegesen cserélhetőek. A legelterjedtebb ezek közül a Bash (Bourne Again Shell), de ismertebbek még a dash, zsh, ksh shellek is.

A parancssori felületen működő rendszerhéj programok általában rendelkeznek saját utasításkészlettel, vezérlési szerkezetekkel (pl. ciklusok, elágazások, stb) is, és képesek külső programok, parancsok futtatására is, amik az operációs rendszerbe lettek telepítve. Ezeknek a kombinációjával különböző script programok írhatók, melyekkel hatékonyan lehet vezérelni az operációs rendszert, vagy a többi programot. Továbbá a script-ek futtatásán kívül a shell-ek képesek más szerver oldali programozási nyelveket is futtatni, az adott programnyelv értelmezője segítségével. Ilyen nyelvek például a PHP, Python, Perl, Ruby, stb.

Az Unix-szerű operációs rendszereken a parancssori felületet távolról is el lehet érni (többnyire felhasználónévvel és jelszóval), ezáltal az ilyen operációs rendszereket futtató számítógépeket bárhonnan lehet felügyelni, menedzselni. Régebben ezt a Telnet nevű hálózati protokoll/szoftver segítségével lehetett elvégezni, azonban ez a protokoll nem biztosított titkosítást, így a vonal lehallgatható volt a két számítógép között. Emiatt már a mai biztonsági elvárásoknak megfelelő SSH protokollt használják erre a célra, ami erős titkosítást használ.