Возникают проблемы с обменом .bashrc на машинах с Dropbox?

Для ошибки:

eval: 1: /tmp/mathworks_11425/sys/java/jre/glnxa64/jre/bin/java: Permission denied

Вы должны предоставить разрешения для запуска java (кредиты для http://kittipatkampa.wordpress.com/2012/02/12/matlab-on- ubuntu-from-install-make-launch-icon-to-uninstall /)

После выполнения шагов Mahesh перейдите в папку

cd sys/java/jre/glnxa64/jre/bin/ (the folder that appears in your error message)

, а затем [!d4 ]

chmod +x java

Готов к работе. Вернитесь туда, где находится ваш установочный файл, и введите

sudo sh install

. Установка будет (надеюсь) запуска.

21
задан 7 March 2011 в 17:38

55 ответов

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

  mkdir -p ~/Dropbox/dotfiles
  mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc
  ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

[d4 ] Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 26 May 2018 в 00:10
  • 1
    У меня есть мои другие точечные файлы, настроенные в соответствии с вашим примером, я просто не очень хорошо знаком с bash и не знаю, как «special " все файлы Ubuntu по умолчанию, которые есть, есть. Я собираюсь идти вперед и использовать предложенный вами метод источника. Спасибо! – Alan Peabody 1 December 2010 в 18:14

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 25 July 2018 в 22:49

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 27 July 2018 в 00:36

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 31 July 2018 в 10:34

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 31 July 2018 в 11:37

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 2 August 2018 в 04:13

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

mkdir -p ~/Dropbox/dotfiles mv ~/.bashrc ~/Dropbox/dotfiles/.bashrc ln -s ~/Dropbox/dotfiles/.bashrc ~/.bashrc

На самом деле у меня довольно много дотфайлов в моя домашняя папка, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, который будет использоваться вашим .bashrc:

Т.е. в вашем .bashrc поместите:

source $HOME/Dropbox/dotfiles/bashrc-shared-settings

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc.

(Вы также можете сокращать source как только . в bash.)

26
ответ дан 4 August 2018 в 20:17

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

  mkdir -  p ~ / Dropbox / dotfiles mv ~ / .bashrc ~ / Dropbox / dotfiles / .bashrc ln -s ~ / Dropbox / dotfiles / .bashrc ~ / .bashrc  

На самом деле у меня довольно несколько dotfiles в моей домашней папке, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, чтобы получить его .bashrc :

То есть, в вашем .bashrc , put:

source $ HOME / Dropbox / dotfiles / bashrc-shared-settings [ ! d4]

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc .

(Вы также можете аббревиатура source как . в bash.)

26
ответ дан 6 August 2018 в 04:18

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

  mkdir -  p ~ / Dropbox / dotfiles mv ~ / .bashrc ~ / Dropbox / dotfiles / .bashrc ln -s ~ / Dropbox / dotfiles / .bashrc ~ / .bashrc  

На самом деле у меня довольно несколько dotfiles в моей домашней папке, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, чтобы получить его .bashrc :

То есть, в вашем .bashrc , put:

source $ HOME / Dropbox / dotfiles / bashrc-shared-settings [ ! d4]

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc .

(Вы также можете аббревиатура source как . в bash.)

26
ответ дан 7 August 2018 в 22:22

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

  mkdir -  p ~ / Dropbox / dotfiles mv ~ / .bashrc ~ / Dropbox / dotfiles / .bashrc ln -s ~ / Dropbox / dotfiles / .bashrc ~ / .bashrc  

На самом деле у меня довольно несколько dotfiles в моей домашней папке, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, чтобы получить его .bashrc :

То есть, в вашем .bashrc , put:

source $ HOME / Dropbox / dotfiles / bashrc-shared-settings [ ! d4]

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc .

(Вы также можете аббревиатура source как . в bash.)

26
ответ дан 10 August 2018 в 10:32

Я не вижу никаких реальных последствий, но, полагаю, это зависит от того, что у вас есть! Если это просто быстрые псевдонимы, которые работают одинаково везде, а также косметические вещи, я не вижу никаких проблем.

Вы можете либо просто перенести свой .bashrc в место где-нибудь в папке Dropbox, а затем символически привязать его к каждой из машин.

  mkdir -  p ~ / Dropbox / dotfiles mv ~ / .bashrc ~ / Dropbox / dotfiles / .bashrc ln -s ~ / Dropbox / dotfiles / .bashrc ~ / .bashrc  

На самом деле у меня довольно несколько dotfiles в моей домашней папке, которые на самом деле являются символическими связями с общими папками в моей учетной записи Dropbox.

Еще один вариант заключается в том, что вы можете создать файл внутри вашей папки с Dropbox, чтобы получить его .bashrc :

То есть, в вашем .bashrc , put:

source $ HOME / Dropbox / dotfiles / bashrc-shared-settings [ ! d4]

, а затем создайте файл настроек bashrc-shared-settings, который вы хотите использовать на всех машинах, и вы можете сохранить отдельные файлы .bashrc .

(Вы также можете аббревиатура source как . в bash.)

26
ответ дан 13 August 2018 в 17:00
  • 1
    У меня есть мои другие точечные файлы, настроенные в соответствии с вашим примером, я просто не очень хорошо знаком с bash и не знаю, как «special & quot; все файлы Ubuntu по умолчанию, которые есть, есть. Я собираюсь идти вперед и использовать предложенный вами метод источника. Спасибо! – Alan Peabody 1 December 2010 в 18:14

Основной риск, о котором я могу думать, заключается в том, что вы должны помнить, что синхронизация - это не то же самое, что резервное копирование. Любые ошибки будут синхронизированы со всеми вашими машинами.

Чтобы добавить отдельный файл в ваш ~/.bashrc, добавьте что-то вроде этого:

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

Где ~ / .foo - это отдельный файл.

8
ответ дан 26 May 2018 в 00:10
  • 1
    Ты прав! Но, к счастью, dropbox сохраняет исправления ваших файлов, поэтому материал автоматически создается резервным копированием :) – Alex 1 December 2010 в 07:51
  • 2
    Спасибо за большое предложение, я буду вручную искать второй файл, и я, вероятно, буду использовать этот синтаксис. – Alan Peabody 1 December 2010 в 18:17

