Организиране на файлове на вашия компютър

Мисля, че всеки, който работи с компютър, има някаква стратегия за организация на файловете и програмистите със сигурност имат.

Ще опиша как сам организирам файловете под формата на почти различни идейни бележки. Може би нещо ще бъде полезно за някого и може би някой ще сподели своите техники.

Наскоро се преместих на Mac и работният ми лаптоп все още е с Windows 7, така че повечето от триковете са ориентирани към Windows.

Основната цел на моята структура е да минимизира и опрости архивирането и потенциалната миграция към друг компютър, доколкото е възможно. С правилния подход тези задачи могат да бъдат решени като едно.

Всички препоръки по-долу са водени от тази цел.

Един подход и към двете е да се уверя, че всички мои файлове са налични в една йерархия на директория. „Моят“ означава, че в случай на преместване на друг компютър, тези файлове трябва да бъдат прехвърлени (да не бъдат забравени). Имам директория c:\moe (етимологията на английската „дума“ moe е загубена). Придвижвайки се надолу по тази директория, можете да намерите всички „мои“ файлове, всичко. Също така е важно да няма боклук в директорията c:\moe, която обикновено замърсява My Documents (всякакви примерни проекти, създадени от Студиото без да пита, безброй други My. папки от различни програми и т.н.). Тоест това е чиста полезна информация без неконтролирани боклуци.

Защо такива трудности? Не е тайна, че в Windows местоположението на някои файлове "по подразбиране" е много необичайно и не всички програми ви позволяват да промените местоположението им. Опитайте се да намерите базата данни на Outlook Express или Microsoft Outlook, Thunderbird, профили в Chrome или iTunes, настройки на SecureCRT сесия и т.н. Всички те обикновено са скрити някъде в недрата на c:\Users\your_user_name. Можете глупаво да архивирате тази директория, но, отново, вече има много неконтролирани глупости.

И така, с помощта на символни връзки, доведох всички необходими директории до прости пътища. Например:

Отиваме по-нататък. Напоследък станах яростен хейтър на програми, които записват конфигурация и настройки в системния регистър. Все още разбирам, че Microsoft Office използва регистъра поради "дълбоката интеграция" в системата. Но затова Far или putty все още не може просто да използва текстов файл за настройки и да го запише в c:\Users\. - неясен. За такива програми съм написал скрипт, който копира настройките на необходимите клонове на системния регистър в текстови файлове с командата reg. Какво е толкова полезно в настройките на Far? Например ftp/sftp сесии. Имам около сто от тях и не искам да ги загубя.

В отделен ред искам да отбележа програмите, които могат да се използват в преносим режим. Имам отделна директория за тях, например:

Обикновено в тази директория поддържам малки програми, които могат просто да се копират без инсталация и без които е неудобно. И така - просто прехвърли тази директория на друга машина и минималният набор от помощни програми вече е там.

След това директорията c:\moe\cmd. Има различни самостоятелно направени скриптове и микро помощни програми за един файл като junction.exe. Тази директория е под контрола на git, тъй като скриптовете се променят често и вие искате да видите историята на промените.

Тук се намира всичко свързано с програмирането. Йерархията на тази директория обикновено е на едно ниво: проект -> каталог. Едно условие (потвърдено през годините) е да не се използват интервали в имената на директориите. Това значително опростява писането на скриптове.

Също така е полезно да свържете директорията c:\Program Files\ към c:\prg. По-лесно е да работите в скриптове с програми, инсталирани в тази директория.

Друга директория е c:\moe\documents.

Тук се намират така наречените документи, без позоваваненякакъв проект: doc(x), xls(x), pdf, jpg и др. Тук вече са разрешени имена с интервали и български букви. Вътрешна йерархия - по смисъл. С документи на работа често създавам поддиректории по номер на година. В тях е удобно да почиствате стари неща. Например:

Преди известно време започнах активно да използвам атрибута само за четене. Ако видя, че не променям файла известно време, например няколко месеца, тогава го правя само за четене. Това важи както за проекти, така и за документи. Атрибутът само за четене предотвратява случайно презаписване на стар файл, отворен за получаване на "пример" от миналото. Е, ако искате да го промените, ще трябва да премахнете флага само за четене или да направите копие чрез „Запазване като…“. Основната идея е старият файл да не се презаписва, тъй като историята на създаването му може да бъде забравена и важен файл може случайно да бъде загубен. Всички негови производни трябва да бъдат направени чрез клониране.

Между другото, в Mac OS Lion Apple направи функцията за „заключване“ на файлове, които не са се променяли от известно време.

Документите също ще бъдат автоматично заключени, ако не бъдат променяни известно време. Времето за автоматично заключване може да се конфигурира в екрана „Опции…“ на панела с предпочитания на Time Machine (на всички места), със стойности от един ден до една година. По подразбиране е две седмици.

Има няколко други директории:

  • c:\moe\books - книги
  • c:\moe\itunes - база данни на iTunes
  • c:\moe\soft - софтуерен архив (обикновено дистрибуции)
  • c:\moe\vm - виртуални машини

За физическо архивиране използвам nnbackup. Това е много напреднала програма, но единствената, която използвам в нея, е функцията за еднопосочна синхронизация - следващия път, когато запазя, всеки файл в директорията c:\moe, който е променен, ще бъде актуализиран. Но изход, все пакпъти, точно копие на този каталог на защитен носител.

В крайна сметка използвам RapidEE за редактиране на променливи на средата в Windows. Трудно е да си представим по-удобна програма.

P.S. Допълнителен придатък (за да не става два пъти), което уж е по темата, но не съвсем. Същата статия за Lion описва, че Apple въвежда концепцията за управление на версии на документи на ниво API. Видях нещо подобно в една от системите за разработка на Bloomberg - IDE не трябваше да запазва принудително файловете на проекта. По всяко време средата гарантира безопасността на файловете и в случай на замръзване или други проблеми при рестартиране, отворените файлове се възстановяват автоматично от автоматично запазване. Но ако разработчикът насилствено запише файла (например натисне Ctrl-S), тогава файлът не просто се запазва, но се прави ангажимент в SVN с нова ревизия и вие също трябва да въведете описание на тази промяна.

Първоначално този подход ме вбеси, тъй като дългосрочният навик в DOS да „масажира“ F2 или Ctrl-S на всеки три секунди доведе до прозорец за въвеждане на описание на промените. Но с времето наистина се пристрастих към него. Сега Saving имаше смисъл и не беше просто средство за спасение от замръзване в процеса на стартиране.

Бях приятно изненадан, че Lion въведе подобен подход на ниво операционна система. Тук, разбира се, основната цел на Apple е малко по-различна - те искат напълно да се отърват от въпросите за запазване на незапазени документи при излизане от приложението, така че те (приложенията) да могат да бъдат убити и рестартирани, без потребителят да забележи, както в iOS. Странно е, че в Lion по подразбиране индикаторът за работещо приложение беше премахнат от Dock. Основното послание е следното - потребителят вече не трябва да се тревожи за този проблем. Операционната система ще стартира приложението, аконеобходима и ще го убие сама, ако има нужда от ресурсите му. Документите винаги ще бъдат в безопасност.

Кой друг ще сподели идеи и техники за организиране на файлове?