[+] Przenoszenie wielu plików z katalogu do podkatalogu

Ogólne pytania dotyczące systemu
piter
Beginner
Posty: 128
Rejestracja: 09 lutego 2008, 12:45

[+] Przenoszenie wielu plików z katalogu do podkatalogu

Post autor: piter »

Sprawa niby prosta, ale jakoś nigdzie nie mogę znaleźć rozwiązania.
W katalogu mam jeden podkatalog oraz wiele innych plików, które chce przenieść do tego podkatalogu.

Kod: Zaznacz cały

~/katalog$ mv * podkatalog/
mv: nie można przenieść `podkatalog' do własnego podkatalogu `podkatalog/podkatalog'
Mimo komunikatu pliki są przenoszone. Komunikat jest jak najbardziej zrozumiały. Ale jak wpisać to polecenie żeby uniknąć tego komunikatu?
Na razie wymyśliłem coś takiego:

Kod: Zaznacz cały

~/katalog$ mv $(ls|grep -v "podkatalog") ./podkatalog/
ale jest to raczej droga na około.
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Wystarczy:

Kod: Zaznacz cały

apt-get install mc
lub:

Kod: Zaznacz cały

aptitude install mc
Uruchamiasz: Np. po lewej stronie otwierasz katalog z plikami. Po prawej katalog do którego masz przenieść pliki.
Ustawiasz pozycję wyjściową po lewej stronie z pomocą klawisza ,,Tab''. Naciskasz na klawiaturze numerycznej klawisze najpierw ,,+'' i ,,Enter''. Wszystkie pliki w katalogu zaznaczone na żółto (domyślne ustawienia). Naciskasz klawisz F6 i zatwierdzasz przez naciśnięcie klawisza ,,Enter''.
piter
Beginner
Posty: 128
Rejestracja: 09 lutego 2008, 12:45

Post autor: piter »

Chyba źle zostałem zrozumiany. Nie mam problemu żeby przenieść te pliki do podkatalogu.
Polecenie mv działa i przenosi te pliki do podkatalogu. Jedynie informuje, że nie może przenieść podkatalogu do siebie samego co jest zrozumiałe. Komunikat pojawia się ponieważ jako pierwszy parametr polecenia mv używam gwiazdkę, więc każe przenieść wszystkie pliki i podkatatalogi włącznie z podkatalogiem, w którym to wszystko chcę umieścić.
Midnight Commandera mam już zainstalowanego i znam ten program. Oczywiście, że mogę go do tej operacji użyć, jak i każdego innego menadżera plików. Mogę to też zrobić w środowisku graficznym. Ale chodzi mi konkretnie o polecenie mv tzn. jakiego użyć zapisu, aby uniknąć próby przeniesienia podkatalogu do siebie samego.
fnmirk
Senior Member
Posty: 8321
Rejestracja: 03 grudnia 2007, 06:37

Post autor: fnmirk »

Kod: Zaznacz cały

mv -v $HOME/katalog/*.* $HOME/katalog/podkatalog/
Więcej poniżej:
http://www.unix.com/pl/shell-programmin ... mmand.html
piter
Beginner
Posty: 128
Rejestracja: 09 lutego 2008, 12:45

Post autor: piter »

Dzięki fnmirk

Szczerze mówiąc myślałem, że jest jakiś prosty sposób na ominięcie tego komunikatu, ale analizując podanym przez Ciebie linku rozwiązania tego problemu dochodze do wniosku, że najlepiej jest po prostu zlekceważyć ten komunikat. I tak pliki zostają przenoszone do podkatalogu, więc główny cel zostaje osiągnięty.
ODPOWIEDZ