Como você não forneceu nenhum script para ajudar, use esta linha para criar os nomes das pastas na lista de arquivos:
- Criar variável (ou ler a partir do arquivo de lista de nomes de arquivos):
filename="[SubsHorrible] name of show - 00 [1080p].mkv"
-
Em seguida, obtenha a peça necessária:
echo ${filename" "-*}
-
Resultado:
[SubsHorrible] name of show
, para criar a pastaecho ${filename%%" "-*} | xargs -d '\n' mkdir
Explicação: ${filename%" "-*}
: na parte de trás do nome do arquivo, remova todos até o ponto " "-
e, em seguida, retorne todo o resto.
Para a amostra dada:
[SubsHorrible] name of show - 00 [1080p].mkv
[SubsHorrible] name of show - name2 of show - 00 [1080p].mkv
[SubsHorrible] name of show - 000 [1080p].mkv
Retorna:
[SubsHorrible] name of show
[SubsHorrible] name of show - name2 of show
[SubsHorrible] name of show
Use este script simples para criar as pastas:
#!/usr/bin/env bash
while IFS= read -r var
do
mkdir "${var%" "-*}"
done < "$1"
Uso:
./createfolder.sh list
In-coopera em seu script maior.
- Veja isso para mais ajuda: