명령줄에서 구경 사용

명령줄에서 구경 사용

데비안 테스트에서 명령줄에서 구경을 사용하여 구문이 포함된 태그를 삽입하는 방법

    ebook-meta ebook_file --tags rhubarb

하지만 일련의 파일이 있지만 모두 동일한 작성자가 작성했기 때문에 해당 작성자의 이름 태그만 필요합니까?

이것은 Kindle에서 책을 색인화하고 정렬하는 데 사용됩니다.

답변1

모든 관련 파일이 동일한 디렉토리에 있다고 가정하면 가장 쉬운 방법은 다음과 같습니다.

for f in *; do ebook-meta "$f" --tags rhubarb

파일이 다양한 하위 디렉터리에 있을 수 있는 경우 다음을 사용하세요. find(이는 모든 하위 디렉터리의 유일한 파일이 전자책이라고 가정합니다. 이것이 사실이 아닐 수도 있으므로 비슷한 다른 것을 사용해야 하거나 -name "*.ebook"전자책의 확장자가 무엇이든 사용해야 합니다.)

find . -type f -exec ebook-meta '{}' --tags rhubarb \;

답변2

카탈로그에 저자의 전자책이 있어야 합니다. cd이 디렉터리로 이동하여 다음을 실행합니다.

for var in $(ls); do ebook-meta $var --tags rhubarb; done

파일 이름에 공백이 있으면 IFS(내부 필드 구분 기호)를 수정해야 합니다.

oldIFS=$IFS
IFS='\n'
for var in $(ls); do ebook-meta $var --tags rhubarb; done
IFS=$oldIFS

또는 단일 명령으로 동일한 작업을 수행합니다.

oldIFS=$IFS && IFS='\n' && for var in $(ls); do ebook-meta $var --tags rhubarb; done && IFS=$oldIFS

관련 정보