Обычно, централизация файлов конфигурации - это хорошо! Если вы хотите настроить то, что работает на основе данной ОС или имени хоста, вы можете сделать что-то вроде следующего в вашем .bashrc:

export HOSTNAME=`hostname | cut -f1 -d'.'`

if [ -f ~/.bash/os/$OSTYPE.sh ]; then
    source ~/.bash/os/$OSTYPE.sh
fi

if [ -f ~/.bash/host/$HOSTNAME.sh ]; then
    source ~/.bash/host/$HOSTNAME.sh
fi

Затем создайте .bash-каталог и os и host каталоги под этим и помещать любые пользовательские настройки в файлы, называемые & lt; whatever & gt; .sh, где & lt; whatever & gt; это тип os или хост, который вы хотите настроить.

Я сохраняю все эти файлы в dropbox, и у меня есть сценарий bash под названием .bash в папке Dropbox, которая помогает мне для облегчения их связывания в:

#!/bin/bash

#Array of <source><space><link> target->symlink mappings
linkarray=( "~/Dropbox/config/bashrc ~/.bashrc"
            "~/Dropbox/config/bash ~/.bash"
            "~/Dropbox/config/vimrc ~/.vimrc"
            "~/Dropbox/config/vim ~/.vim"
            "~/Dropbox/config/ssh ~/.ssh"
            "~/Dropbox/config/screenrc ~/.screenrc"
            "~/Dropbox/bin ~/bin" )

#turn off globbing to split each entry on spaces
set -f
for entry in "${linkarray[@]}"
do
    targets=( $entry )
    #eval will expand the tildes
    eval from=${targets[0]}
    eval to=${targets[1]}
        #if the target exists and is not a symlink, err on the side of caution
        if [ -e "$to" -a ! -L "$to" ]
        then
            echo "$to exists and is not a link, skipping..."
        else
            #probably safe to delete an existing symlink
            if [ -e "$to" ]
            then
                rm $to
            fi
            ln -s $from $to
        fi
done
5
ответ дан 26 May 2018 в 00:10

Я сохраняю свой .bashrc, символически связанный с Dropbox, и множество других файлов конфигурации (.gitconfig, .vimrc и т. д.).

Я создаю файл с именем .bashrc_local в конце его для других настроек который я хотел бы оставить машиной независимой.

if [ -f ~/.bashrc_local ]; then
    . ~/.bashrc_local
fi
2
ответ дан 26 May 2018 в 00:10

