tmux
устанавливает переменную $ TMUX
так, чтобы она указывала на сокет, поэтому вы можете сделать что-то вроде
if [ -z "$TMUX" ]
then
....
fi
. Материал внутри теста будет запущен только в том случае, если переменная не установлена, т.е. вы еще не находитесь в сеансе tmux
.
Это не совсем то, что вы думаете, но если вас интересует работа с файлами, поддерживающими метаданные, exiftool
может просматривать и изменять метаданные в большом количестве типов файлов, включая PDF-файлы. Полный список см. в man exiftool
.
Я неоднократно использовал его для создания и изменения метаданных в PDF-файлах. Например:
exiftool -Title="My PDF" \
-Subject="stuff" \
-Description="my pdf about various things" \
-Keywords="miscellanea, nonsense" \
-Author="me" \
-Creator="also me" \
"mypdf.pdf"
Теперь это становится более тесно связанным с вашей идеей. Поле Keywords
метаданных (или любое другое поле для тех форматов файлов, которые поддерживают создание произвольных полей -многие делают )для хранения ваших тегов в самих файлах,позволяя скрипту автоматически поддерживать ферму символических ссылок тегов.
В качестве альтернативы сценарий может поддерживать базу данных (неструктурированный -текст, например CSV или аналогичный, или базу данных SQL, например sqlite
), содержащую список имен файлов (с полным абсолютным путем ), метаданные файловой системы. (временные метки, размер, разрешение и т. д. )и их теги. Другие сценарии могут быть написаны для поиска в этой базе данных и возврата результата (s )в удобном формате.
Например:
vi $(search-tagged-files --date "last sunday" --keywords thesis)
или
localc $(search-tagged-files --keywords budget,2017 \
--mimetype=application/vnd.oasis.opendocument.spreadsheet)
ПРИМЕЧАНИЕ. :Единственным самым большим недостатком чего-либо подобного является огромный объем работы, который потребуется для поддержки тегов для каждого из файлов. Кое-что из этого можно было бы автоматизировать, но многое было бы утомительно, -ручная работа отнимала бы много времени. И это игнорирует время проектирования и разработки, чтобы придумать систему, чтобы сделать это.
Ни одна из программ, используемых для создания или редактирования файлов, не будет каким-либо образом интегрирована с такой системой управления файлами, как и стандартные инструменты, такие как mv
, cp
или rm
.
Вы могли бы написать сценарии-оболочки для многих из них, которые знали об этой базе данных тегов и обновляли ее автоматически, но я бы даже не знал, с чего начать, если бы вы использовали файловый браузер с графическим интерфейсом для перемещения, копирования и открытия файлов. и т.д... вам, вероятно, придется написать свой собственный файловый браузер.
Затраченная работа, вероятно, является основной причиной того, что большинство людей, у которых были подобные идеи, в конечном итоге подумали: «Вместо этого я просто буду использовать хорошо -организованное дерево каталогов». Даже работа, необходимая для написания кода для управления документами, огромна, а работа по управлению метаданными для каждого файла еще больше -, как правило, это стоит усилий только для очень крупных организаций, имеющих не менее десятков тысяч документов. следить за.
Это не новая идея,было проведено много исследований и разработок подобных идей. Одно из ее названий — Система управления документами .
По моему опыту, попытки пометить файлы с помощью метаданных могут быть ненадежными. Не все файловые менеджеры позволяют вам просматривать или изменять метаданные напрямую, и у меня были метаданные, которые не переносились в другие системы или не отображались в Windows так же, как в Linux, или наоборот -.
Лично я использовал подход, похожий на то, как программа TagSpaces обрабатывает это; Я добавляю теги к самому имени файла.
TagSpaces делает это следующим образом:Filename [tag1 tag2 tag3].ext
Я делаю так:Filename #tag1 #tag2 #tag3.ext
Я обнаружил, что это очень эффективно, особенно в сочетании с такой программой, как catfish
(, которая очень похожа на Everything
для Windows ), привязанную к горячей клавише. Поскольку каждый тег начинается с #
, если я ищу тег #bills
, мне не нужно беспокоиться о возврате файлов со словом «счета» в имени, которые не имеют этого тега.
Я провел много часов, изучая различные методы организации моих файлов с помощью тегов или тегов -, как в системах, от использования таких сервисов, как Evernote, до сложных иерархий папок. Это самый простой и удобный метод, который мне удалось найти, и он не зависит от ОС -.