Этот скрипт использует tree ...
sudo apt-get install treeВы можете изменить глубину каталогов, изменив -L 1, и вы можете выбрать, использовать или не использовать ~/ ...
UPDATE 2: .. модифицировал скрипт, чтобы заменить только ведущий / home / user / (не «any») .. и добавил args. .
UPDATE 2 Добавлена проверка: .. Не добавляйте каталог в PATH, когда он уже находится в PATH. Эта проверка рассматривает «~ /» и «/ home / user / ' Быть другим.
На ваш вопрос 1 ... да, это правда; каждый конкретный каталог должен быть выделен индивидуально в PATH ..
На ваш вопрос 2 ... Вот сценарий, который сделает то, что вы хотите. Я тестировал его , но в его нынешнем виде он сделает новый PATH для текущей сессии. Чтобы сделать его постоянным, вы можете использовать export PATH (но я немного отрывочен по деталям export)
#
# name: path-add-dirs
# eg: $ path-add-dirs "$HOME/bin" "tilde" 1
# When directories are $HOME based, choose format.
# Add directories in tidle format: ~/...
# ...or as fullly-qualified: /home/user/...
# mode values: "tilde", or anything else for fully-qualified
mode="$2" # valid mode values: "tilde", or anything else
maindir="$1"; dirs= ; echo
# Buld string of subdirectories to a depth/level of 1
while IFS= read -r dir ; do
# Don't add directory if it is already in PATH
if [[ "$mode" == "tilde" ]] ; then
# replace only a *leading* :/home/user/
homecheck=":$dir"
dircheck="${homecheck/:$HOME\//:~/}"
dircheck="${dircheck#:}"
else
dircheck="${dir}"
fi;
pathcheck=":$PATH:"
if [[ "$pathcheck" != "${pathcheck/:$dircheck:/}" ]] ; then
echo "ALREADY IN PATH: $dircheck"
else
dirs="$dirs:$dir"
echo " added: $dircheck"
fi
done < <(tree --noreport -L $3 -fi -d "$maindir")
# Choose one of these two options
if [[ "$mode" == "tilde" ]]
then PATH="$PATH${dirs//:$HOME\//:~/}" # change :$HOME to :~/
else PATH="$PATH$dirs" # this method has fully expanded $HOME
fi
echo
echo "$PATH"
echo
Если вы хотите отключить «TPPS / 2 IBM TrackPoint», просто запустите в терминале
xinput disable 15
. Чтобы сделать его постоянным, вы можете запустить эту команду в качестве «Автоматически запущенного приложения».
Есть несколько других способов автоматического запуска этой команды при запуске сеанса, но IMHO это самый простой.