Синхронизация с Dropbox отличная, но если вы не хотите устанавливать Dropbox на сервер, вы можете реализовать мой метод.

Создайте файл с вашими общими настройками bash в папке Dropbox. Щелкните правой кнопкой мыши файл и нажмите «Поделиться ссылкой» в меню «Dropbox». Затем нажмите «Получить ссылку». Это скопирует общую ссылку в буфер обмена. Добавьте? Dl = 1 в конец общего файла. Это позволяет вам получить необработанный файл. Ваша общая ссылка теперь будет похожа на мою: https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 Добавьте эту строку в ~ / .bashrc source $HOME/.bash_shared_settings Создайте cronjob с вашим предпочтительным интервалом, используя эта команда (замените своим общим файлом Dropbox!) */30 * * * * curl -sS https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 > ~/.bash_shared_settings; chmod +x ~/.bash_shared_settings;

Это будет обновлять вашу копию ~ / .bash_shared_settings каждые полчаса. Каждый раз, когда вы перезагружаете сеанс, вы включаете последние изменения.

1
ответ дан 26 May 2018 в 00:10

Обычно, централизация файлов конфигурации - это хорошо! Если вы хотите настроить то, что работает на основе данной ОС или имени хоста, вы можете сделать что-то вроде следующего в вашем .bashrc:

export HOSTNAME=`hostname | cut -f1 -d'.'` if [ -f ~/.bash/os/$OSTYPE.sh ]; then source ~/.bash/os/$OSTYPE.sh fi if [ -f ~/.bash/host/$HOSTNAME.sh ]; then source ~/.bash/host/$HOSTNAME.sh fi

Затем создайте .bash-каталог и os и host каталоги под этим и помещать любые пользовательские настройки в файлы, называемые & lt; whatever & gt; .sh, где & lt; whatever & gt; это тип os или хост, который вы хотите настроить.

Я сохраняю все эти файлы в dropbox, и у меня есть сценарий bash под названием .bash в папке Dropbox, которая помогает мне для облегчения их связывания в:

#!/bin/bash #Array of <source><space><link> target->symlink mappings linkarray=( "~/Dropbox/config/bashrc ~/.bashrc" "~/Dropbox/config/bash ~/.bash" "~/Dropbox/config/vimrc ~/.vimrc" "~/Dropbox/config/vim ~/.vim" "~/Dropbox/config/ssh ~/.ssh" "~/Dropbox/config/screenrc ~/.screenrc" "~/Dropbox/bin ~/bin" ) #turn off globbing to split each entry on spaces set -f for entry in "${linkarray[@]}" do targets=( $entry ) #eval will expand the tildes eval from=${targets[0]} eval to=${targets[1]} #if the target exists and is not a symlink, err on the side of caution if [ -e "$to" -a ! -L "$to" ] then echo "$to exists and is not a link, skipping..." else #probably safe to delete an existing symlink if [ -e "$to" ] then rm $to fi ln -s $from $to fi done
5
ответ дан 25 July 2018 в 22:49

Основной риск, о котором я могу думать, заключается в том, что вы должны помнить, что синхронизация - это не то же самое, что резервное копирование. Любые ошибки будут синхронизированы со всеми вашими машинами.

Чтобы добавить отдельный файл в ваш ~/.bashrc, добавьте что-то вроде этого:

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

Где ~ / .foo - это отдельный файл.

8
ответ дан 25 July 2018 в 22:49
  • 1
    Ты прав! Но, к счастью, dropbox сохраняет исправления ваших файлов, поэтому материал автоматически создается резервным копированием :) – Alex 1 December 2010 в 07:51
  • 2
    Спасибо за большое предложение, я буду вручную искать второй файл, и я, вероятно, буду использовать этот синтаксис. – Alan Peabody 1 December 2010 в 18:17

Синхронизация с Dropbox отличная, но если вы не хотите устанавливать Dropbox на сервер, вы можете реализовать мой метод.

Создайте файл с вашими общими настройками bash в папке Dropbox. Щелкните правой кнопкой мыши файл и нажмите «Поделиться ссылкой» в меню «Dropbox». Затем нажмите «Получить ссылку». Это скопирует общую ссылку в буфер обмена. Добавьте? Dl = 1 в конец общего файла. Это позволяет вам получить необработанный файл. Ваша общая ссылка теперь будет похожа на мою: https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 Добавьте эту строку в ~ / .bashrc source $HOME/.bash_shared_settings Создайте cronjob с вашим предпочтительным интервалом, используя эта команда (замените своим общим файлом Dropbox!) */30 * * * * curl -sS https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 > ~/.bash_shared_settings; chmod +x ~/.bash_shared_settings;

