Как я могу совместно использовать тандерберд (icedove) профиль, в режиме реального времени, между двумя компьютерами?

Много оболочек разворачивают ведущий символ тильды (~) перед наклонной чертой в начале пути в полный путь Вашего Корневого каталога. Можно предотвратить это расширение оболочки путем заключения в кавычки символа тильды или путем проверки, что тильда не запускает путь:

$ echo "$HOME"
/home/idallen
$ echo ~
/home/idallen
$ echo "~"
~
$ echo \~
~
$ echo ./~
./~

Нет ничего специального о символе тильды к самому Unix, таким образом, можно создать каталог, названный тильдой, если Вы скрываете тильду от расширения оболочкой с помощью любого из вышеупомянутых методов:

$ mkdir "~"
$ ls -ld '~'
drwxr-xr-x 2 idallen idallen 40 Oct 22 08:45 ~
$ ls -ld \~
drwxr-xr-x 2 idallen idallen 40 Oct 22 08:45 ~
$ ls -ld ./~
drwxr-xr-x 2 idallen idallen 40 Oct 22 08:45 ~
$ ls -ld /tmp/idallen/~
drwxr-xr-x 2 idallen idallen 40 Oct 22 08:45 /tmp/idallen/~

Если Вы не скрываете ведущий символ тильды от оболочки, оболочка разворачивает его, чтобы быть Вашим Корневым каталогом. Добавление echo команда перед командной строкой может показать Вам, что оболочка делает к Вашей командной строке, прежде чем она будет выполнена:

$ echo cd ~
cd /home/idallen                 # would go to $HOME directory
$ echo cd ./~
cd ./~                           # would go into directory named ~

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

$ echo rm -r ~       
rm -r /home/idallen              # would remove the $HOME directory
$ echo rm -r "~"
rm -r ~                          # would remove the directory named ~
$ echo rm -r ./~
rm -r ./~                        # would remove the directory named ~
$ echo rm -r /tmp/idallen/~
rm -r /tmp/idallen/~             # would remove the directory named ~

Только неупомянутые тильды в начале путей расширяются, чтобы быть Вашим Корневым каталогом.

3
11.08.2014, 21:04
2 ответа

Я настроил SpiderOak на синхронизацию T-bird Portable между несколькими компьютерами. Хотя я не воспользовался им в полной мере, SpiderOak позволяет исключить определенные файлы (и папки, я полагаю) - просто используйте команду "Удалить" при использовании вкладки "Вид" в SpiderOak. Вероятно, вы также можете настроить пользовательские правила, если создадите свою собственную синхронизацию, а не начинать с их "улья", как это сделал я.

Я рассматривал возможность синхронизации только файлов настроек (адресных книг, настроек пользовательского интерфейса и т.д.), но мне интересно, что произойдет, если вы обновите T-bird на одном компьютере, и это обновление включает в себя обновление формата в одном из этих файлов настроек. Если вы затем попытаетесь обновить T-bird на втором компьютере, у вас могут возникнуть проблемы. Вот почему я решил синхронизировать приложение. Однако затем возникает проблема, если вы хотите синхронизировать T-bird на разных операционных системах. У меня нет для этого хорошего совета, кроме как придерживаться файлов настроек и надеяться, что их формат не изменится. Я думаю, что вы также можете хранить резервные копии файлов настроек до и после обновления для использования в таких ситуациях.

1
27.01.2020, 21:31

Как видно из примера, OP означает слово, а не строку, поэтому

sed 's/\b541./&9/g' file

Если 541 может начинаться с другого места в слове (не с начала)

sed 's/\b\S*541/\n&/g     #mark a beginning of word(s) with pattern
     s/\n\(....\)/\19/g   #remove mark and do adding
    ' file

Вы можете ограничить количество символов словом (словами) следующим образом

sed 's/\b\(541.\)\(\S\{6\}\)\b/\19\2/g' file

или более общим

sed 's/\b541./&\n/g;s/\n\S\{6\}\b/9&/g;s/\n//g' file
. 121---160239-

Если ваше возражение против использования SpiderOak заключается только в ограничении размера файла, и у вас есть пропускная способность для синхронизации всей почты, rsync работает хорошо, если вы можете открыть/пробросить соответствующие порты в обеих сетях.

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

В профиле Thunderbird много файлов/папок, и вам нужно будет провести исследование на предмет того, что безопасно синхронизировать. В этом сценарии проще составить список "включить", чем список "исключить". Найдите место, где Thunderbird хранит контакты, и вам не придется беспокоиться о других различных беспорядочных файлах в каталоге профиля.

Возможно, есть более простой вариант - некоторые дополнения Thunderbird, которые хранят контактную информацию и т.д. как файл в почтовом аккаунте IMAP, так что вы будете синхронизировать только то, что вам нужно, а не весь профиль.

0
27.01.2020, 21:31

Теги

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