폴더 태깅?


8

폴더에 태그를 지정할 수있는 프로그램이 있습니까? 폴더 내에 다른 파일이 있고 많은 폴더가 있습니다. 각 폴더에 태그를 지정하는 것과 달리 각 폴더에 태그를 지정할 수 있으면 이러한 폴더를 분류하는 것이 매우 쉽습니다. 그런 일을 할 수 있는지 아는 사람이 있습니까? 감사합니다.


어떤 종류의 태그를 찾으십니까? 어떤 종류의 메타 태그가 추가 되었습니까? 아니면 실제 폴더 이름에 추가됩니까? 터미널을 사용하여 파일이나 노틸러스 등을 보십니까?
belacqua

하나의 디렉토리 또는 파일을 마우스 오른쪽 버튼으로 클릭-> 속성-> 엠 블 럼 탭을 클릭하십시오 원하는 엠블럼을 선택하고 노트 탭에 작성하지 않은 노트를 추가 할 수 있습니다. 당신이 이런 식으로 묻는다면.
Achu

@Achu 감사합니다.하지만 엠블럼을 찾고 있지는 않습니다. 엠블럼을 사용했지만 데이터를 분류하지 않고 개인적인 용도로만 사용했습니다.

@jbelacqua 파일을보기 위해 노틸러스를 사용하고 있습니다.이 폴더에는 다른 파일이 추가되지 않지만 다른 파일이 포함되어 있습니다. 태그 검색을 실행하면 폴더를 다시 정렬 할 수 있습니다. 지정된 폴더가 나타나 결과가 좁아집니다. 태그는 연도, 품질, 언어 등과 같은 것입니다.

>이 질문을 보셨습니까? 태그 및 비디오 파일 관리 askubuntu.com/questions/29513/tag-and-manage-video-files을 .. .IT는 개별 파일에 초점을 수행하지만, 밴시는 일 당신을 많이한다는 것을 보이고, 어쩌면 그것은 soemthing 않습니다 디렉토리 :
Peter.O

답변:


4

좋은 질문입니다. 저도 그와 비슷한 것을 찾고 있었지만 이미 노틸러스에 내장 된 것과 같은 것이 없다고 확신합니다.

그러나 손을 스크립팅으로 바꿀 수 있다면, 노틸러스 file Notes가 비슷한 일을 하도록 비교적 쉽게 조정할 수 있습니다 . 기본적인 (+?) 스크립팅이 필요합니다.

와 함께 file Notes파일뿐만 아니라 디렉토리에 메모를 추가 할 수 있습니다.

특정 태그에 대한 메모를 검색 한 다음 '노트'에서 일치하는 태그를 사용하여 각 디렉토리에 임시 링크 (또는 영구)를 작성하면됩니다. 결과 디렉토리 ... 그러면 노틸러스 창에 나타납니다! ...

여가 시간이 있다면 직접해볼 것이지만 대신 노틸러스 노트에 액세스하여 쓰고 삭제하기 위해 작성한 스크립트가 있습니다. 위에서 설명한 내용은 수행하지 않지만 액세스하는 방법을 보여 줍니다. Notes 데이터 캐시 . 이 스크립트는nautilus-actions

스크립트는 pastbin.ubuntu.com에 있습니다.


