Ļaujiet mums izprast terminu mainīgo, iespējamos šīs kļūdas cēloņus un to, kā to novērst vairākās vidēs, veicot soli pa solim veiktu procedūru.
Termina mainīgā nozīmes izpratne
Var izcelt “Term Variable” nozīmi, jo tam ir galvenā loma Linux vidē. Turklāt tas nosaka arī termināļa GUI un uzvedību.
Pirms pāriet uz to, kā to novērst, ir vēlams saprast, kāpēc kļūda varētu rasties.
Iespējamie kļūdas cēloņi
Tālāk ir norādīti iespējamie kļūdas iemesli.
1. Termiņš nav noteikts
Kā saprotams no kļūdas paziņojuma, var būt iespēja, ka lietotājs nav iestatījis termina mainīgo, termina mainīgā iestatīšana norāda uz “termināli”, kuru lietotājs vēlas izmantot, lai palaistu koda skriptu. Nenorādījot termina mainīgo, tiks parādīts “termiņa mainīgais nav iestatīts programmā Crontab” kļūda.
Pieņemsim, ka mēģināt palaist skriptu no termināļa, kuram jānorāda, kāda veida terminālis vēlaties izmantot. Šādā situācijā skripta izpilde neizdosies, jo nevarēs identificēt paredzamo termināli, kā rezultātā tiks parādīta norādītā kļūda.
2. Termināļa komandas neizpildīšana no termināļa
Jāņem vērā, ka termināļa komandas var izpildīt tikai no termināļa. Tomēr, ja kāds palaiž komandu no IDE, kas nav terminālis vai termināļa emulators, tiek parādīta kļūda ' termina mainīgais nav iestatīts C' parādīsies.
Ja strādājat ar Eclipse IDE C++ valodā, programma izsauc system() funkciju, norādot Clear komandu, lai iztukšotu ekrānu. Pēc izpildes ' Termina mainīgais nav iestatīts C++” parādīsies kļūda .
Šo iemeslu var saistīt arī ar tālāk norādīto kļūdu:
- Mainīgais TERM nav iestatīts operētājsistēmā Mac
- TERM mainīgais nav iestatīts programmā XCode
- Mainīgais TERM nav iestatīts programmā IntelliJ
- Mainīgais TERM nav iestatīts programmā Python
Pēc izpratnes par termina mainīgo un iespējamiem kļūdas cēloņiem lietotājs var veikt soli pa solim aprakstīto procedūru, lai atrisinātu problēmu vēlamajā vidē.
Kā labot “TERM mainīgais nav iestatīts”?
Lai novērstu kļūdu, var veikt vairākas darbības. Lietotājs var atbrīvoties no kļūdas, iestatot vides mainīgo TERM, ja tas iepriekš nav iestatīts, un izpildot termināļa komandas galvenokārt no termināļa. Optimālākas stratēģijas var būt arī pielāgotas dzēšanas funkcijas pievienošana ekrāna notīrīšanai vai termināļa emulatora izmantošana.
Apsveriet tālāk norādītos risinājumus, lai labotu kļūdu vēlamajā vidē.
Kā labot “TERM mainīgais nav iestatīts” operētājsistēmā Linux?
Lai Linux vidē labotu “TERM mainīgais nav iestatīts”, veiciet tālāk norādītās darbības.
1. darbība: izveidojiet savienojumu/piesakieties serverim kā saknes lietotājs
Piesakieties savā Linux serverī kā root lietotājs:
sudo viņaIevadiet reģistrētā lietotāja paroli:
2. darbība. Nosakiet savu TERM vērtību
Terminālī izpildiet šādu komandu:
atbalss $TERMŠīs rindas izvade tiks parādīta šādi:
Ja ekrānā parādās kāda cita izvade, lietotājs var izmantot šo vērtību, lai salīdzinātu izvadi ar tālāk norādīto komandu:
printenv TERM3. darbība. Eksportējiet mainīgo
Tagad eksportējiet mainīgo, izmantojot šādu komandu:
eksportēt JĒDZIENS =xterm-256color4. darbība. Pievienojiet to failam “~/.bashrc”.
Iepriekš minētā darbība darbosies tikai pašreizējā termināļa sesijā, pēc servera pārstartēšanas tas tiks aizmirsts, tāpēc ir nepieciešams to ievietot ~/.bashrc ar šādu komandu:
atbalss 'eksportēt TERM=xterm-256color' >> ~ / .bashrcIzmantojot simbolu “>”, tiek aizstāts viss failā. Tāpēc, lai pievienotu rindu, noteikti izmantojiet simbolu “>>”.
5. darbība: atkārtoti ielādējiet “~./bashrc”
Visbeidzot, atkārtoti ielādējiet failu .bashsrc, lai nodrošinātu izmaiņas. Tas ir tas pats, kas atteikšanās un pieteikšanās:
avots ~ / .bashrc6. darbība: atjauniniet TERM mainīgo mapē “/etc/environment”
Pastāvīgam kļūdu risinājumam ir ieteicams labot kļūdu sistēmu visiem lietotājiem, atjauninot mainīgo failā “/etc/environment”:
sudo atbalss 'TERM=xterm-256color' >> / utt / vidiTas ir viss, lai Linux vidē labotu mainīgo TERM.
Kā labot “TERM mainīgais nav iestatīts” sistēmā Windows?
Ja kļūda rodas Windows vidē, veiciet tālāk norādītās darbības.
1. darbība. Pārbaudiet sistēmas informāciju
Ar peles labo pogu noklikšķiniet uz ikonas 'Sākt' ekrāna apakšējā kreisajā stūrī.
Izvēlnē atlasiet opciju “Sistēma”, lai atvērtu sistēmas iestatījumus.
2. darbība. Atveriet sadaļu Papildu iestatījumi
Tiks parādīts tālāk redzamais logs, un šajā logā atlasiet “Papildu sistēmas iestatījumi”.
3. darbība. Atveriet vides mainīgo iestatījumus
Noklikšķiniet uz pogas “Vides mainīgie”, lai atvērtu vides mainīgo iestatījumus, un noklikšķiniet uz pogas “Jā” (ja tiek prasīts).
4. darbība. Pievienojiet jaunu iestatījumu
Tiks atvērts vides mainīgo iestatījums, noklikšķiniet uz pogas Jauns, lai sistēmas mainīgajos pievienotu jaunu ceļa mainīgo.
Pievienojiet jaunu iestatījumu ar nosaukumu TERM un ierakstiet “xterm” vai “xterm-256color” (neizmantojot pēdiņas).
Pēc šīm darbībām kļūda tiks novērsta Windows vidē.
Kā PyCharm labot “TERM mainīgais nav iestatīts”?
Lai labotu PyCharm kļūdu, veiciet tālāk norādītās darbības.
1. darbība: atveriet PyCharm iestatījumus
Pēc PyCharm IDE palaišanas ierīcē noklikšķiniet uz “Fails” un izvēlieties “Iestatījumi”. Operētājsistēmā Mac OS izvēlieties “Preferences”.
2. darbība: dodieties uz rīku sadaļu Termināļi
Atrodiet opciju “Rīki” un pēc noklikšķināšanas uz tās atlasiet “Termināls”.
3. darbība: pārbaudiet čaulas integrāciju
Pārliecinieties, vai ir atzīmēta izvēles rūtiņa blakus “Shell Integration”.
4. darbība. Pievienojiet mainīgo TERM sadaļā Environment Variables
Noklikšķiniet uz pogas '+' un pievienojiet 'TERM' kā nosaukumu un 'xterm-256color' vērtību.
5. darbība. Saglabājiet izmaiņas
Visbeidzot, piemērojiet un saglabājiet izmaiņas, noklikšķinot uz ' Pieteikties un pēc tam ' labi ” pogu.
6. darbība: restartējiet PyCharm
Tagad restartējiet PyCharm, lai nodrošinātu izmaiņas.
Tas ir viss, lai labotu kļūdu, kas radusies ' Mainīgais TERM nav iestatīts ” vēlamajā vidē.
2. risinājums: termināļa komandu ierobežošana
Lai izvairītos no kļūdas “TERM mainīgais nav iestatīts” sastapšanās, ir vēlams ierobežot termināļa komandas līdz faktiskajām termināļa vidēm. Nevajadzīgās komandas izlaišana vidē, kas nav termināļa, var izraisīt izpildi bez kļūdām. Šī prakse novērš problēmas, palaižot komandas, piemēram, sistēmu (“notīrīt”) no netermināla vidēm.
Izveidojiet pielāgotas funkcijas ekrāna klīrensam
Apsveriet iespēju izveidot pielāgotas funkcijas, lai notīrītu ekrānu, nevis paļauties uz sistēma ('notīrīt') funkciju. Šī pieeja nodrošina elastīgāku pieeju darbam Linux vidē.
Linux
#include#include
nederīgs ScreenClearence ( ) {
ja ( ! cur_term ) {
starpt restartēt ;
iestatīšanas termiņš ( NULL , STDOUT_FILENO , & restartēt ) ;
ja ( restartēt <= 0 )
atgriezties ;
}
putp ( tigetstr ( 'skaidrs' ) ) ;
}
Operētājsistēmai Windows
#includenederīgs ekrāna tīrīšana ( )
{
ROKTURIS rokturistandarta izvade;
CONSOLE_SCREEN_BUFFER_INFO informācija;
DWORD numberOf;
DWORD skaitsOfCells;
COORD koordinātes = { 0 , 0 } ;
rokturis standarta izvade = GetStdHandle ( STD_OUTPUT_HANDLE ) ;
ja ( handstandardoutput == INVALID_HANDLE_VALUE )
atgriezties ;
ja ( ! GetConsoleScreenBufferInfo ( tirdzniecības standarta produkcija, & informāciju ) )
atgriezties ;
skaitsOfCells = informācija.dwSize.X * informācija.dwIzmērs.Y;
ja ( ! FillConsoleOutputCharacter ( tirdzniecības standarta produkcija, ( TCHAR ) ',cellQuanity,coords,&quantity))
atgriešanās;
if (!FillConsoleOutputAttribute(handlestandardoutput,information.wAttributes,
Šūnu skaits, koordinātes un daudzums))
atgriešanās;
SetConsoleCursorPosition (apstrādājiet standarta izvadi, koordinātes);
}
Vienkārši izmantojiet iepriekš norādīto ekrāna attīrīšanas koda fragmentu, lai izvairītos no šīs kļūdas pašreizējā termināļa sesijā.
Secinājums
Lai labotu kļūdu TERM mainīgais nav definēts, jums jāiestata vai jāpārbauda mainīgais TERM, jāierobežo termināļa komandas atbilstošā vidē un jāievieš pielāgotas ekrāna tīrīšanas funkcijas. Šīs praktiskās metodes nodrošina optimālu termināļa pieredzi neatkarīgi no tā, vai izmantojat Linux vai Windows. Izmantojiet šīs stratēģijas, lai uzlabotu skriptēšanu.