1 votos

duplicar una estructura de carpeta o archivo mediante un archivo de marcador de posición

Tengo una gran biblioteca de medios digitales. La mayor parte de ella se mantiene "fuera de línea", pero la biblioteca de software que uso (Plex) utiliza los medios de comunicación de archivos de construir la biblioteca y lo necesito para utilizar los archivos de marcador.

El uso de 30 segundos ", este archivo está archivado" videos me puede catalogar fácilmente sin conexión películas en Plex. I "rsync" la estructura de directorios sin los archivos y luego "hacer el cp" un marcador de posición en cada película directorio y cambiar el nombre utilizando el padre nombre de la carpeta.

Para programas de TV esto no es práctico, ya que no puede ser de cientos de episodios por mostrar. Me gustaría saber si hay una manera de duplicar la estructura de carpetas/archivos de un programa de televisión, con muchos episodios en una sola carpeta, con el mismo marcador de posición del archivo.

Creo que hay una forma de crear carpetas de los nombres de los archivos, a continuación, copie el marcador de posición en cada nueva carpeta, cambiar el nombre utilizando el nombre de la carpeta y, a continuación, mueva los archivos a un único directorio, pero no sé cómo.

1voto

Luke Baumann Puntos 8

Aquí es lo que yo haría (no pueden ser más eficientes maneras de automatizar esto, pero este es un truco rápido que debería lograr lo que usted necesita). Espero haber entendido bien su pregunta.

Para obtener una lista de todos los directorios (y sus subdirectorios) dentro de un directorio existente:

Abra el Terminal y navegar a la carpeta existente que contiene la estructura desea duplicar (si usted no está familiarizado con el Terminal, estoy feliz de darle una orientación más específica sobre cómo hacer esto. Básicamente, si usted piensa de Terminal como Buscador, la carpeta predeterminada que está "viendo" al abrir un Terminal es su carpeta de usuario. Desde allí, puede escribir pwd a ver por donde, ls para ver una lista de todo lo que en el directorio actual, cd [folder name] a mover a una carpeta en el directorio y, a continuación, cd .. a moverse hacia un nivel para el directorio padre).

Escriba el siguiente comando:

find . -type d

Esto mostrará una lista de todos los directorios contenidos en el directorio actual, así como cada uno de sus subdirectorios (es decir, no va a dejar de buscar hasta que no hay más subdirectorios para entrar).

La lista tendrá entradas que se ven algo como esto:

./directory1
./directory1/subdirectory1
./directory2
./directory2/sub2/sub3/sub4

Debemos limpiar el formato hasta un poco antes de que podamos usar este texto.

Para limpiar el texto de tal manera que puede ser utilizado para recrear la estructura de carpetas:

Copia de esta lista en cualquier editor de texto plano (no Microsoft Word); uso TextWrangler pero TextEdit viene con su computadora. El uso de la función buscar y reemplazar, eliminar todas las instancias de ./ (deje el cuadro "reemplazar con" blanco y haga clic en reemplazar todos). Esto eliminará todos los períodos iniciales y barras, pero conservan posterior barras que indican los subdirectorios.

También, eliminar todas las líneas nuevas (es decir, el texto puede envolver en varias líneas, pero no debe explícita nuevos párrafos en los que hay). En el ejemplo anterior ahora el siguiente aspecto:

directory1 directory1/subdirectory1 directory2 directory2/sub2/sub3/sub4

Para crear un número arbitrario de nuevo las carpetas con un solo comando:

Nota: también Se podría hacer este paso con los nombres de carpeta de una fuente diferente, yo estaba un poco confundido por lo que el origen de los nombres de las carpetas que había en tu pregunta

Ahora usted debe tener una lista de carpetas/subcarpetas que es todo en una sola línea (aunque puede que se ajuste a varias líneas cuando se dicte en su editor de texto), y no tiene signos de puntuación*. Copia todos los de este texto en el portapapeles. Volver a la Terminal, y el uso de cd [folder], cd .., ls y pwd para navegar a la carpeta de destino donde desea volver a crear la estructura de carpetas, como se describió anteriormente.

Una vez que están en la carpeta de la derecha, escriba:

mkdir -p y, a continuación, el comando dev, y pulse enter. Asegúrese de que hay un espacio (y nada más) entre mkdir -p y el primer nombre del directorio, y un espacio entre cada nombre de directorio.

Sé que las personas tienen diferentes niveles de familiaridad con UNIX y el entorno de la Terminal, así que si esto es confuso siéntase libre de comentar los pasos que se necesita más aclaraciones.

*Tenga en cuenta que si alguno de los nombres de directorio que pegar en la Terminal de tener espacios o no caracteres alfanuméricos, como (./'!?:_) etc., usted necesita para escapar de ellos, o no funcionará. Es decir, para cada espacio o de otro extraño personaje, debe poner un \ directamente antes de que (tenga en cuenta la diferencia entre \ y /). Por lo music/the beatles hace music/the\ beatles. Puede utilizar la función buscar y reemplazar para esto también.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X