업데이트 : 이제 위에서 설명한 링크를 사용하는 작업 스크립트를 작성했습니다. 그러나 이제 "노틸러스 메모"아이디어를 바꾸고 대신 알 수없는 사용자의 .tag 파일에 접붙 였습니다 . (따라서 스크립트가 마음에 들면 , '이 .tag 아이디어가 있다는 사실을 사용자 미지의) ..
일반 텍스트 파일과 같은 I (그들이 간단 하고 다양한 매우 쉬운 작업)에
내가 사용했던 locate이 매우 빠르고으로, 검색 도구로하지만,이 마지막으로 실행하는 것만 큼 최신입니다 updatedb(일반적으로 매일이지만 언제든지 실행할 수 있음).

주석에서 스크립트 사용법을 설명하려고 시도했지만 완전히 테스트되지 않았으므로 약간의 사소한 점에서는 오작동 할 수 있음을 지적
해야합니다. 삭제 / 제거하는 유일한 것은 temp 디렉토리와 모든 소프트 링크입니다 소프트 링크를 제거해도 대상 / 데이터 디렉토리는 제거되지 않습니다.

여기 스크립트가 있습니다

UPDATE2 : (버그 수정. 처음 100 개의 .tag 파일 만 처리 중임 )

#!/bin/bash

# Script: dirtags ...(by fred.bear)
#
# Summary: Open the file browser in a temporary directory
#          which contains soft-links to directories whose     
#          '.tag' file contains the search string in $1
#
# .tag files are files you create in any directory which 
#      you wish to *tag*.
#
# .tag files are simple free form text, so you can 
#      put anything you like in them...  
#
# The script uses `locate` to create a list of .tag file
# 'locate' is very fast, but because it depends on 'updatedb'  
# for its list of current files, it can be a bit out of sync 
# with a newly added .tag file... Modifying an existing
# .tag file does not effect `locate`
# To refresh the `locate` database, just run 'sudo updatedb'
#  .. (updatedb typically auto-runs once a day, but you should check)
#
# Note: The search result soft links are put into a temporary directory
#   This directory is removed each time you run the script 
#   TODO: allow saved searches (?) maybe
#
# Note: With nautilus, running the script a second time while 
#   the previoulsy opened wiondow is still open, cause the 
#   second window to open in its parent directory: /tmp/$USER
#   ... but you can then just enter the 'dirtags' dir 
#       you see listed /tmp/$USER/$bname 
#       TODO: this probably happens because currently the
#         directory is being removed each time the script
#         is run...  (related to "allow saved searches")                    
#
# A sample usage of this script:
# 
#   1.  Make a  '.tag' file in each of several test directories.
#   2,  For this first-time test, run 'sudo updatedb' so that the   
#       newly added  .tag files are added to the 'locate's database
#   3.  In each .tag file, put some tags (words or phrases to serch for)
#          eg; action comedy drama good bad sci-fi  documentary 
#   4.  Run this script with a single argument.. (a grep regex) 
#          eg "action|comedy" 
#  


function args_grep_links {
  # $1 -- the grep regex
##echo grep -l '"'$1'"' ${tagged[@]}
  < <(eval grep -l '$1' ${tagged[@]}) \
      sed "s/^\(.*\)\/\.tag/ln -s \"\1\" $tagdbs/" \
    >>"$tagdir"/.tag.slinks
##(gedit "$tagdir"/.tag.slinks &)
  # make the soft links
  source "$tagdir"/.tag.slinks
  rm     "$tagdir"/.tag.slinks
  unset tagged
  aix=
}

# Identity the script
  bname="$(basename "$0")"
# Syntax
 if [[ "$1" == "" ]] ; then
  echo "ERROR: $bname requires one arg; a 'grep' regular expression string"
  echo "   eg: $bname \"music\" ......... Any instance of \"music\" .....(eg: \"musical\")"     
  echo "   eg: $bname \"\<music\>\" ..... Only the word \"music\" ...(but not \"musical\")"    
  echo "   eg: $bname \"muscic\|action\". Any instance of \"music\" or \"action\")"
  exit 1
 fi
# 'locate' the .tag files
# =======================
  tagdir="/tmp/$USER/$bname"
  tagdbs="${tagdir//\//\/}"
  [[   -d "$tagdir" ]] && rm -rf   "$tagdir" # remove all
  [[ ! -d "$tagdir" ]] && mkdir -p "$tagdir" # fresh start
  cp /dev/null "$tagdir"/.tag.slinks
  unset tagged  # array of .tag files 
  aix=0    # arg index
  amax=10  # arg max per call to grep 
  fct=0    # file count

  while IFS= read -r file ; do
    tagged[$aix]="$file"
####echo ${tagged[aix]}
    ((aix++));((fct++))
    (( aix == amax )) && args_grep_links "$1"
  done < <(locate -ber ^\.tag$ |sed "s/.*/\"&\"/")
  (( aix < amax )) && args_grep_links "$1"
  sleep 1 # to allow time for rm  to settle down after rm and adding links 
  xdg-open "$tagdir"

exit
#

나는 그것이 매우 흥미 롭다는 것을 알게 될 것입니다. 그러나 아마도 노틸러스가 아니라 그래픽 인터페이스를 가질 수있는 다른 프로그램이 좋을 것입니다. 사실 당신이 태그를 선택하고 그와 관련된 모든 것이 나오는 블로그의 아이디어와 비슷하다고 생각했습니다. 당신이 그것을 묘사하기 위해, 나는 800 개가 넘는 영화를 가지고 있으며, 모든 영화에는 각 폴더 아래에 적어도 3 개의 파일을 만드는 표지와 자막이 있습니다. "action"과 같은 태그 검색을 실행하고 action과 관련된 모든 표지를 볼 수 있다면 영화를 선택하는 것이 더 쉬울 것입니다. : D

@Fernando .. 죄송합니다. 해당 요구 사항을 도와 드릴 수 없습니다. (단순한 스크립트가 처리 할 수있는 것 이상으로 들립니다.) 아마도 방금 추가 한 scipt가 원하는 것을 찾을 때까지 어떻게 든 차이를 채울 수 있습니다. 그대로, 명령 줄 (또는 <Alt> F2)을 통해 실행할 수 있습니다. dirtags 모험
Peter.O

3

당신은 같은 파일을 추가 할 수 있습니다

.tag

모든 폴더에. 거기서 정보를 텍스트로 저장할 수 있습니다. 나중에 정보를 찾아 볼 수 있습니다.

find 와 같은 도구를 사용하는 것이 좋습니다 .

사용법에 대해 언제든지 문의하십시오.


(+1) 나는 노틸러스 노트 제안 대신에 당신의 아이디어를 너무 많이 사용했습니다 .. 작업 스크립트가 내 대답에 표시됩니다. 아이디어는 '사용자 알 수 없음'입니다.
Peter.O

2

tracker-utils 이것을 위해 일할 것입니다.

태그로 파일을 검색하는 방법은 무엇입니까?

답은 아직 받아 들여지지 않았지만 내가 올린 예제는이 프로그램을 어떻게 사용할 수 있는지에 대한 아이디어를 제공 할 것입니다. 태그 추가는 디렉토리에서도 잘 작동하며 테스트를 거쳤습니다.

디렉토리 예

<sean@mymachine:~> tracker-tag -a projects src/ code/ projects/
<sean@mymachine:~> tracker-tag -s projects
Results: 3
  /home/sean/projects
  /home/sean/src
  /home/sean/code

tracker-tag / * 유틸리티가 작동하려면 trackerd를 수동으로 시작해야합니다.

<sean@mymachine:~> /usr/lib/tracker/trackerd &

다음을 사용하여 추적기를 구성 할 수 있습니다.

<sean@mymachine:~> tracker-preferences

나는 여전히 추적 애플릿을 실행하지 않지만 (에 나열 ps되었지만 이후에도 노틸러스에 표시되지 않음 nautilus -q), 실제로 신경 쓰지 않습니다. 나는 대부분 GUI 도구를 사용하지 않습니다. CLI는 일반적으로 클릭하는 것보다 훨씬 빠르기 때문에 CLI를 선호합니다.

이전 게시물에서 귀하의 답변 중 하나를 읽었으며 질문에 기본 기준으로 나열하지 않았지만 노틸러스에서 태그를 추가 / 검색하려고하는 것처럼 보입니다. 그것이 다른 사람이 한 일이므로, 아마도이 대답은 당신에게 쓸모가 없을 것입니다. 즉, 일반적으로 GUI에서 할 수없는 일을하면 CLI로 점프하는 것이 그렇게 나쁘지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.