JIYIK CN >

Current Location:Home > Learning > OPERATING SYSTEM >

Differences between Bash Profile and Bashrc

Author:JIYIK Last Updated:2025/04/05 Views:

This article explains the difference between ~./bash_profileand files in Bash.~/.bashrc

What are startup files in Bash?

Startup files are files that are executed after the shell is started. The startup files depend on the type of shell that is started. The shell can be executed as an interactive shell or a non-interactive shell.

An interactive shell is one that reads commands from user input on a terminal and displays output to the terminal. In contrast, a non-interactive shell is not associated with a terminal, for example to run a script.

An interactive shell can be further divided into two. It can be an interactive login shell or an interactive non-login shell.

A login shell is the first process started after a successful login /bin/loginby reading /etc/passwdthe .login file. A login shell is executed under your user ID. A login shell is executed when you log in using a terminal, switch to another user, or use SSH.

A login shell starts a non-login shell. This can be a shell started as a process that is not logged in, or a shell started from another shell. The process starts a non-login shell using the name of the shell executable file.

Difference between ~/.bash_profileand in Bash~/.bashrc

Once the shell is started as an interactive login shell, it ~/.profilereads commands from , but Bash reads ~/.bash_profilecommands from . Bash can only read ~/.bash_profile, and if the file does not exist, Bash reads it ~/.profile.

~/.profileis more commonly used in Linux distributions than ~/.bash_profile, because it is read and executed by all shells. , in contrast, ~/.bash_profileis only read and executed by Bash.

When the shell is started as an interactive non-login shell, it ~/.bashrcreads and executes commands from file.

~/.bash_profileand ~/.bashrcas dot files located in the user's home directory. Files in a user's home directory are used to make configurations that apply only to that specific user.

These configurations usually override the system configuration. ~/.bash_profileContains launcher configuration and user-specific environment configuration, while ~/.bashrcthe ./configuration.txt file stores user-specific functions and aliases.

The files located /etc/in the directory are used for system-wide configuration that applies to all users on the system. These files include /etc/profilesand /etc/bashrc.

Use lsthe command to view the startup files in Bash

To view ~/.bash_profileor ~/profileand ~/.bashrc, navigate to your home directory and type the command ls -al.

-aThe option notify lscommand lists all files, including those starting with a dot. -lThe option notify lscommand lists the files using the long listing format.

The following image shows the ~/.bashrcand ~/.profilefiles.

Startup File

For reprinting, please send an email to 1244347461@qq.com for approval. After obtaining the author's consent, kindly include the source as a link.

Article URL:

Related Articles

How to decompress x.tar.xz format files under Linux

Publish Date:2025/04/08 Views:186 Category:OPERATING SYSTEM

A lot of software found today is in the tar.xz format, which is a lossless data compression file format that uses the LZMA compression algorithm. Like gzip and bzip2, it supports multiple file compression, but the convention is not to compr

Summary of vim common commands

Publish Date:2025/04/08 Views:115 Category:OPERATING SYSTEM

In Linux, the best editor should be vim. However, the complex commands behind vim's powerful functions also make us daunted. Of course, these commands do not need to be memorized by rote. As long as you practice using vim more, you can reme

Detailed explanation of command return value $? in Linux

Publish Date:2025/04/08 Views:58 Category:OPERATING SYSTEM

? is a special variable. This variable represents the return value of the previous command. That is to say, when we run certain commands, these commands will return a code after running. Generally, if the command is successfully run, the re

Common judgment formulas for Linux script shell

Publish Date:2025/04/08 Views:159 Category:OPERATING SYSTEM

In shell script programming, predicates are often used. There are two ways to use predicates, one is to use test, and the other is to use []. Let's take a look at how to use these two methods through two simple examples. Example 1 # test –

How to use the Linux file remote copy command scp

Publish Date:2025/04/08 Views:151 Category:OPERATING SYSTEM

Scp copies files between two hosts over the network, and the data is encrypted during transmission. Its underlying layer uses ssh for data transmission. And it has the same authentication mechanism and the same security level as ssh. When u

Scan to Read All Tech Tutorials

Social Media
  • https://www.github.com/onmpw
  • qq:1244347461

Recommended

Tags

Scan the Code
Easier Access Tutorial