Gå till innehåll
Just nu i M3-nätverket

N00b: Vad gör jag för fel med "mv"?


Anders Wallén

Rekommendera Poster

Anders Wallén

Hej på er!

 

Jag försöker flytta ett stort antal filer från en mapp till en annan, se mappstrukturen nedan:

 

Disk

-> A

-> B

-> C

 

Filerna ligger i C, men skall till B.

 

Jag försöker batchflytta filerna med hjälp av move (mv):

Försök 1:

cd Disk

mv C/*.zip A/B

ger felmeddelandet "för många argument". Jag försöker igen

 

Försök 2:

cd C

mv *.zip ../A/B

samma fel igen: för många argument

 

Att sätta målmappens adress inom accenter ( ' ) fungerar inte: katalogen hittas ej.

Att sätta källan inom accenter fungerar inte heller: hittar ej filen.

 

Vad gör jag för fel? I såväl försök 1 som 2 ger jag bara TVÅ argument ("*.zip" resp. "../A/B"), men datorn anser att det är TRE.

 

 

Tacksam för svar

Länk till kommentar
Dela på andra webbplatser

"Försök 2" är rätt förutsatt att du ställt dig i C

 

cd /Volumes/Disk (om nu disken heter "Disk")

cd C

mv *.zip ../A/B

Länk till kommentar
Dela på andra webbplatser

Jag testade

mv c/*.txt a/b

vilket fungerade bra hos mig textfilerna i c flyttades till b. Heter a, b och c just så eller har de några konstiga namn, åäö, mellanslag osv?

Länk till kommentar
Dela på andra webbplatser

Anders Wallén

Det finns ett mellanslag i målkatalogens namn. Jag skall ta bort det och försöka igen. Återkommer med resultatet.

Länk till kommentar
Dela på andra webbplatser

Om du har mellanslag i ett namn måste du lägga till enkla citattecken runt hela namnet eller backslash före varje mellanslag:

 

mv c/*.txt 'a/b b b' eller mv c/*.txt a/b\ b\ b

Länk till kommentar
Dela på andra webbplatser

Skriver du i terminalen och även har aktuell katalog öppen kan du dra och släppa mappen i terminalen, då slipper du skriva sökvägen för hand.

Länk till kommentar
Dela på andra webbplatser

Anders Wallén

När har jag provat. Tack för alla tipsen.

 

Det verkar som om alternativ 2 egentligen fungerade (var syntaktiskt korrekt), men att datorn råkade ut för någon sorts overflow; när jag delar upp jobbet i flera mindre fungerar de som de skall.

 

Filnamn med å,ä,ö krånglar dock. Hur gör man för att få Terminalen att acceptera sådana?

Länk till kommentar
Dela på andra webbplatser

Filnamn med å,ä,ö krånglar dock. Hur gör man för att få Terminalen att acceptera sådana?

Kika i inställningarna. "Encodings" och kryssa i de du vill ha. Du kan köra en rad i terminalen med:

# UTF-8 i Terminal
defaults write com.apple.terminal StringEncodings -array 4
Länk till kommentar
Dela på andra webbplatser

 

Kika i inställningarna. "Encodings" och kryssa i de du vill ha. Du kan köra en rad i terminalen med:

# UTF-8 i Terminal
defaults write com.apple.terminal StringEncodings -array 4

Är det fortfarande strul kan du ju zippa (eller tar eller motsv) först flytta och sen packa upp

Länk till kommentar
Dela på andra webbplatser

En annan variant för att komma runt problemet med för långa argument:

 

find /C/ -type f -maxdepth 1 -print0 | xargs -0 -I {} mv {} /A/B/

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.



×
×
  • Skapa nytt...