Это будет обновлять вашу копию ~ / .bash_shared_settings каждые полчаса. Каждый раз, когда вы перезагружаете сеанс, вы включаете последние изменения.

1
ответ дан 25 July 2018 в 22:49

Я сохраняю свой .bashrc, символически связанный с Dropbox, и множество других файлов конфигурации (.gitconfig, .vimrc и т. д.).

Я создаю файл с именем .bashrc_local в конце его для других настроек который я хотел бы оставить машиной независимой.

if [ -f ~/.bashrc_local ]; then . ~/.bashrc_local fi
2
ответ дан 25 July 2018 в 22:49

Обычно, централизация файлов конфигурации - это хорошо! Если вы хотите настроить то, что работает на основе данной ОС или имени хоста, вы можете сделать что-то вроде следующего в вашем .bashrc:

export HOSTNAME=`hostname | cut -f1 -d'.'` if [ -f ~/.bash/os/$OSTYPE.sh ]; then source ~/.bash/os/$OSTYPE.sh fi if [ -f ~/.bash/host/$HOSTNAME.sh ]; then source ~/.bash/host/$HOSTNAME.sh fi

Затем создайте .bash-каталог и os и host каталоги под этим и помещать любые пользовательские настройки в файлы, называемые & lt; whatever & gt; .sh, где & lt; whatever & gt; это тип os или хост, который вы хотите настроить.

Я сохраняю все эти файлы в dropbox, и у меня есть сценарий bash под названием .bash в папке Dropbox, которая помогает мне для облегчения их связывания в:

#!/bin/bash #Array of <source><space><link> target->symlink mappings linkarray=( "~/Dropbox/config/bashrc ~/.bashrc" "~/Dropbox/config/bash ~/.bash" "~/Dropbox/config/vimrc ~/.vimrc" "~/Dropbox/config/vim ~/.vim" "~/Dropbox/config/ssh ~/.ssh" "~/Dropbox/config/screenrc ~/.screenrc" "~/Dropbox/bin ~/bin" ) #turn off globbing to split each entry on spaces set -f for entry in "${linkarray[@]}" do targets=( $entry ) #eval will expand the tildes eval from=${targets[0]} eval to=${targets[1]} #if the target exists and is not a symlink, err on the side of caution if [ -e "$to" -a ! -L "$to" ] then echo "$to exists and is not a link, skipping..." else #probably safe to delete an existing symlink if [ -e "$to" ] then rm $to fi ln -s $from $to fi done
5
ответ дан 27 July 2018 в 00:36

Основной риск, о котором я могу думать, заключается в том, что вы должны помнить, что синхронизация - это не то же самое, что резервное копирование. Любые ошибки будут синхронизированы со всеми вашими машинами.

Чтобы добавить отдельный файл в ваш ~/.bashrc, добавьте что-то вроде этого:

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

Где ~ / .foo - это отдельный файл.

8
ответ дан 27 July 2018 в 00:36
  • 1
    Ты прав! Но, к счастью, dropbox сохраняет исправления ваших файлов, поэтому материал автоматически создается резервным копированием :) – Alex 1 December 2010 в 07:51
  • 2
    Спасибо за большое предложение, я буду вручную искать второй файл, и я, вероятно, буду использовать этот синтаксис. – Alan Peabody 1 December 2010 в 18:17

Синхронизация с Dropbox отличная, но если вы не хотите устанавливать Dropbox на сервер, вы можете реализовать мой метод.

Создайте файл с вашими общими настройками bash в папке Dropbox. Щелкните правой кнопкой мыши файл и нажмите «Поделиться ссылкой» в меню «Dropbox». Затем нажмите «Получить ссылку». Это скопирует общую ссылку в буфер обмена. Добавьте? Dl = 1 в конец общего файла. Это позволяет вам получить необработанный файл. Ваша общая ссылка теперь будет похожа на мою: https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 Добавьте эту строку в ~ / .bashrc source $HOME/.bash_shared_settings Создайте cronjob с вашим предпочтительным интервалом, используя эта команда (замените своим общим файлом Dropbox!) */30 * * * * curl -sS https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 > ~/.bash_shared_settings; chmod +x ~/.bash_shared_settings;

