Nieuws:

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: verplaatsen bestanden naar hogere directory  (gelezen 1669 keer)

verplaatsen bestanden naar hogere directory
« Gepost op: 2021/09/28, 15:57:26 »
Ik heb op /home/marianne een reeks directories en bestanden staan, waaronder een directory kopie (/home/marianne/kopie) met overeenkomende directorynamen en aanvullende bestanden.
Ik wil deze directory kopie met bestanden verplaatsen naar de hogere directory en gebruik daarvoor het commando:
find . -maxdepth 1 -exec mv {} .. \;Dit commando geef ik vanuit de directory /home/marianne/kopie.
Ubuntu geeft dan echter de melding:
mv: cannot move './Afbeeldingen' to '../Afbeeldingen': Directory not empty
Hoe kan ik de bestanden uit /home/marianne/kopie toch verplaatsen naar /home/marianne? De bestanden uit kopie moeten dus worden TOEGEVOEGD aan /home/marianne.

Offline vanadium

  • Lid
Re: verplaatsen bestanden naar hogere directory
« Reactie #1 Gepost op: 2021/09/28, 22:00:30 »
Folders kan je niet verplaatsen als een andere folder met dezelfde naam al bestaat op die plaats. Ik vermoed dat een kopie van de bestanden in je /home/marianne/kopie directory naar de hoger gelegen folder volstaat voor dit scenario. Hierna wis je het origineel:

cp -r /home/marianne/kopie/* /home/marianne/
rm -rf /home/marianne/kopie


Offline bart85

  • Lid
Re: verplaatsen bestanden naar hogere directory
« Reactie #2 Gepost op: 2021/09/29, 09:27:36 »
Ik weet niet helemaal zeker maar je kunt aan mv de optie--force toevoegen.

cd /home/marianne/kopie
mv --force * ../

Nadeel van kopiëren en daarna de bron verwijderen is dat bij een grote map veel tijd nodig heeft. En op de /home partitie genoeg vrije ruimte moet hebben.
« Laatst bewerkt op: 2021/09/29, 10:43:16 door bart85 »
Je leert maar mooi over weg gaan met de commandline.
Linus: "I'm happy with the people who are wandering around looking at the stars but I am looking at the ground and I want to fix the pothole before I fall in."
I look to the clouds behind me and see the thunder coming.

Re: verplaatsen bestanden naar hogere directory
« Reactie #3 Gepost op: 2021/10/04, 14:13:32 »
Als ik dit commando toepas op de directory marianne, dan krijg ik ook de melding dat de directory niet leeg is...

Re: verplaatsen bestanden naar hogere directory
« Reactie #4 Gepost op: 2021/10/04, 15:41:44 »
Hallo, testje gedaan. Op m'n Bureaublad maak ik een mapje genaamd test. Daarin twee bestandjes 1 en 2 aangemaakt, plus twee mapjes map1 en map 2 die ik vul met 6 andere bestandjes. 

Als ik de hele map test naar m'n  Bureaublad wil kopiëren, dus één niveau hoger, doe ik
cp -r test/* .
Dat werkt en dat is precies dezelfde code als vanadium al aangaf. Op m'n Bureaublad staan nu twee bestandjes genaamd 1 en 2 en twee mapjes map1 en map2 met daarin de 6 andere bestandjes. Dat is wat je wilde volgens mij.

Overigens, als je een grote (vele GB's) actie gaat doen, is het ernstig af te raden om daar de mv-opdracht voor te gebruiken. Als tijdens die actie de stroom en dus mogelijk je pc uitvalt, loop je een heel groot risico dat zowel je bronmap als je doelmap beide leeg achterblijven... Daarom kopieer ik altijd en pas na een bytecontrole van de kopie (hoeveel bytes in bronmap en in doelmap?) gooi ik de bron met rm -rf weg.


Offline MKe

  • Lid
Re: verplaatsen bestanden naar hogere directory
« Reactie #5 Gepost op: 2021/10/07, 14:07:05 »
Beste zou zijn om rsync te gebruiken, die kijkt ook of een bestand nieuwer is dan wat er al staat en overschrijft niet als de versie in de doelmap nieuwer is dan de versie in de bronmap. Dat is veiliger denk ik.

Het commando is dan:
rsync -update -raz --progress /home/marianne/kopie/* /home/marianne/

Overigens is rsync vrijwel altijd het veiliger (zei het langzamere) alternatief voor cp.