[bash] przenoszenie plików które mają w nazwie numer kolejny

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

[bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

Witam
Chciałbym stworzyć skrypt który przenosił by pliki o stałej nazwie oraz numerze kolejnym do innego folderu. Przykładowa nazwa pliku [Ayako]_Infinite_Stratos_-_IS_-_01_[H264][720p][D764A3EC].mkv.torrent liczby pogrubione będą się zmieniać.

próbowalem tak ale niestety to niedziala

Kod: Zaznacz cały

#!/bin/bash
cd /home/sebastian/Pobrane
mv [Ayako]_Infinite_Stratos_-_IS_-_*_[H264][720p][*].mkv.torrent /home/sebastian/Pobrane/.pliki-torrent
fi
Dziękuje i podrawiam
toots
Piegowaty Guziec
Piegowaty Guziec
Posty: 7
Rejestracja: 07 sty 2011, 21:28
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: toots »

zse1 pisze:

Kod: Zaznacz cały

mv [Ayako]_Infinite_Stratos_-_IS_-_*_[H264][720p][*].mkv.torrent /home/sebastian/Pobrane/.pliki-torrent

Kod: Zaznacz cały

mv [Ayako]_Infinite_Stratos_-_IS_-_*_[H264][720p]\[*\].mkv.torrent /home/sebastian/Pobrane/.pliki-torrent
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

ten sposób nie działa
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

Kod: Zaznacz cały

find ~/Pobrane -name '\*.torrent' -execdir mv '{}' ~/Pobrane/.pliki-torrent \;
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

a wtedy to chyba skopiuje mi wszystkie pliki *.torrent czy tak

sprawdziłem i nawet twój sposób dk75 nie działa
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

jak nie działa jak działa

Jak uruchamiasz skrypt bo to też ważne - jeśli z CRONTAB i jeśli to mają być tylko pliki Infinite Startos to

Kod: Zaznacz cały

/usr/bin/find /home/sebastian/Pobrane -iname '[ayako]_infinite_stratos_\*.torrent' -execdir mv '{}' /home/sebastian/Pobrane/.pliki-torrent \;
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

bez crona, skrypt jest uruchamiany z menu Skrypty pod PPM
aktualny kod

Kod: Zaznacz cały

#!/bin/bash
find ~/Pobrane -name '[Ayako]_Infinite_Stratos_\*.torrent' -execdir mv '{}' ~/Pobrane/.pliki-torrent \;
fi
w późniejszym czasie skrypt byłby powiększany
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

Trzeba było tak od razu, a poza tym inaczej się daje regexy w apostrofie a inaczej bez i tu mój błąd - sprawdzone pod NautliusScripts (i nie musisz klikać na danym torrencie - wystarczy na dowolnym pliku w katalogu)

Kod: Zaznacz cały

#!/bin/bash

find . -maxdepth 1 -iname '*[ayako]*infinite*stratos*.torrent' -execdir mv '{}' ~/Pobrane/.pliki-torrent \;

exit 0
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

dk75 pisze:Trzeba było tak od razu, a poza tym inaczej się daje regexy w apostrofie a inaczej bez i tu mój błąd - sprawdzone pod NautliusScripts (i nie musisz klikać na danym torrencie - wystarczy na dowolnym pliku w katalogu)
a to ja wiem

a teraz skrypt działa :D

jako że jest to skrypt do torrentów to odrazu przydało by się aby po znalezieniu i przeniesieniu zaczęło się pobierać więc dopisałem na końcu w nowej linijce
screen -S rtorrent rtorrent tylko że jakoś rtorrent w screenie się nie odpalił co jest źle ?
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

Nie wiem.
NautiliusScripts są uruchamiane we własnym środowisku z własnymi ustawieniami i może nie można w nim screen uruchomić gdyż ponieważ bo służą tylko do obsługi zaznaczonych w oknie plików.

A rtorrent nie może ci cały czas działać? Mi tam działa na okrągło tylko mu scheduling zrobiłem gdyż mam bezliktransferu w nocy i w dzień jest spowolniony do 1kb/s.
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

a da radę go odpalić ale w screenie by chodził caly czas
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

właśnie na tym polega screen

zrób sobie taki plik np. w katalogu domowym

Kod: Zaznacz cały

#!/bin/bash

if [ -x /usr/local/bin/rtorrent ]; then RTORRENT="/usr/local/bin/rtorrent"
elif [ -x /usr/bin/rtorrent ]; then RTORRENT="/usr/bin/rtorrent"
else exit 66
fi

if [ -O ~/.rtorrent/session/rtorrent.lock ]; then
    LOCK=1
    if [ $(pidof rtorrent |awk '{print NR}') ]; then
	echo -e "Uwaga!!!\nrTorrent już działa!\n"
	exit 66
    else
	echo -e "Jest tylko założony plik 'torrent.lock'.\nByło nieczyste zamknięcie ostatnio - czyszczę.\n"
	rm -f ~/.rtorrent/session/rtorrent.lock
	LOCK=;
    fi
else LOCK=; fi

if [ ! $LOCK ]; then /usr/bin/screen -UOdmS rTorrent ${RTORRENT}; fi
exit 0
a następnie dodaj go do uruchomienia w programach startowych ( menu System / Preferencje / Programy startowe )
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

zaraz sprawdzę tylko wprowadzę własne ścieżki

OK rtorrent się włącza w screenie tylko teraz jak próbuje do niego wejść przez screen -R rtorrent to włacza mi sie "otwieranie nowego okna"

już mam mój błąd wpisywałem screen -r rtorrent zamiast screen -r rTorrent :P

EDIT:
jeszcze takie małe pytanko i można zamykać temat
podany przez ciebie dk75 skrypt postanowiłem lekko zmodyfikować jako już 2 skrypt który pobrane pliki z torrenta przenosiłby do podanych folderów więc zamieniłem "torrent" na "mkv" oraz dodałem własne ścieżki gdzie miało by się to kopiować ale niestety to nie działa część plików się kopiuje a część nie

Kod: Zaznacz cały

#!/bin/bash
cd ~/Pobrane
find . -maxdepth 1 -iname '*[ayako]*infinite*stratos*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Infinite Stratos - IS' \;
find . -maxdepth 1 -iname '*[gg]*yumekui*merry*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Yumekui Merry' \;
find . -maxdepth 1 -iname '*[gg]*kimi*ni*todoke*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Kimi ni Todoke 2nd Season' \;
find . -maxdepth 1 -iname '*[gg]*star*driver*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Star Driver' \;
find . -maxdepth 1 -iname '*[gg]*bakuman*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Bakuman' \;
find . -maxdepth 1 -iname '*[GotWoot]*moonlight*mile*S2*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Moonlight Mile 2nd Season' \;
exit 0
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

co masz na myśli?
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

podałeś mi kod skryptu który znajduje na podstawie podanych reguł i przenosi pliki *.torrent do odpowiedniego katalogu i tak pomyślałem czemu nie zrobić nowego skryptu (na podobnej zasadzie "znajdź na podstawie podanych reguł i przenieś) który przenosił by już gotowe pobrane dane z rtorrent do podanych folderów. Więc zamieniłem w kodzie "torrent" na "mkv" i podałem własne ścieżki gdzie miały by się przenosić dane tylko ze niektóre pliki się kopiują a niektóre nie

EDIT:
aktualny kod z moimi "regułami" i ścieżkami

Kod: Zaznacz cały

#!/bin/bash
cd ~/Pobrane
find . -maxdepth 1 -iname '*[ayako]*infinite*stratos*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Infinite Stratos - IS' \;
find . -maxdepth 1 -iname '*[gg]*yumekui*merry*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Yumekui Merry' \;
find . -maxdepth 1 -iname '*[gg]*kimi*ni*todoke*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Kimi ni Todoke 2nd Season' \;
find . -maxdepth 1 -iname '*[gg]*star*driver*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Star Driver' \;
find . -maxdepth 1 -iname '*[gg]*bakuman*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Bakuman' \;
find . -maxdepth 1 -iname '*[GotWoot]*moonlight*mile*S2*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Moonlight Mile 2nd Season' \;
exit 0
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

co masz na myśli pisząc "niektóre się kopiują a niektóre nie" - wróżką nie jestem aby to w szklanej kuli zobaczyć...
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

a przepraszam chodzi o 4 linijke w kodzie

EDIT:
plik [gg]_Yumekui_Merry_-_01_[FD877DDC].mkv znajduje się już w folderze Pobrane ale niestety się nie przenosi, reszta z reguł działa
Awatar użytkownika
dk75
Przebojowy Jelonek
Przebojowy Jelonek
Posty: 1142
Rejestracja: 07 mar 2007, 22:59
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86_64

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: dk75 »

Po pierwsze popraw moje błędy związane z regułkami dla -iname - niestety find w -iname nie obsługuje posix regex tylko perl regex i nie mogę się połapać co i jak (myślałem, że w -iname nie ma jakiegoś porządku w regex) i dopiero w praniu wychodzi (jestem bardziej przyzwyczajony do AWK).

Tak więc wszędzie gdzie masz nawiasy po -iname ( "[" i ]" ) musisz pododawać "\", czyli:

Kod: Zaznacz cały

#!/bin/bash
cd ~/Pobrane
find . -maxdepth 1 -iname '*\[ayako\]*infinite*stratos*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Infinite Stratos - IS' \;
find . -maxdepth 1 -iname '*\[gg\]*yumekui*merry*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Yumekui Merry' \;
find . -maxdepth 1 -iname '*\[gg\]*kimi*ni*todoke*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Kimi ni Todoke 2nd Season' \;
find . -maxdepth 1 -iname '*\[gg\]*star*driver*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Star Driver' \;
find . -maxdepth 1 -iname '*\[gg\]*bakuman*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Bakuman' \;
find . -maxdepth 1 -iname '*\[GotWoot\]*moonlight*mile*S2*.mkv' -execdir mv '{}' '/home/sebastian/Wideo/Anime/Moonlight Mile 2nd Season' \;
exit 0
wcześniejszy skrypt do torrentów tak samo

Potem sprawdź czy to jest rozwiązaniem.
Jeśli nie to będziemy eliminować dalsze możliwości.
Linux Mint Debian Edition x86_64/2.6.39, Conky 1.8.0, Xorg 7.6/1.10.4 - GNOME 2.30.2, nVidia 285.03
Lenovo T61p, HITACHI HTS722010K9SA00 100GB, ST9250827AS 250GB
http://linuxcounter.net/user/483055.html
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

ten zabieg też nie pomógł
zse1
Piegowaty Guziec
Piegowaty Guziec
Posty: 24
Rejestracja: 23 gru 2006, 09:27
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: [bash] przenoszenie plików które mają w nazwie numer kolejny

Post autor: zse1 »

temat można zamknąć
dziękuje bardzo dk75 za pomoc
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość