Gebruikershulpmiddelen

Site-hulpmiddelen


linux_terminal:configureren

Terminal configureren

Terminal - Screen en Tmux

Gnome Terminal - Instellingen

In de Gnome Terminal (die in Linux Manjaro en Mint Cinnamon) moet/ kun je deze instellingen aanpassen :

  • Onder Bewerken - Voorkeuren - Profielen (kies het gewenste profiel) - Opdracht - Opdracht uitvoeren als aanmeld-shell. Dit zorgt er voor dat er relevantie configuratie opgestart wordt bij het openen van de terminal met dat profiel. Als je geen profielen hebt aan gemaakt, dan doe je deze instelling alleen als standaard.

Gnome Terminal - Instellingen Opslaan en Overdragen

Hoe kan ik mijn Gnome Terminal instellingen opslaan, en ze in een ander account, al dan niet op een andere computer, weer inladen. Zodat ik al de instellingen niet steeds weer stap voor stap moet doen.

Waarom wil je dit ?

  • Als je meerdere profielen hebt gemaakt. Waaronder andere kleuren, SSH inloggegevens naar bijvoorbeeld een linux server, of een raspberry pi, enzovoort.
  • Bewaar mijn instellingen (van verschillende profielen en andere instellingen) op een PC, en draag ze over naar een andere PC. Of neem ze mee naar je volgende installatie, hoe en waar dan ook …

Zoek op : gnome terminal configuration files

Dit ziet er veelbelovend uit. Ik zal de dconf editor moeten leren

Een niet werkend antwoord vond ik op :

… able to easily copy my preferences (several profiles and other minor stuff) from one PC to another PC (or even between Virtual Machines)

De ~ in onderstaande commando's is relevant. Het staat voor $HOME. Voor mij is ~ = $HOME = /home/hans

Save:
dconf dump /org/gnome/terminal/ > ~/gterminal.preferences

Bewaar de gterminal.preferences op een bijvoorbeeld USB stick. 
In ieder geval een opslag plek die vanuit de andere pc te bereiken is.

Install:

Kopieer de gterminal.preferences in je home map : ~ = $HOME = /home/jijzelf
cat ~/gterminal.preferences | dconf load /org/gnome/terminal/legacy/profiles:/

De Linux Terminal handleidingen

Linux Terminal handleidingen

En er is nog veeteelt meer … zoeken en leren !

Admin root rechten in de terminal

Welke shell draait er in de terminal ?

Er zijn diverse terminal 'shell' 's beschikbaar.

Standaard in Linux (in mijn horizon) draait de bash (Born Again Shell)

Bash shell draaien in de terminal

Linux Mint standaard draait de bash in de terminal

In Linux Mint synaptic vindt je die door te zoeken op bash. Daarbij staat :

Bash is een sh-compatible command language interpreter die opdrachten uitvoert die gelezen worden van de standaardinvoer of vanuit een bestand (ze bedoelen hier een 'script').

Bash bevat ook bruikbare functies van de Korn- en C-shells (ksh en csh).

Korn shell draaien in de terminal

Mijn favoriet is de kornshell. Alleen installeren en gebruiken als je weet waarom. Als niet ? De standaard shell bash gebruiken.

In Linux Mint synaptic vindt je de kornshell door te zoeken op ksh. Daarbij staat :

Ksh is a UNIX command interpreter (shell) that is intended for both interactive and shell script use. Its command language is a superset of the sh(1) shell language.

The 1993 version adds a number of new, mostly scripting related, features over the 1988 version that is typically distributed with commercial UNIX variants. For example, it has lexical scoping, compound variables, associative arrays, named references and floating point math.

The shcomp tool can be used to compile ksh scripts into a binary format.

In de /etc/passwd kun je per user aangeven welke shell hij krijgt in zijn terminal. Die shell moet dan wel geinstalleerd zijn.

ksh installeren in de terminal doe je met

# apt install ksh

je komt daar achter door een ksh script te starten met ksh mijnscript.ksh waarbij de eerste regel van zo een script moet zijn : #!/bin/ksh

#!/bin/ksh
Echo "Dit is mijnscript.ksh"
# Einde script

hans:…bin»ksh mijnscript.ksh

Als ksh nog niet geinstalleerd is, dan krijg je dit, als je m toch aanroept

Opdracht 'ksh' niet gevonden, maar deze kan worden geïnstalleerd met:

apt install ksh # version 20….

# Deze oudere alternatieven zijn er blijkbaar ook nog :

  • apt install ksh93 # version 93u+20120801-7
  • apt install mksh # version 58-1

Zoekpad $PATH instellen

Maak een directory /home/jijzelf/bin Zet hierin al je scripts die je zou willen draaien. Dan is het zinvol om deze directory aan het pad toe te voegen. Het huidige path vindt je met

echo $PATH

/home/jijzelf/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Ik heb mijn PATH setting staan in home/hans/.profile

# set PATH so it includes user's private bin if it exists
PATH="$HOME/bin:$PATH"

Dus het blijkt al geregeld : $HOME/bin zit al in het path. Het aanmaken van mijn bin directory volstaat. Als jouw bin dir er dus niet in zit, dan deze regel toevoegen aan /home/jijzelf/.profile

Als het dan nog niet werkt, dan zijn er een aantal plaatsen/files waar je dit kunt instellen. De volgende pagina geeft een behoorlijk complete uitleg:

De Linux Terminal handigheden

Handigheden :

  • Bij de instellingen :
    • De kleuren aanpassen
  • De tekst groter en kleiner maken
  • Tabbladen
    • Meerdere terminals in een venster
  • Tab toets tekst expansie
    • Dit vult half ingetypte bestandsnamen of directory namen zelf aan. Met de TAB toets. Probeer maar !
    • (bij het invoeren van directory en bestandsnamen in de huidige directory)
    • nooit meer zelf in/over typen

Dit geldt voor de terminal in Linux Mint :

  • Linux Mint Cinnamon heeft de gnome-terminal
  • Linux Mint Xfce heeft de xfce-terminal
  • RaspBerry Pi OS heeft de lxterminal :met minder mogelijkheden.

Terminal Prompt veranderen

Ik pas de variabele PS1 zo aan, dat ie vooraan laat zien wie er ingelogd is, en achteraan de laatste deel van de directory waar je je bevindt.

hans:…linux»

Op zoek naar de instelling om de titel van de terminal raam ook in te stellen, bleek dat ook in de PS1 variabele ingesteld te kunnen worden. Zie verderop over hoe ik dat voor elkaar gekregen heb.

De terminal aanpassingen kun je instellen door configuratie toe te voegen en of aan te passen in (onder andere) een van deze configuratie bestanden in :

  • /home/jijzelf :
    • /home/jijzelf/.bashrc
    • /home/jijzelf/.bash_aliasses
    • /home/jijzelf/.profile
    • /home/jijzelf/.Xresources
  • /etc
    • /etc/bash.bashrc
    • /etc/profile (hier kun je onderaan ! jouw PS1 toevoegen)
    • /etc/profile/d/*sh (in elk script in deze map kun je jouw PS1 toevoegen, bijvoorbeeld in :
      • /etc/profile/d/mijn_config.sh

Alles wat je in /home/jijzelf verandert, werkt alleen voor gebruiker “jijzelf”.

Alles wat je in /etc verandert, werkt voor elke gebruiker op deze computer. User root heeft een afwijkende speciale configuratie. Pas daar mee op. Gebruikers met extra rechten hebben ook andere mogelijkheden. Die kom je tegen in de genoemde bestanden. Dat is goed en de bedoeling. Wel oppassen met wat je aanpast. Zet er kommentaar/uitleg bij met regels tekst die beginnen met een #. Gooi nooit wat weg. Zet er een # voor om het uit te zetten.

Even proberen wat werkt. Begin met /home/jijzelf/.bashrc. En dan in /home/jijzelf/.profile . Daarna door in /etc. Als eerste in /etc/profile. Je kunt dan de configuratie in /home/jijzelf uitzetten door een # te zetten voor een van jouw toegevoegde regels. Handig. Ze staan dan uit en zijn er nog. Zoek in de diverse bestanden de PS1 variabele op en probeer te begrijpen wat daar staat. Voorzichtig met aanpassen. Maak een backup bestand. zoals /home/ikzelf/.profile_2023_1105

Dit is wat ik al jaren toevoeg aan een van mijn configuratie bestanden in /home/ikzelf/… Met dank aan een zeer gewaardeerde echte Unix systeem beheerder collega uit de jaren 90.

# Toegevoegd door Hans zelf op 2023 1020
PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1

Verder op staat ook nog hoe je de terminal titel kunt instellen.

Uitleg staat op :

Terminal Titel veranderen

Ook dit zit in de variabele PS1.

Hier mijn Terminal Titel Configuratie

Voeg deze regels (met jouw eigen variatie) toe aan het eind van /home/jijzelf/.bashrc

# Toegevoegd door Hans zelf op 2023 1105
# PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1
PS1="\[\033]0;\u@\h:\w \a\]${LOGNAME}:...\${PWD##*/}>>"; export PS1

Je kunt de PS1 regel ook zo in de terminal plakken. Dan zie je meteen wat ie doet, zonder meteen de configuratie bestanden aan te passen. De regel “# Toegevoegd door ” is dat wat ik daar dan bijzet, zodat ik zie wat ik veranderd heb in dat bestand.

Hier wat handigheden bij elkaar om het werk uit te voeren.

# Deze regels toevoegen aan /home/jijzelf/.bashrc. Oftewel : $HOME/.bashrc

# Toegevoegd door Hans zelf op 2026_0624
# PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1
PS1="\[\033]0;\u@\h:\w \a\]${LOGNAME}:...\${PWD##*/}>>"; export PS1

En hie wat commandoos om het een en ander te bekijken en uit te voeren

clear; cd $HOME
clear; cd $HOME; cat .bashrc

ls -la .bash*
ls -la $HOME/.bash*

cp .bashrc .bashrc_2026_0624

vi  .bashrc
. .bashrc

Uitleg staat op :

PS1="\u@\h:\w$ "

PS1="$(whoami)@$(hostna
me):$(pwd):\$(date) "

PS1="\[\033[0;32m\]\d:\t$ \[\033[0m\]"

PS1="\[\033[0;42m\]\d:\t$ \[\033[0m\]"

PS1="\[\033[1;33;42;4m\]\d:\t$ \[\033[0m\]"


PS1="\[\033]0;Hello World of Linux\a\]$ "

PS1="\[\033]0;Linux in Brabant\a\]$ "

Combineer
PS1="\u@\h:\w$ "
met
PS1="\[\033]0;Linux in Brabant\a\]$ "
tot
PS1="\[\033]0;\u@\h:\w \a\]$ "

Mijn mooie eigen prompt uit de jaren 90 : 
PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1


Combineer 
PS1="\u@\h:\w$ "
met
PS1="\[\033]0;Linux in Brabant\a\]$ "
en
PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1

tot ::::::::::::::

PS1="\u@\h:\w$ ${LOGNAME}:...\${PWD##*/}>>"; export PS1

PS1="\[\033]0;\u@\h:\w \a\]${LOGNAME}:...\${PWD##*/}>>"; export PS1

De eerste regel is wat ik al jaren toevoeg aan een van mijn configuratie bestanden in /home/ikzelf/… Met dank aan een zeer gewaardeerde echte Unix systeem beheerder collega uit de jaren 90. Ik heb daar dus de titel in het terminal raam aan bijgezocht !

De terminal als tekst verwerker

De Terminal is ook te gebruiken om tekst bestanden te schrijven of aan te passen. Dat kan met het terminal commando vi. Een variant daarop is Vim. En Nano kan het ook, die werkt weer anders.

Ik ben bekend met Vi:
De escape toets is hierbij de versnelling pook, waarmee je schakelt naar het commando's maken van letters.

Een goede handleiding moet ik hier nog vermelden. Eerst een zoeken … komt er aan …

VI editor in de terminal aanzetten

VI editor in de terminal aanzetten

# Terminal functionaliteit 
# maak vi de standaard edit funktie op de kommmand line 
# Wel eerst leren werken met vi. Zoek een handleiding op het internet, bijvoorbeeld
# als je dit toch niet wilt, dan een # in de volgende regel vooraan er bij zetten 
set -o vi 

Eigen terminal commando's definieeren - alias

Met het alias commando kun je zo je eigen commando's maken. Dat mogen ook meerdere opdrachten zijn. Je kunt ze scheiden met een puntcomma.

Het ziet er dus zo uit :
alias mijnkommando ='doedit; doedat; endoeditook'

Bijvoorbeeld :
alias mijnkommando ='clear; ls -l; pwd; whoami; date; cal'

Selecteer (met de linker muis knop) en plak (met de middelste muis knop) onderstaande regels (die met 'alias' beginnen) in de terminal. De woorden achter 'alias' wordt dan een door jou zelf gemaakt commando. Hieronder mijn favoriete variaties op het ls commando. Daarmee bekijk je wat er in de huidige directorie zit.

Door deze aliassen in specifieke configuratie bestanden te zetten, zullen ze altijd meteen in de terminal beschikbaar zijn.

Maak een textfile /etc/profile.d/mijnconfig.sh met een volgende inhoud.

Een regel die met een # begint, doet niets. Is kommentaar. Maak er gebruik van om eea te dokumenteren.

De eerste regel moet beginnen met '#!/bin/sh'. Hier niets aan veranderen dus ! De ' ' horen er bij !

In voorkomende gevallen moet je dus een # weghalen om die regel aktief te laten worden. Er staat dan ook wat anders in dan alleen maar kommentaar.

#!/bin/sh 
# Linux Mint Cinnamon 20 
# Terminal configuratie van mijzelf 
echo Dit is /etc/profile.d/mijnconfig.sh 
sleep 1 
# 2020 0227 : gemaakt 
# 2020 0228 : aangepast voor op linuxzob.nl 
# 
# terminal kommando's om handig files en bestanden te bekijken 
# probeer ze uit 
# 
# Directory en files
alias f='ls -lF' 
alias c='clear' 
alias cf='clear; ls -lF' 
alias d='ls -l | grep '^d'' 
alias fd='ls -lF'
alias fnd="ls -lF | grep -v '^dr'"
alias lsd='ls -ltcr' 
alias lsdr='ls -ltc' 
alias lsn='ls -lF | sort +8 -9' 
alias lsnr='ls -lF | sort -r +8 -9' 
alias lsp='ls -lF | sort +0 -1' 
alias lspr='ls -lF | sort -r +0 -1' 
alias lss='ls -lF | sort +4 -5 -n' 
alias lssr='ls -lF | sort -r +4 -5 -n -r' 
# 
# 
# commando's voor het hernoemen van foto bestanden met jpg en cr2 extensie.
# de programma's jhead en exiftool moeten geinstalleerd zijn
# de bestandsnaam wordt samengesteld op basis van de exif data in het fotobestand.
# JPG wordt jpg
# Vraag : werkt dit ook met een gopro ? Ff uitzoeken nog ...
# 
alias fotonaamjpg='jhead -n%Y_%m%d_%H%M%S I*[JjPpGg]'
alias fotonaamcr2="exiftool '-filename<CreateDate' -d '%Y_%m%d_%H%M%S%%-c.%%le' -ext cr2 ."
#
#
# Netwerk aliassen 
alias mijnnet='clear; ifconfig; route -n' 
# 
# Terminal functionaliteit 
# maak vi de standaard edit funktie op de kommmand line 
# Wel eerst leren werken met vi. Zoek een handleiding op het internet, bijvoorbeeld
# als je dit wilt, de # in volgende regel weghalen 
# set -o vi  
# 
# echo "Hallo $LOGNAME" 
echo Dit was /etc/profile.d/mijnconfig.sh 
sleep 1 
clear 
c : clear
d : directory
f : files
n : naam
p : protectie (de lees en schrijf rechten)
s : size
r : reverse = volgorde andersom

Hier wat variatie :

# variaties op het commando 'ls'
alias f="ls -lF --color=never"
alias c="clear"
alias cf="clear; ls -lF --color=never"
alias d="ls -l --color=never | grep '^d'"
alias fd="ls -lF --color=never"
alias lsdr="ls -ltcr --color=never"
alias lsdra="ls -ltcra --color=never"
alias lsd="ls -ltc --color=never"
alias lsda="ls -ltca --color=never"
alias lsn="ls -lF --color=never | sort +8 -9"
alias lsnr="ls -lF --color=never | sort -r +8 -9"
alias lsp="ls -lF --color=never | sort +0 -1"
alias lspr="ls -lF --color=never | sort -r +0 -1"
alias lss="ls -lF --color=never | sort +4 -5 -n"
alias lssr="ls -lF --color=never | sort -r +4 -5 -n -r"

# Kleuren instellen kun je door oa een van deze toevoegingen : 
--color=auto
--color=never

Eigen terminal aliases gebruiken

Open een terminal, en geef het commando : alias

Ze verschijnen allemaal. Bijvoorbeeld :

alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
alias lsd='ls -ltc --color=never'
alias lsda='ls -ltca --color=never'
alias lsdr='ls -ltcr --color=never'
alias lsdra='ls -ltcra --color=never'
alias lsn='ls -lF --color=never | sort +8 -9'
alias lsnr='ls -lF --color=never | sort -r +8 -9'
alias lsp='ls -lF --color=never | sort +0 -1'
alias lspr='ls -lF --color=never | sort -r +0 -1'
alias lss='ls -lF --color=never | sort +4 -5 -n'

Dubbelklik er een, met de linker muis toets

Plak m in de terminal, met de middelste muis toets.

En hij doet het ! … Of het = tekentje blijft er achter aan hangen ??? Hier op deze pagina niet !?! Maar in de terminal ? Bij staat er daar dan (bijvoorbeeld) : lsdra=. En ik wil dat er lsdra staat. Wat nu ?

Ooit lang geleden kon de deze scheidings tekens keuring in de terminal configuratie aan en uit klikken. Maar die optie zit in mijn gnome terminal niet meer …

Dus : zoek op “linux gnome terminal = symbol behaves as separator”, en vindt :

Terminal Kleuren

Gewoon de tekstkleur en de achtergrond kleur. Die kun je aanpassen. Dat zwarte gat een voor de ogen prettiger kleur geven. En als je meerdere terminals open wilt hebben, geef je elke toepassing een eigen kleuren combinatie.

Hier mijn conventie :

Op basis van de Gnome Terminal mogelijkheden. Aanpassen :

  • Eerst zorgen dat je het maken van profielen snapt
  • Bewerken - Voorkeuren - Profiel PROFIEL - Kleuren

PROFIEL wordt dan de 1e of de 2e gebruiker, of root

1e gebruiker
Tekst		: #98EAFA
Achtergrond	: #0D3F49

2e gebruiker 
Tekst		: #FAE013
Achtergrond	: #023039

root gebruiker
Tekst		: #1D1C01
Achtergrond	: #F7F69D

Fotoos GoPro x Linux

Terminal problemen oplossen

Op een Linux Mint Xfce 20.3 pc start gnome-terminal niet meer op

https://nl.savtec.org/articles/howto/four-ways-to-get-instant-access-to-a-terminal-in-linux.html

Open gconf-editor en blader naar apps / gnome-terminal / profiles /

Nog nooit geprobeerd, maar te zinvol om niet te parkeren hier :

# Wat start er hiermee ? gnome-editor !?
Druk op Ctrl + Alt + F1.
Geef in de virtuele terminal uw gebruikersnaam en wachtwoord op om in te loggen.
Voer deze opdrachten uit: 
# rm -r ~/.gconf / apps / gnome-terminal gconftools --recursive-unset / apps / gnome-terminal.

IK kan hier geen kaas van maken. Het lijkt me handiger om gnome-terminal te her installeren …

Linux Terminal - Configuratie

De nodige wijsheid staat op tinternet :

https://wiki.archlinux.org/title/Xterm

En in de terminal zelf, met

man bash

Om het Linux Terminal - Bash Shell Opstart Proces een beetje te begrijpen kunnen we wat leuks doen met de bash configuratie files.

Door er in het begin een slimme print opdracht aan toe te voegen, zien we dat dat bestand uitgevoerd wordt. Hetzelfde kun je doen op het einde van elk configuratie bestand.

Bash Shell bestand : .bash

Neem /home/jijzelf/.bash. Als die bestaat … bestaat die wel ? Nog wel ? Anders kijk maar verder bij .bashrc

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp .bash .bash_2023_0616

Open (met een platte tekst editor) /home/jijzelf/.bash

# Aan het begin voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit is /home/jijzelf/.bash"
# sleep 1 laat je een seconde wachten voor het verder gaat. Wil je dat ? Haal het hekje ervoor wel !
# sleep 1
#


DEINHOUDVANDOTBASH


# Aan het eind voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit was /home/jijzelf/.bash"
# sleep 1

Bash Shell bestand : .bash_aliasses

Neem /home/jijzelf/.bash_aliasses. Als die bestaat …

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp .bash_aliasses .bash_aliasses_2023_1108

Open (met een platte tekst editor) /home/jijzelf/.bash_aliasses

# Aan het begin voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_1108
echo "Dit is /home/jijzelf/.bash_aliasses"
# sleep 1 laat je een seconde wachten voor het verder gaat. Wil je dat ? Haal het hekje ervoor wel !
# sleep 1
#
# Aan het eind voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_1108
echo "Dit was /home/jijzelf/.bash_aliasses"
# sleep 1

Bash Shell bestand : .bashrc

Neem /home/jijzelf/.bashrc

Over /home/jijzelf/.bashrc :

  • hier zit het nodige aan instellingen in. Bekijk ze, en wees er voorzichtig mee !
  • .bashrc wordt vanzelf gedraaid als je een non-login shell opstart

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp .bashrc .bashrc_2023_0616

Open (met een platte tekst editor) /home/jijzelf/.bashrc

# Aan het begin voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit is $HOME/.bashrc"
# sleep 1 laat je een seconde wachten voor het verder gaat. Wil je dat ? Haal het hekje ervoor weg !
# sleep 1

# Aan het eind voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit was $HOME/.bashrc"
# sleep 1

Gemaakt met https://duckduckgo.com/aichat “linux mint gnome terminal what causes .bashrc to be run”

In Linux Mint with the GNOME terminal, the .bashrc file is run for interactive, non-login shells. When you open a terminal window in GNOME, it starts an interactive, non-login shell by default. This shell runs the commands specified in the .bashrc file located in your home directory.

The .bashrc file is sourced (i.e., executed) every time a new terminal window is opened or a new terminal tab is created. This file is used to set environment variables, define shell functions, and configure the shell behavior for your user account.

Some common uses of the .bashrc file include:

  Setting the PATH environment variable to include custom directories or binaries
  Configuring the command prompt to display useful information like the current working directory, username, or hostname
  Defining aliases for frequently used commands or long command sequences
  Setting up the terminal environment for specific development tasks or workflows

If you want to modify the .bashrc file, you can open it in a text editor like Nano, Gedit, VI, or Vim

Bash Shell bestand : .bash_logout

Neem /home/jijzelf/.bash_logout

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp .bash_logout .bash_logout_2023_0619

Open (met een platte tekst editor) /home/jijzelf/.bash_logout

# Aan het begin voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0619
echo "Dit is /home/jijzelf/.bash_logout"
#
# Aan het eind voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0619
echo "Dit was /home/jijzelf/.bash_logout"

Bash Shell bestand : login shell and non-login shell

Zie .bash_profile en .profile

Bash Shell bestand : .bash_profile

linux mint gnome terminal what causes .bashrc to be run in a login shell

In Linux Mint with the GNOME terminal, the .bashrc file is not run automatically in a login shell. Instead, the .bash_profile or .profile file is executed for login shells.

When you log in to your Linux Mint system, a login shell is started, and the commands specified in the .bash_profile or .profile file are executed. These files are typically used to set up the global environment, such as setting the PATH environment variable, defining system-wide aliases, or configuring the terminal settings.

However, if the .bash_profile or .profile file exists in your home directory, and it sources the .bashrc file, then the .bashrc file will be run in a login shell as well. This is a common practice to keep the user-specific customizations in the .bashrc file and share them across both login and non-login shells.

Here's an example of how to source the .bashrc file from the .bash_profile:

  Open the .bash_profile file in a text editor:

bash

nano ~/.bash_profile

Add the following line to the file:

bash

  if [ -f ~/.bashrc ]; then
      . ~/.bashrc
  fi
  Save and close the file.

Now, when you log in to your Linux Mint system, the .bashrc file will be sourced in the login shell, and its configurations will be applied to your terminal environment.

Keep in mind that the .bash_profile file is only executed for login shells, while the .bashrc file is executed for interactive, non-login shells. If you want to apply the same configurations to both login and non-login shells, you can source the .bashrc file from the .bash_profile as shown above.

Bash Shell bestand : .profile

Neem /home/jijzelf/.profile

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp .profile .profile_2023_0619

Open (met een platte tekst editor) /home/jijzelf/.profile

# Aan het begin voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0619
echo "Dit is $HOME/.profile"
# sleep 1 laat je een seconde wachten voor het verder gaat. Wil je dat ? Haal het hekje ervoor weg !
# sleep 1

# Aan het eind voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_0619
echo "Dit was $HOME/.profile"
# sleep 1

In Linux Mint with the GNOME terminal, the .bashrc file is not run automatically in a login shell. Instead, the .bash_profile or .profile file is executed for login shells.

When you log in to your Linux Mint system, a login shell is started, and the commands specified in the .bash_profile or .profile file are executed. These files are typically used to set up the global environment, such as setting the PATH environment variable, defining system-wide aliases, or configuring the terminal settings.

However, if the .bash_profile or .profile file exists in your home directory, and it sources the .bashrc file, then the .bashrc file will be run in a login shell as well. This is a common practice to keep the user-specific customizations in the .bashrc file and share them across both login and non-login shells.

Here's an example of how to source the .bashrc file from the .bash_profile:

  Open the .bash_profile file in a text editor:

bash

nano ~/.bash_profile

Add the following line to the file:

bash

  if [ -f ~/.bashrc ]; then
      . ~/.bashrc
  fi

Save and close the file.

Now, when you log in to your Linux Mint system, the .bashrc file will be sourced in the login shell, and its configurations will be applied to your terminal environment.

Keep in mind that the .bash_profile file is only executed for login shells, while the .bashrc file is executed for interactive, non-login shells. If you want to apply the same configurations to both login and non-login shells, you can source the .bashrc file from the .bash_profile as shown above.

Bash Shell bestand : .Xresources

Over /home/jijzelf/.Xresources

Dit was voorheen de .Xdefaults

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp $HOME/.Xresources $HOME/.Xresources_2023_1108

Open (met een platte tekst editor) /home/jijzelf/.Xresources

# Aan het begin voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_1108
echo "Dit is $HOME/.Xresources"
# sleep 1 laat je een seconde wachten voor het verder gaat. Wil je dat ? Haal het hekje ervoor weg !
# sleep 1

# Hier is plaats voor zinvolle .Xresources inhoud. Die komt nog. Denk ik ...

# Aan het eind voegen we deze regels toe :

# Toegevoegd door MIJZELF op 2023_1108
echo "Dit was $HOME/.Xresources"
# sleep 1

Bash Shell bestand : /etc/profile

Neem /etc/profile

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp /etc/profile /etc/profile_2023_0616

Open (met een platte tekst editor, en met root rechten !!!) /etc/profile

# Aan het begin voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit is /etc/profile"

# Aan het eind voegen we deze regel toe :

# Toegevoegd door MIJZELF op 2023_0616
echo "Dit was /etc/profile"

Bash Shell bestand : /etc/bash.bashrc

Neem /etc/bash.bashrc

Maak voor de veiligheid eerst een reserve copy met een datum er achter

cd
cp /etc/bash.bashrc /etc/bash.bashrc_2023_0616

Open (met een platte tekst editor, en met root rechten !!!) /etc/bash.bashrc

# Aan het begin voegen we deze regel toe :
# Toegevoegd door MIJZELF op 2023_0616
echo "Dit is /etc/bash.bashrc"
#
# Aan het eind voegen we deze regel toe :
# Toegevoegd door MIJZELF op 2023_0616
echo "Dit was /etc/bash.bashrc"

Linux Terminal - Bash Shell Functionaliteit toevoegen

Alles wat je aanpast in /home/jijzelf werk alleen voor jouzelf

Alles wat je aanpast in /etc, werkt voor elke gebruiker, die deze Linux op deze computer gebruikt.

Allerlei instellingen komen in beeld met het commando “env”.

Sommige zaken stel je in met het commando “set”.

# Met env |less krijg je een overzicht van vanalles
env | less

# Met set |less krijg je een overzicht van vanalles
set | less

# Met set -o krijg je een lijst
set -o

Linux Terminal - Bash Shell Functionaliteit - prompt

De standaard prompt is een $

Als super user root is ingelogd, dan wordt de prompt een #

De prompt is een Terminal instelling. Hij zit in de variabele PS1. Die kun je dus aanpassen.

# Zo vraag je prompt op :
echo $PS1

Mijn favoriete prompt zit er zo uit :

hans:…etc»

Hij begint met de actieve user, en eindigt met het laatste deel van het directory path

Mijn favoriete prompt pas ik aan door de inhoud van de PS1 variabele aan te passen. De vraag is steeds weer in welk bestand die staat.

Het is hieronder de regel zonder #.

# toegevoegd door Hans op 2023 0616
# PS1="${LOGNAME}:...\${PWD##*/}>>"
PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1

Je kunt m bloot uitproberen door dit commando in de terminal te lanceren :

PS1="${LOGNAME}:...\${PWD##*/}>>"; export PS1

die ik dus in het juiste configuratie bestand moet toevoegen om dit voortaan altijd vanzelf voor elkaar te krijgen :

Voeg 'm maar toe bijna op het einde van /home/jijzelf/.bashrc

Linux Terminal - Bash Shell Functionaliteit - Editor vi in de terminal

Terminal Tekst Editor Vi

Gevorderden tip. Voor hen die vertrouwd zijn met vi als editor in de terminal.

# Met set -o vi zet je editor vi aan
set -o vi

# Met set +o vi zet je editor vi weer uit
set +o vi

Voeg 'm maar toe bijna op het einde van /home/jijzelf/.bashrc

https://phoenixnap.com/kb/linux-set

Terminal Tekst Editor Vi

Linux Scripts schrijven - basis kennis

Linux Terminal - Bash Shell Functionaliteit - aliassen

linux_terminal/configureren.txt · Laatst gewijzigd: 2026_0624_21:16 door Hans Bollen

Tenzij anders vermeld valt de inhoud van deze wiki onder de volgende licentie: Public Domain
Public Domain Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki