Score:1

How to modify the path bash: /home/joydev/home/joydev/root/root-6.28.04-install/bin/thisroot.sh: No such file or directory

us flag

could you please clarify how to solve the following problem?

Whenever I am opening the terminal I am getting following message:

bash: /home/joydev/home/joydev/root/root-6.28.04-install/bin/thisroot.sh: No such file or directory

The relevant output part of cat ~/.bashrc is:

. ~/home/joydev/root/root-6.28.04-install/bin/thisroot.sh
. ~/root/root-6.28.04-install/bin/thisroot.sh
. ~/root/root-6.28.04-install/bin/thisroot.sh
. ~/root/root-6.28.04-install/bin/thisroot.sh
. ~/root/root-6.28.04-install/bin/thisroot.sh
. ~/root/root-6.28.04/buildroot/bin/thisroot.sh
. ~/root/root-6.28.04/buildroot/bin/thisroot.sh
waltinator avatar
it flag
You should have added the directory to `$PATH`: `/home/joydev/home/joydev/root/root-6.28.04-install/bin`.
Raffa avatar
jp flag
Please [edit] your question to add the output of `cat ~/.bashrc` ... The `thisroot.sh` file appears to be already called by full path so I guess `$PATH` is not the issue here but rather might be a none-existent file indeed as it appears @waltinator
Joydev avatar
us flag
Thank you very much for your comments. I am getting following l . ~/home/joydev/root/root-6.28.04-install/bin/thisroot.sh . ~/root/root-6.28.04-install/bin/thisroot.sh . ~/root/root-6.28.04-install/bin/thisroot.sh . ~/root/root-6.28.04-install/bin/thisroot.sh . ~/root/root-6.28.04-install/bin/thisroot.sh . ~/root/root-6.28.04/buildroot/bin/thisroot.sh . ~/root/root-6.28.04/buildroot/bin/thisroot.sh
Raffa avatar
jp flag
Is this all the output of `cat ~/.bashrc`?
Joydev avatar
us flag
Those are the last few lines.
Joydev avatar
us flag
I solved the problem by removing the path from the .bashrc
Score:1
jp flag

thisroot.sh is apparently a script file sourced(i.e. lines/commands in it are imported and executed) with the .(period/dot) command in your .bashrc(which in-turn is sourced every-time you open your terminal with bash as it's shell) file ... The source command and its alias the dot . take a path after them which can be either full absolute/real i.e. starting from the root directory i.e. / like:

/home/joydev/root/root-6.28.04-install/bin/thisroot.sh

Or it can be "relative" to e.g. your home directory like:

~/root/root-6.28.04-install/bin/thisroot.sh

Where the tilde ~ will be expanded by your shell to the real path to your home directory i.e.:

$ echo ~
/home/joydev

Therefore, this line in your .bashrc file:

. ~/home/joydev/root/root-6.28.04-install/bin/thisroot.sh

will expand to:

. /home/joydev/home/joydev/root/root-6.28.04-install/bin/thisroot.sh

and bash will try to source a none-existent file path ... Hence, the error message you see:

bash: /home/joydev/home/joydev/root/root-6.28.04-install/bin/thisroot.sh: No such file or directory

Needless to say that if you fix that line by either removing ~ or removing its expansion /home/joydev, the error should disappear if that thisroot.sh file exists at the specified path ... Which appears to be the case as no errors printed from processing the other similar paths to the file in the following lines in your .bashrc file.

Joydev avatar
us flag
Thank you very much for the clear explanation @Raff
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.