Sortera filer in i mappar

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
Ainigma
Inlägg: 803
Blev medlem: 26 sep 2007, 20:49
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Sortera filer in i mappar

Inlägg av Ainigma »

Vilket är det bästa kommandot om man vill sortera filer in i mappar? Jag vill alltså inte bara använda titeln på filen för då kan jag ju använda 'mv' utan jag vill att terminalen kontrollerar vissa ord i filen(det är pdf-filer och textfiler) och med hjälp av det sorterar in i rätt mapp. Det bästa vore om jag kunde ha det booleskt så att sorteringen blir mera specifik. Kommandot 'sort' är väl bara för att sortera text i en textfil, inte att sortera filer in mappar vad jag förstår. :)
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Sortera filer in i mappar

Inlägg av Osprey »

Det där finns det nog inget färdigt kommando som klarar av, men däremot så är det rätt enkelt att "hacka ihop" ett script som fixar det...

Generellt så kan väl scriptet bli något som:

Kod: Markera allt

#! /bin/bash
#
for FILE in *; do
	if [[ ! -d "$FILE" ]]; then
		if [[ ! -z $(grep "sökbegrepp1" "$FILE") ]]; then
			mv "$FILE" dir1
		elif [[ ! -z $(grep "sökbegrepp2" "$FILE") ]]; then
			mv "$FILE" dir2
		elif [[ ! -z $(grep "sökbegrepp3" "$FILE") ]]; then
			mv "$FILE" dir3
		else
			mv "$FILE" dir4
		fi
	fi
done
...och att lägga till lite mer villkor så att du kan åstadkomma vilka booleska funktioner du vill, är ju inte så svårt... :)
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Ainigma
Inlägg: 803
Blev medlem: 26 sep 2007, 20:49
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Sortera filer in i mappar

Inlägg av Ainigma »

Ok tack :D Nu är jag inte bra på detta så det är inte helt klart för mig vad skriptet säger, men jag gissar att det uttrycker en disjunktion, hur uttrycker man ett tillägg av en konjunktion av söktermerna i pdf:en ?
Användarvisningsbild
Osprey
Inlägg: 6310
Blev medlem: 06 apr 2008, 00:09
OS: Ubuntu
Ort: Göteborg/Mölndal/Falkenberg
Kontakt:

Re: Sortera filer in i mappar

Inlägg av Osprey »

Det är bara att utforma begreppet i if-satsen så att det motsvarar det du vill uppnå med konjunktionen.

Logiska operatorer i bash är t.ex:

Kod: Markera allt

AND    &&
OR     ||
NOT    !
XOR    ^
Agera genom att ta och behålla initiativet, ta de risker detta kräver...
http://www.enargo.com/it/
OpenVMS Shark - i Linux finns inte SYS$CMKRNL...
Ainigma
Inlägg: 803
Blev medlem: 26 sep 2007, 20:49
OS: Ubuntu
Utgåva: 24.04 Noble Numbat LTS

Re: Sortera filer in i mappar

Inlägg av Ainigma »

Ok tack :D
Skriv svar

Återgå till "Terminalforum"