Это будет обновлять вашу копию ~ / .bash_shared_settings каждые полчаса. Каждый раз, когда вы перезагружаете сеанс, вы включаете последние изменения.

1
ответ дан 27 July 2018 в 00:36

Я сохраняю свой .bashrc, символически связанный с Dropbox, и множество других файлов конфигурации (.gitconfig, .vimrc и т. д.).

Я создаю файл с именем .bashrc_local в конце его для других настроек который я хотел бы оставить машиной независимой.

if [ -f ~/.bashrc_local ]; then . ~/.bashrc_local fi
2
ответ дан 27 July 2018 в 00:36

Обычно, централизация файлов конфигурации - это хорошо! Если вы хотите настроить то, что работает на основе данной ОС или имени хоста, вы можете сделать что-то вроде следующего в вашем .bashrc:

export HOSTNAME=`hostname | cut -f1 -d'.'` if [ -f ~/.bash/os/$OSTYPE.sh ]; then source ~/.bash/os/$OSTYPE.sh fi if [ -f ~/.bash/host/$HOSTNAME.sh ]; then source ~/.bash/host/$HOSTNAME.sh fi

Затем создайте .bash-каталог и os и host каталоги под этим и помещать любые пользовательские настройки в файлы, называемые & lt; whatever & gt; .sh, где & lt; whatever & gt; это тип os или хост, который вы хотите настроить.

Я сохраняю все эти файлы в dropbox, и у меня есть сценарий bash под названием .bash в папке Dropbox, которая помогает мне для облегчения их связывания в:

#!/bin/bash #Array of <source><space><link> target->symlink mappings linkarray=( "~/Dropbox/config/bashrc ~/.bashrc" "~/Dropbox/config/bash ~/.bash" "~/Dropbox/config/vimrc ~/.vimrc" "~/Dropbox/config/vim ~/.vim" "~/Dropbox/config/ssh ~/.ssh" "~/Dropbox/config/screenrc ~/.screenrc" "~/Dropbox/bin ~/bin" ) #turn off globbing to split each entry on spaces set -f for entry in "${linkarray[@]}" do targets=( $entry ) #eval will expand the tildes eval from=${targets[0]} eval to=${targets[1]} #if the target exists and is not a symlink, err on the side of caution if [ -e "$to" -a ! -L "$to" ] then echo "$to exists and is not a link, skipping..." else #probably safe to delete an existing symlink if [ -e "$to" ] then rm $to fi ln -s $from $to fi done
5
ответ дан 31 July 2018 в 10:34

Основной риск, о котором я могу думать, заключается в том, что вы должны помнить, что синхронизация - это не то же самое, что резервное копирование. Любые ошибки будут синхронизированы со всеми вашими машинами.

Чтобы добавить отдельный файл в ваш ~/.bashrc, добавьте что-то вроде этого:

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

Где ~ / .foo - это отдельный файл.

8
ответ дан 31 July 2018 в 10:34
  • 1
    Ты прав! Но, к счастью, dropbox сохраняет исправления ваших файлов, поэтому материал автоматически создается резервным копированием :) – Alex 1 December 2010 в 07:51
  • 2
    Спасибо за большое предложение, я буду вручную искать второй файл, и я, вероятно, буду использовать этот синтаксис. – Alan Peabody 1 December 2010 в 18:17

Синхронизация с Dropbox отличная, но если вы не хотите устанавливать Dropbox на сервер, вы можете реализовать мой метод.

Создайте файл с вашими общими настройками bash в папке Dropbox. Щелкните правой кнопкой мыши файл и нажмите «Поделиться ссылкой» в меню «Dropbox». Затем нажмите «Получить ссылку». Это скопирует общую ссылку в буфер обмена. Добавьте? Dl = 1 в конец общего файла. Это позволяет вам получить необработанный файл. Ваша общая ссылка теперь будет похожа на мою: https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 Добавьте эту строку в ~ / .bashrc source $HOME/.bash_shared_settings Создайте cronjob с вашим предпочтительным интервалом, используя эта команда (замените своим общим файлом Dropbox!) */30 * * * * curl -sS https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 > ~/.bash_shared_settings; chmod +x ~/.bash_shared_settings;

Это будет обновлять вашу копию ~ / .bash_shared_settings каждые полчаса. Каждый раз, когда вы перезагружаете сеанс, вы включаете последние изменения.

1
ответ дан 31 July 2018 в 10:34

Я сохраняю свой .bashrc, символически связанный с Dropbox, и множество других файлов конфигурации (.gitconfig, .vimrc и т. д.).

Я создаю файл с именем .bashrc_local в конце его для других настроек который я хотел бы оставить машиной независимой.

if [ -f ~/.bashrc_local ]; then . ~/.bashrc_local fi
2
ответ дан 31 July 2018 в 10:34

Обычно, централизация файлов конфигурации - это хорошо! Если вы хотите настроить то, что работает на основе данной ОС или имени хоста, вы можете сделать что-то вроде следующего в вашем .bashrc:

export HOSTNAME=`hostname | cut -f1 -d'.'` if [ -f ~/.bash/os/$OSTYPE.sh ]; then source ~/.bash/os/$OSTYPE.sh fi if [ -f ~/.bash/host/$HOSTNAME.sh ]; then source ~/.bash/host/$HOSTNAME.sh fi

Затем создайте .bash-каталог и os и host каталоги под этим и помещать любые пользовательские настройки в файлы, называемые & lt; whatever & gt; .sh, где & lt; whatever & gt; это тип os или хост, который вы хотите настроить.

Я сохраняю все эти файлы в dropbox, и у меня есть сценарий bash под названием .bash в папке Dropbox, которая помогает мне для облегчения их связывания в:

#!/bin/bash #Array of <source><space><link> target->symlink mappings linkarray=( "~/Dropbox/config/bashrc ~/.bashrc" "~/Dropbox/config/bash ~/.bash" "~/Dropbox/config/vimrc ~/.vimrc" "~/Dropbox/config/vim ~/.vim" "~/Dropbox/config/ssh ~/.ssh" "~/Dropbox/config/screenrc ~/.screenrc" "~/Dropbox/bin ~/bin" ) #turn off globbing to split each entry on spaces set -f for entry in "${linkarray[@]}" do targets=( $entry ) #eval will expand the tildes eval from=${targets[0]} eval to=${targets[1]} #if the target exists and is not a symlink, err on the side of caution if [ -e "$to" -a ! -L "$to" ] then echo "$to exists and is not a link, skipping..." else #probably safe to delete an existing symlink if [ -e "$to" ] then rm $to fi ln -s $from $to fi done
5
ответ дан 31 July 2018 в 11:37

Основной риск, о котором я могу думать, заключается в том, что вы должны помнить, что синхронизация - это не то же самое, что резервное копирование. Любые ошибки будут синхронизированы со всеми вашими машинами.

Чтобы добавить отдельный файл в ваш ~/.bashrc, добавьте что-то вроде этого:

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

Где ~ / .foo - это отдельный файл.

8
ответ дан 31 July 2018 в 11:37
  • 1
    Ты прав! Но, к счастью, dropbox сохраняет исправления ваших файлов, поэтому материал автоматически создается резервным копированием :) – Alex 1 December 2010 в 07:51
  • 2
    Спасибо за большое предложение, я буду вручную искать второй файл, и я, вероятно, буду использовать этот синтаксис. – Alan Peabody 1 December 2010 в 18:17

Синхронизация с Dropbox отличная, но если вы не хотите устанавливать Dropbox на сервер, вы можете реализовать мой метод.

Создайте файл с вашими общими настройками bash в папке Dropbox. Щелкните правой кнопкой мыши файл и нажмите «Поделиться ссылкой» в меню «Dropbox». Затем нажмите «Получить ссылку». Это скопирует общую ссылку в буфер обмена. Добавьте? Dl = 1 в конец общего файла. Это позволяет вам получить необработанный файл. Ваша общая ссылка теперь будет похожа на мою: https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 Добавьте эту строку в ~ / .bashrc source $HOME/.bash_shared_settings Создайте cronjob с вашим предпочтительным интервалом, используя эта команда (замените своим общим файлом Dropbox!) */30 * * * * curl -sS https://dl.dropbox.com/s/h25q5c3czo6mnjo/shared_bash_settings.sh?dl=1 > ~/.bash_shared_settings; chmod +x ~/.bash_shared_settings;

Это будет обновлять вашу копию ~ / .bash_shared_settings каждые полчаса. Каждый раз, когда вы перезагружаете сеанс, вы включаете последние изменения.

1
ответ дан 31 July 2018 в 11:37

Другие вопросы по тегам:

Похожие вопросы: