Linux 15.036 Themen, 107.107 Beiträge

Einrichtungsdatei oder Umgebungsvariable ?

heriL / 5 Antworten / Baumansicht Nickles

Hallo,
wenn ich Dolphin oder eine Konsole öffne lande ich immer im Verzeichnis: "/x-dat1/docs" statt im Homeverzeichnis.

konqueror startet im Home-Verzeichnis.

In den Dolphin-Einstellungen steht das Home-Verzeichnis, in .profile .bashrc und $HOME finde ich auch keine Anhaltspunkte.

Habt Ihr eine Idee, wer da noch mitredet? (bzw. wie ich das Homeverzeichnis voreinstellen kann ?)

Gruß
heriL

bei Antwort benachrichtigen
KarstenW heriL „Einrichtungsdatei oder Umgebungsvariable ?“
Optionen

Wenn du dich einloggst wird die .bash_profile Datei in deinem /home Verzeichnis eingelesen und verarbeitet:

:~$ cat .bash_profile

# ~/.bash_profile: executed by bash(1) for login shells.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/login.defs
#umask 022

# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
PATH=~/bin:"${PATH}"
fi


Für eine nonlogin Shell wird die Datei .bashrc verarbeitet.
In dieser Datei wird auch der Eingabeprompt festgelegt


:~$ cat .bashrc


# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
;;
*)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
;;
esac

# Comment in the above and uncomment this below for a color prompt
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
;;
*)
;;
esac

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

#if [ -f ~/.bash_aliases ]; then
# . ~/.bash_aliases
#fi

# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ]; then
eval "`dircolors -b`"
alias ls='ls --color=auto'
#alias dir='ls --color=auto --format=vertical'
#alias vdir='ls --color=auto --format=long'
fi

# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi


# This line was appended by KDE
# Make sure our customised gtkrc file is loaded.
# (This is no longer needed from version 0.8 of the theme engine)
# export GTK2_RC_FILES=$HOME/.gtkrc-2.0

Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
heriL KarstenW „Wenn du dich einloggst wird die .bash_profile Datei in deinem /home Verzeichnis...“
Optionen

nun, eine .bash_profile existiert bei mir nicht und
die .bashrc ist noch jungfräulich ;-) , also alles auskommentiert.

an welcher Stelle in deiner .bashrc gibst du denn vor, das dei Konsole und Dolphin im Homeverzeichnis starten sollen ?

Gruß
heriL

bei Antwort benachrichtigen
KarstenW heriL „nun, eine .bash_profile existiert bei mir nicht und die .bashrc ist noch...“
Optionen

Ich weiß nicht ob das die Ursache ist. Normalerweise wird mit der Umgebungsvariable PS1 bei allen Linuxdistributionen der Eingabeprompt festgelegt.

echo $PS1

${debian_chroot:+($debian_chroot)}\u@\h:\w\$

Du kannst ja mal zum Vergleich den Inhalt von deiner PS1 Variable anzeigen lassen.
Bei Debian lenny wird in der Datei .bashrc der Eingabeprompt festgelegt. Die .bashrc Datei wird auch in die Datei .bash_profile eingelesen:

# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi


.....
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color)
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
;;
*)
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
;;
esac
.....

Um die Syntax zu verstehen mußt du etwas Shellprogrammierung können oder lernen.
Im Ubuntu Wiki gibt es ein schöne Anleitung:

http://wiki.ubuntuusers.de/Bash/Prompt

Bedeutung der einzelnen Zeichen u@\h:\w\$

"The following list shows the meanings of the special characters used to define the PS1 and PS2 prompt strings.

* \t - time
* \d - date
* \n - newline
* \s - Shell name
* \W - The current working directory
* \w - The full path of the current working directory.
* \u - The user name
* \h - Hostname
* \# - The command number of this command.
* \! - The history number of the current command

If you want the full path of the current directory, use a small w in the string shown above. Read the bash(1) man page for more information. Also read The Bash Reference Manual in the directory /usr/doc/bash2-doc-2.03/bash.ps. It can be accessed from an X session by double clicking on it while using the file manager. Bash builtins are described in the file in the directory /usr/doc/bash2-doc-2.03/builtins.ps."

Ich hoffe du kannst etwas English ;-).

PS: Diese Konfigurationsdateien werden bei Debian automatisch bei der Erstinstallation angelegt. Du kannst sie aber mit einem Editor bearbeiten.



Debian GNU/Linux https://www.debian.org/index.de.html
bei Antwort benachrichtigen
the_mic heriL „Einrichtungsdatei oder Umgebungsvariable ?“
Optionen

greppe doch mal dein Homeverzeichnis nach dem entsprechenden Verzeichnis durch:

grep -ir '/x-dat1/docs' *

und schau mal, welche Dateien den entsprechenden String enthalten.

cat /dev/brain > /dev/null
bei Antwort benachrichtigen
the_mic Nachtrag zu: „greppe doch mal dein Homeverzeichnis nach dem entsprechenden Verzeichnis durch:...“
Optionen

Lass auch noch ein
set | grep -ir '/x-dat1/docs'
durchlaufen. set listet alle Umgebungsvariablen auf.

cat /dev/brain > /dev/null
bei Antwort benachrichtigen