செயற்றளம்

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Shell and the translation is 23% complete.
Outdated translations are marked like this.
Other languages:
வளங்கள்

செயற்றளம் என்பது பயனர்களுக்கு உரை அடிப்படையிலான இடைமுகத்தை அளிக்கும் ஒரு கட்டளைவரி வரிபெயர்ப்பியாகும். இதை மெய்நிகர் முனையங்களில் (அல்லது முனைய போலாக்கிகளில், தொடர் இணைப்பு முதலியனவை மூலம்) கட்டளைவரி இடைமுகங்களாகவும் தொலைநிலை செயற்றளங்களாகவும் (எ.கா SSH) அல்லது முன் எழுதப்பட்டுள்ள கட்டளைகளை கொண்டுள்ள குறுநிரல்களை இயக்கும் குறுநிரல் வரிபெயர்ப்பியாகவும் பயன்படுத்தலாம்.

Most shells can interpret shell scripts: text files that contain prewritten commands targeting a specific shell or set of compatible shells.

Shells can often be accessed remotely, over SSH for example, or over a serial connection, etc.

பொதுவாக ஒரு முனையத்தில் பயனர் புகுபதிகை செய்தவுடன் முதலில் தொடங்கும் நிரல் செயற்றளமாகும். முறைமையில் உள்ள ஒவ்வொரு பயனருக்கான புகுபதிகை செயற்றளத்தை பற்றிய தகவல்களை /etc/passwd கோப்பு கொண்டுள்ளது. உள்நுழைந்தவுடன் பயனர் முனையத்தில் மற்ற செயற்றளத்தை துவக்கலாம், தங்கள் புகுபதிகை செயற்றளத்தை மாற்றலாம் அல்லது குறிப்பிட்ட முனைய போலாக்கிகளுக்கு எந்த செயற்றளத்தை பயன்படுத்த வேண்டும் என்பதை வரையறுக்கலாம்.

A user can switch their current session to any other available shell simply by typing the command to run the alternative shell. It is usually possible to set the choice of login shell, in case of specific requirements or user preference (see "User's login shell" section below). Certain terminal emulators allow defining a specific shell for use in that emulator.

சென்டூவில் /bin/sh கோப்பு முன்னிருப்பு முறைமை செயற்றளத்திற்கான குறியீட்டுத்தொடுப்பாகும். இது மற்ற POSIX செயற்றளங்களுக்கு தொடுப்பாகவும் இருக்கலாம். கையேட்டை பின்பற்றிய பின் bash முன்னிருப்பு செயற்றளமாகும்.

For information about scripting in the context of POSIX and different shell implementations, refer to the Shell/Scripting page.

இதையும் காண்க
சில பொது பயன்பாடு குறிப்புகளுக்கு முனைய போலாக்கி கட்டுரையை காணவும்.
குறிப்பு
குறுநிரல்களை எழுதும்போது முதல் வரியில் எண்வியப்புக்குறியை கொண்டு சரியான வரிபெயர்ப்பியை குறிப்பிடுவதில் கவனம் செலுத்தவும். எடுத்துக்காட்டாக #!/bin/sh என தொடங்கும் குறுநிரல் bash சார்ந்த குறிமுறையை பயன்படுத்தாமல் POSIX அமைப்புகளை மட்டுமே பயன்படுத்த வேண்டும்.

கட்டளைவரி இடைமுகம்

ஊனிக்சை போன்ற கட்டளைவரி இடைமுகமானது (CLI) அண்மைக்காலத்துக் கணினிகளுடன் ஊடாடுவதற்கான முதிர்ந்த, ஆற்றல் மிகுந்த கட்டமைப்பாகும். வரைகலையை அடிப்படையாகக் கொண்டுள்ள வடிவமைப்புகளைக் காட்டிலும் குறிப்பிடத்தக்க நன்மைகளை கட்டளைவரி இடைமுகம் கொண்டுள்ளதால் இது பெரும்பாலான வல்லுநர்களின் தேர்வாக இருக்கிறது.

முனைய போலாக்கி அல்லது மெய்நிகர் முனையங்கள் மூலம் பொதுவாக அணுகக்கூடிய தரமான உரை அடிப்படையிலான இடைமுகத்தை CLI அளிக்கிறது.

CLI ஆனது டெலிபிரின்டர்களில் தொடங்கி, CRT திரைத் தொழில்நுட்பத்திற்கு முந்தைய வரலாற்றைக் கொண்டுள்ளது. இந்த நீண்ட வரலாறு ஒரு மிகப்புதுமையான அமைப்பை உருவாக்கியுள்ளதுடன் UNIX OS உருவாக்கத்திற்கும் காரணமாக அமைந்தது. இன்று, உரை எப்போதுமே விசைப்பலகையுடன் உள்ளிடப்பட்டு வெளியீடு திரையில் வழங்கப்படுகிறது.

வரைகலைப் பணிச்சூழலை விட கற்றல் வளைவு செங்குத்தானதாக இருந்தாலும், வழக்கமான பயன்பாட்டிலிருந்து குறைந்த அளவிலான திறன் பெற்றவுடன், CLI ஆனது பட்டிகளைப் படிக்காமலும் அவற்றில் ஒவ்வொன்றிற்கும் செல்லாமலும் ஒரு கணினியில் கிடைக்கும் அனைத்து கட்டளைகளையும் பயனரின் விரல் நுனியில் வழங்குகிறது.

CLI கருவிகள் எளிமையான, எளிதில் நினைவில் வைத்து விரும்பிய செயல்பாட்டை அடைய விருப்பத்தேர்வுகளை இணைத்துச் செயல்படுத்தக்கூடிய இடைமுகங்களை வழங்குவதை நோக்கமாகக் கொண்டுள்ளது. CLI பொதுவாகக் கருவிகளுக்கு இடையே இறுக்கமான தொடர்புகளை அனுமதிப்பதற்கு ஒரு நிலையான இடைமுகத்தைப் பின்பற்றுகிறது. மேலும் இது --help விருப்பத்தேர்வுகள் மற்றும் கைமுறை பக்கங்கள் வழியாக உதவியையும் கையேடுகளையும் வழங்குகிறது.

அண்மைக்காலத்து செயற்றளங்கள் குழாய்கள் போன்ற திறன்வாய்ந்த கட்டுமானங்களை அனுமதிக்கின்றன. இதன்மூலம் பல்வேறு கருவிகள் தடையின்றி தொடர்பு கொள்ள இயலும். பல பயன்கூறு நிரல்கள் வெளியீட்டை வடிகட்டுதல் மற்றும் வரிசைப்படுத்துதலை அளிக்கின்றன.

சில கட்டளைவரி இடைமுகங்கள் ஊடாடும் வகையில் இருக்கும். அவற்றை இயக்கியவுடன் உள்ளீட்டைக் கேட்கலாம். இல்லையென்றால் கட்டளை சார்ந்த துணை செயற்றளத்தையும் கூட திறக்கலாம். பெரும்பாலான பயன்கூறு நிரல்கள் உள்ளீட்டை கட்டளைவரி, தரமான உள்ளீடு, கோப்புகள், சாதனங்கள், வலையமைப்பு முதலியவற்றுள் ஏதேனும் ஒன்றின் மூலம் பெற்று கட்டளை வரியிலோ சுட்டிக்காட்டப்பட்ட கோப்பிலோ குழாய் மூலம் அனுப்பப்பட்டு மற்ற கட்டளையிலோ வெளியிடும்.

கிடைக்கும் மென்பொருள்

சென்டூ பலவகைப்பட்ட செயற்றளங்களை அளிக்கிறது. அவற்றுள் சில:

POSIX Shells

பெயர் தொகுப்பு வலைமனை விளக்கம்
ash sys-apps/busybox https://www.busybox.net/ BusyBox's uses the minimalist Almquist shell.
bash app-shells/bash https://tiswww.case.edu/php/chet/bash/bashtop.html மீண்டும் போர்ன் செயற்றளம் (Bourne Again Shell) சென்டூவின் முன்னிருப்பு செயற்றளமாகும். சென்டூவின் முன்னிருப்பு தொகுப்பு மேலாளரான Portage ஆல் பயன்படுத்தப்படுகிறது.
dash app-shells/dash http://gondor.apana.org.au/~herbert/dash/ டெபியன் அல்குயிஸ்ட் செயற்றளம் (Debian Almquist Shell) ஒரு சிறிய ஆற்றல் மிகுந்த posix விதிகளுக்கு உட்பட்ட செயற்றளமாகும். துவக்க குறுநிரல்களுக்கு பொருத்தமாக இருக்கும் இது /bin/sh க்கான மாற்றாக கருதப்படுகிறது.
dsh app-shells/dsh https://www.netfort.gr.jp/ A shell distributed shell that enables parallel execution of commands across large numbers of servers.
ksh app-shells/ksh http://www.kornshell.com/ மூல கோர்ன் செயற்றளம், 1993 இல் திருத்தியமைக்கப்பட்டது (ksh93).
mksh app-shells/mksh https://www.mirbsd.org/mksh.htm தீவிரமாக உருவாக்கப்பட்ட கோர்ன் செயற்றளத்தின் கட்டற்ற செயலாக்கமான இது குறுநிரலாக்கத்திற்கு மிகவும் பொருத்தமானதாகும்.
pwsh app-shells/pwsh-bin https://learn.microsoft.com/powershell/ பெரும்பாலான செயற்றளங்கள் "எல்லாவற்றையும் கோப்பு" என கருதும்; ஆனால் பவர்ஷல்லோ "எல்லாவற்றையும் பொருள்" என கருதும். இதற்கு காரணம் இது பொருளை அடிப்படையாக கொண்ட ஒரு செயற்றளமாகும். இப்போது MIT உரிமம் பெற்று லினக்சில் கிடைக்கிறது.
tcsh app-shells/tcsh http://www.tcsh.org/ பெர்க்லியின் சி செயற்றளத்தின் (csh) மேம்படுத்தப்பட்ட பதிப்பு.
yash app-shells/yash https://yash.osdn.jp/ மீண்டும் ஒரு செயற்றளம் (Yet Another SHell) சி99 (ISO/IEC 9899:1999) மொழியில் எழுதப்பட்ட POSIX விதிகளுக்கு உட்பட்ட கட்டளைவரி செயற்றளமாகும்.
zsh app-shells/zsh http://www.zsh.org/ பல பயனர்கள் ஊடாடுவதற்கு தேர்ந்தெடுக்கும் மேம்பட்ட செயற்றளமாகும்.

Non-POSIX Shells

Application Compatibility Shells

Name Package Homepage Description
fish app-shells/fish https://fishshell.com/ The Friendly Interactive SHell.
cmd.exe virtual/wine https://www.winehq.org/ A shell that reproduces the Microsoft Windows execution environment, part of Wine.
command.com app-emulation/dosemu http://www.dosemu.org/ A shell that reproduces the MS-DOS execution environment, part of DOSEMU.
AmigaShell app-emulation/fs-uae https://fs-uae.net/ FS-UAE, an Amiga emulator, can be configured to allow shell access from the terminal. The requisite AmigaOS components have open source implementations via AROS.

Bootloader Shells

Name Package Homepage Description
GRUB sys-boot/grub https://www.gnu.org/software/grub/ A minimalist pre-boot rescue shell.

Firmware Shells

Name Package Homepage Description
Open Firmware https://www.openfirmware.info/ A Forth-based shell.
UEFI https://uefi.org/ A minimalist firmware shell for EFI firmware.

கூடுதல் செயற்றள வகைகளுக்கு பின்வரும் கட்டளையின் வெளியீட்டை காணவும் (இதற்கு eix தேவைப்படும்):

user $eix -cC app-shells

உள்ளமைவு

இதையும் காண்க
சூழலை எவ்வாறு அமைப்பது என்பதை பற்றி அறிய புகுபதிகை கட்டுரையை காணவும்.

முன்னிருப்பு முறைமை செயற்றளத்தை மாற்றுதல்

முக்கியமானது
Changing /bin/sh க்கு பதிலாக bash ஐ தவிர்த்து வேறு எதையாவது மாற்றினால் முறையாக எழுதப்படாத குறுநிரல்களில் சில அரிய சிக்கல்கள் ஏற்படலாம். எடுத்துக்காட்டாக குறிநிரலை #!/bin/sh ஐ கொண்டு துவங்கி பின் bash சார்ந்த குறிமுறைகளை பயன்படுத்துதல். வழு #526268
குறிப்பு
It's normal that only a handful of POSIX compatible shells will be available to be used with this method. See the next section on how to set user login shells, which allows setting more shells as default. Also note the above warning, and consider preferentially using the method from the next section to set any shell as default.

The "system shell" is used when executed from /bin/sh, such as by scripts that start with #! /bin/sh. Changing the "system shell" will not change what shell users login to, and will not change what shell is set for new users either.

முறைமை செயலாட்சியாளர்கள் முன்னிருப்பு முறைமை செயற்றளத்தை app-alternatives/sh தொகுப்பில் உள்ள USE கொடிகளைப் பயன்படுத்தி மாற்றியமைப்பர். இந்த பயன்கூறு நிரலானது /bin/sh க்கு பதிலாக POSIX விதிகளுக்கு உட்பட்ட வேறொரு செயற்றளத்தின் குறியீட்டுத்தொடுப்பை மாற்றுவதன் மூலம் முறைமையின் செயற்றளத்தை மாற்றியமைக்கிறது.

USE flags for app-alternatives/sh /bin/sh (POSIX shell) symlink

+bash Symlink to app-shells/bash
busybox Symlink to sys-apps/busybox
dash Symlink to app-shells/dash
ksh Symlink to app-shells/ksh
lksh Symlink to lksh from app-shells/mksh
mksh Symlink to mksh from app-shells/mksh

/bin/sh க்கான குறிப்பிட்ட தேர்வை அமைப்பதற்கு /etc/portage/package.use ஐ பயன்படுத்தவும்:

கோப்பு /etc/portage/package.use
# /bin/sh க்கும் app-shells/dash மூலம் கிடைக்கும் dash க்கும் 
# குறியீட்டுத்தொடுப்பை உருவாக்கவும்
app-alternatives/sh -bash dash

பயனரின் செயற்றளத்தை மாற்றுதல்

முக்கியமானது
Some shells, such as fish போன்ற சில செயற்றளங்களை நேரடியாக புகுபதிகை செயற்றளமாக அமைக்கும்போது சில சிக்கல்கள் நேரலாம். இதை பற்றி மேலும் அறிய fish கட்டுரையின் Caveats பிரிவை காணவும்.

Login-shell settings are stored in /etc/passwd.

Creating a user with a specific login shell

Login shells can be set when creating a new user with the useradd command (from sys-apps/shadow).

To create a user and specify their login shell:

user $useradd -s /bin/ksh -m larry

The -s option indicates the path to the shell, the -m option instructs the useradd command to create the new user's home directory if it does not already exist.

Setting an existing user's login shell

ஒரு பயனரின் முன்னிருப்பு செயற்றளத்தை (அதாவது புகுபதிகை செயற்றளத்தை) chsh கட்டளையைப் பயன்படுத்தி மாற்றியமைக்கலாம். இப்போதுள்ள பயனரின் புகுபதிகை செயற்றளத்தை மாற்ற chsh எனத் தட்டச்சு செய்து பின் புதிய செயற்றளத்தின் சரியான பாதையை உள்ளிடவும். கீழுள்ள எடுத்துக்காட்டில் Larry the cow (Larry) என்னும் பயனரின் புகுபதிகை செயற்றளம் /bin/bash இல் இருந்து /bin/zsh ஆக மாற்றப்படுகிறது:

user $chsh
Changing the login shell for larry
Enter the new value, or press ENTER for the default
	Login Shell [/bin/bash]: /bin/zsh

chsh ஐ பயன்படுத்தி வேர் பயனரால் எந்த பயனரின் புகுபதிகை செயற்றளத்தையும் மாற்ற இயலும்.

The chsh command only allows shells listed in /etc/shells.

பழுது இடமறிதல்

தேய்ந்த திரை

செயற்றளத்தின் வெளியீடு சில சூழல்களில் தெளிவில்லாத நிலையில் திரையில் தோன்றும். இதை சரிசெய்வதற்கு முனைய போலாக்கி கட்டுரையில் உள்ள வழிமுறைகளை பின்பற்றவும்.

இதையும் காண்க