EngelsFransSpaans

Ad


OnWorks-favicon

mmv - Online in de cloud

Voer mmv uit in de gratis hostingprovider van OnWorks via Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

Dit is de opdracht mmv die kan worden uitgevoerd in de gratis hostingprovider van OnWorks met behulp van een van onze meerdere gratis online werkstations zoals Ubuntu Online, Fedora Online, Windows online emulator of MAC OS online emulator

PROGRAMMA:

NAAM


mmv - meerdere bestanden verplaatsen/kopiëren/toevoegen/koppelen met jokertekens

KORTE INHOUD


mmv [-m|x|r|c|o|a|l|s] [-h] [-d|p] [-g|t] [-v|n] [--] [oppompen van naar]

Voorbeelden


Alles hernoemen *.jpeg bestanden in de huidige map naar * .jpg:

mmv '*.jpeg' '#1.jpg'

Vervang het eerste voorkomen van abc Met xyz in alle bestanden in de huidige map:

mmv '*abc*' '#1xyz#2'

Hernoem bestanden die eindigen op .html.en, .html.de, enz. om te eindigen op .en.html, .de.html, enz. in
de huidige map:

mmv '*.html.??' '#1.#2#3.html'

Hernoem muziekbestanden van <track nee.> - - <lied titel>.ogg naar -
<track nee.> - <lied titel>.ogg in de huidige map:

mmv '* - * - *.ogg' '#2 - #1 - #3.ogg'

PRODUCTBESCHRIJVING


mmv verplaatst (of kopieert, voegt toe of koppelt, zoals gespecificeerd) elk bronbestand dat overeenkomt met een oppompen van
patroon naar de doelnaam die is opgegeven door het naar patroon. Deze meervoudige actie wordt uitgevoerd
veilig, dwz zonder onverwachte verwijdering van bestanden als gevolg van botsingen van doelnamen
met bestaande bestandsnamen of met andere doelnamen. Bovendien, voordat u iets doet,
mmv probeert eventuele fouten op te sporen die zouden voortvloeien uit de volledige reeks acties
gespecificeerd en geeft de gebruiker de keuze om door te gaan door het overtreden te vermijden
delen of afbreken. mmv ondersteunt wel grote bestanden (LFS) maar ondersteunt *NIET* sparse
bestanden (dwz het ontploft ze).

De taakopties

Of mmv verplaatsingen, kopieën, toevoegingen of koppelingen worden bepaald door de eerste reeks gegeven opties
boven. Als geen van deze is opgegeven, wordt de taak gegeven door de opdrachtnaam waaronder
mmv werd aangeroepen (argv[0]):

opdracht naam standaardtaak

mmv-x
mcp-c
gek - een
miljoen -l

De keuzes voor taakopties zijn:

-m: verplaats het bronbestand naar de doelnaam. Beide moeten op hetzelfde apparaat staan. Zal niet bewegen
mappen. Als het bronbestand een symbolische koppeling is, verplaatst u de koppeling zonder
controleren of het doel van de link vanuit de nieuwe directory anders is dan de oude.

-x: hetzelfde als -m, behalve dat verplaatsingen tussen verschillende apparaten worden gedaan door de bron te kopiëren en vervolgens te verwijderen.
Stelt bij het kopiëren de toestemmingsbits en de bestandswijzigingstijd van het doel in
bestand naar dat van het bronbestand.

-r : hernoem bronbestand of map naar doelnaam. De doelnaam mag geen a
pad: het bestand blijft in alle gevallen in dezelfde map. Deze optie is de enige
manier om mappen onder te hernoemen mmv.

-c: kopieer het bronbestand naar de doelnaam. Stelt de wijzigingstijd en toestemming voor het bestand in
bits van het doelbestand naar die van het bronbestand, ongeacht of de
doelbestand bestaat al. Kettingen en cycli (hieronder uitgelegd) zijn dat niet
toegestaan.

-o : doelnaam overschrijven met bronbestand. Als het doelbestand bestaat, wordt het overschreven,
behoud van de oorspronkelijke eigenaar en toestemmingsbits. Als het niet bestaat, is het er wel
gemaakt, met lees- en schrijfrechten ingesteld volgens umasker(1), en de uitvoering
machtigingsbits gekopieerd uit het bronbestand. In beide gevallen de bestandswijziging
tijd is ingesteld op de huidige tijd.

-a: voeg de inhoud van het bronbestand toe aan de doelnaam. De wijzigingstijd van het doelbestand is
ingesteld op de huidige tijd. Als het doelbestand niet bestaat, wordt het gemaakt met
toestemmingsbits ingesteld als onder -o. In tegenstelling tot alle andere opties, staat -a meerdere toe
bronbestanden dezelfde doelnaam hebben, bijv. "mmv -a \*.c big" voegt alles toe
".c" bestanden naar "groot". Kettingen en cycli zijn ook toegestaan, dus "mmv -aff" wel
verdubbel "f".

-l : doelnaam koppelen aan bronbestand. Beide moeten zich op hetzelfde apparaat en de bron bevinden
mag geen directory zijn. Kettingen en fietsen zijn niet toegestaan.

-s : hetzelfde als -l, maar gebruik symbolische links in plaats van harde links. Voor de resulterende link
om terug te richten op de bron, moet de naam van de bron beginnen met een '/', of de
target moet zich in de huidige of de bronmap bevinden. Als geen van deze
aan de voorwaarden is voldaan, wordt de link geweigerd. Bron en doel kunnen echter blijven bestaan
verschillende apparaten, en de bron kan een directory zijn.

Er mag slechts één van deze opties worden gegeven en deze is van toepassing op alle overeenkomende bestanden. Overig
opties hoeven niet apart te worden opgegeven, dwz "mmv -mk" is toegestaan.

Meerdere patroonparen / leespatronen van STDIN

meervoudig oppompen van -- naar patroonparen kunnen worden opgegeven door het patroonpaar weg te laten op de
opdrachtregel en voer ze in op de standaardinvoer, één paar per regel. (Als een patroon
paar wordt gegeven op de opdrachtregel, de standaardinvoer wordt niet gelezen.) Dus,

mmv
ab
CD

zou "a" hernoemen naar "b" en "c" naar "d". Als een bestand kan worden gekoppeld aan meerdere van de gegeven
oppompen van patronen, de naar patroon van het eerste overeenkomende paar wordt gebruikt. Dus,

mmv
ab
ac

zou de foutmelding "a -> c : no match" geven omdat bestand "a" (zelfs als het bestaat) was
al geëvenaard door het eerste patroonpaar.

WAARSCHUWING: Deze bedieningsmodus wel niet werken als de patronen zelf bevatten ruimten. Zien
http://bugs.debian.org/149873 voor meer info.

De Van Patronen

De oppompen van patroon is een bestandsnaam met ingesloten jokertekens: '*', '?', '['...']' en ';'. De
eerste drie hebben hun gebruikelijke sh(1) betekenissen van, respectievelijk, overeenkomen met een tekenreeks van
karakters, overeenkomend met een enkel karakter, en overeenkomend met een van een reeks karakters.

Tussen de '[' en ']' wordt een bereik van teken 'a' tot en met teken 'z' opgegeven
met "az". De set overeenkomende tekens kan worden genegeerd door een '^' in te voegen na de
'['. Dus "[^b-e2-5_]" komt overeen met elk teken behalve 'b' tot en met 'e', ​​'2' tot en met '5',
En '_'.

Merk op dat paden zijn toegestaan ​​in de patronen en dat er wildcards kunnen worden gebruikt
snijdt willekeurig. De ';' wildcard is handig voor het matchen van bestanden op elke diepte in het
directory boom. Het komt overeen met hetzelfde als "*/" dat een willekeurig aantal keren wordt herhaald, inclusief nul,
en kan alleen voorkomen aan het begin van het patroon of na een '/'. Dus ";*.c"
komt overeen met alle ".c"-bestanden in of onder de huidige map, terwijl "/;*.c" met hen overeenkomt
overal op het bestandssysteem.

Als het oppompen van patroon (of de naar patroon) begint met "~/", wordt de '~' vervangen
met de naam van de thuismap. (Merk op dat de "~user"-functie van csh(1) niet
geïmplementeerd.) De '~' wordt echter niet behandeld als een jokerteken, in die zin dat het dat niet is
een wildcard-index toegewezen (zie hieronder).

Omdat het matchen van een map onder een andere taakoptie dan -r of -s zou resulteren in een
fout, andere taken dan -r en -s komen alleen overeen met mappen die volledig expliciet zijn oppompen van
patronen (dwz zonder jokertekens). Onder -r en -s geldt dit alleen voor "." En
"....".

Bestanden die beginnen met '.' worden alleen tegen gespeeld oppompen van patronen die beginnen met een
expliciete '.'. Als echter -h is opgegeven, komen ze normaal overeen.

Waarschuwing: aangezien de shell normaal gesproken jokertekens uitbreidt voordat de opdrachtregel wordt doorgegeven
argumenten om mmv, is het meestal nodig om de opdrachtregel in te sluiten oppompen van en naar patronen
tussen aanhalingstekens.

De Naar Patronen

De naar patroon is een bestandsnaam met embedded wildcard indexen, waar een index uit bestaat
het teken '#' gevolgd door een reeks cijfers. Wanneer een bronbestand overeenkomt met een oppompen van
patroon, wordt een doelnaam voor het bestand opgebouwd uit de naar patroon door de te vervangen
jokertekenindexen door de daadwerkelijke tekens die overeenkomen met de jokertekens waarnaar wordt verwezen in de
bron naam. Dus als de oppompen van patroon is "abc*.*" en het naar patroon is dan "xyz#2.#1".
"abc.txt" is gericht op "xyztxt.". (De eerste '*' kwam overeen met "", en de tweede kwam overeen
"txt".) Evenzo is voor het patroonpaar ";*.[clp]" -> "#1#3/#2", "foo1/foo2/prog.c"
getarget op "foo1/foo2/c/prog". Merk op dat er geen '/' is na de "#1" in de naar
patroon, aangezien de tekenreeks overeenkomt met een ';' is altijd leeg of eindigt op een '/'. In
in dit geval komt het overeen met "foo1/foo2/".

Om de tekenreeks die overeenkomt met een jokerteken om te zetten in kleine letters of hoofdletters
door het in de doelnaam in te sluiten, voegt u respectievelijk 'l' of 'u' in tussen de '#' en de
reeks cijfers.

De naar patroon, zoals de oppompen van patroon, kan beginnen met een "~/" (zie hierboven). Dit doet niet
noodzaak om de naar patroon tussen aanhalingstekens op de opdrachtregel sinds csh(1) breidt uit
de '~' op precies dezelfde manier als mmv (of, in het geval van) sh(1), breidt het niet uit op
alle).

Voor alle taakopties behalve -r, als de doelnaam een ​​directory is, het echte doel
naam wordt gevormd door een '/' toe te voegen, gevolgd door het laatste onderdeel van de naam van het bronbestand.
Bijvoorbeeld, "mmv dir1/a dir2" zal, als "dir2" inderdaad een map is, daadwerkelijk worden verplaatst
"dir1/a" tot "dir2/a". Als "dir2/a" echter al bestaat en zelf een directory is, dan wordt this
wordt beschouwd als een fout.

Om elk teken (bijvoorbeeld '*', '?' of '#') te ontdoen van zijn speciale betekenis mmv, zoals toen de
werkelijke vervangende naam moet het teken '#' bevatten, voorafgaan aan het speciale teken met
a ´\' (en plaats het argument tussen aanhalingstekens vanwege de shell). Dit werkt ook naar
beëindig een jokertekenindex wanneer deze moet worden gevolgd door een cijfer in de bestandsnaam, bijv
"een #1\1".

Kettingen en cycli

Een ketting is een opeenvolging van gespecificeerde acties waar de doelnaam van één actie naar verwijst
het bronbestand van een andere actie. Bijvoorbeeld,

mmv
ab
bc

specificeert de ketting "a" -> "b" -> "c". Een cyclus is een ketting waar de laatste doelnaam op staat
verwijst terug naar het eerste bronbestand, bijv. "mmv aa". mmv detecteert kettingen en cycli
ongeacht de volgorde waarin hun samenstellende acties daadwerkelijk worden gegeven. Waar
toegestaan, dwz bij het verplaatsen, hernoemen en toevoegen van bestanden worden ketens en cycli afgehandeld
gracieus, door ze in de juiste volgorde uit te voeren. Cycli worden verbroken door eerst te hernoemen
een van de bestanden naar een tijdelijke naam (of onthoud gewoon de oorspronkelijke grootte wanneer u dit doet
voegt toe).

Botsingen en verwijderingen

Wanneer twee of meer overeenkomende bestanden zouden moeten worden verplaatst, gekopieerd of daaraan gekoppeld
doel bestandsnaam, mmv detecteert de toestand als een fout voordat er acties worden uitgevoerd.
Voorts mmv controleert of een van zijn acties zal resulteren in de vernietiging van bestaande
bestanden. Als de optie -d (verwijderen) is opgegeven, zijn alle verwijderde of overschreven bestanden voltooid
stil. Onder -p (beschermen) worden alle verwijderingen of overschrijvingen (behalve die gespecificeerd met
"(*)" op de standaard ingang, zie hieronder) worden behandeld als fouten. En als geen van beide opties is
opgegeven, wordt de gebruiker afzonderlijk ondervraagd over elke verwijdering of overschrijving. (Een nieuwe stroom
to "/dev/tty" wordt gebruikt voor alle interactieve zoekopdrachten, niet de standaardinvoer.)

foutafhandeling

Telkens wanneer een fout in de actiespecificaties van de gebruiker wordt gedetecteerd, wordt er een foutmelding weergegeven
gegeven op de standaarduitvoer, en mmv gaat verder met het controleren van de rest van de opgegeven acties.
Zodra alle fouten zijn gedetecteerd, mmv vraagt ​​de gebruiker of hij verder wil gaan
het vermijden van de foutieve acties of om helemaal af te breken. Dit en alle andere vragen kunnen zijn
vermeden door de optie -g (go) of -t (terminate) op te geven. Het vorige testament
los alle moeilijkheden op door de foutieve acties te vermijden; de laatste zal afbreken mmv if
eventuele fouten worden gedetecteerd. Specificeer een van beide standaardwaarden mmv naar -p, tenzij -d is
opgegeven (zie hierboven). Dus -g en -t zijn het handigst tijdens het uitvoeren mmv op de achtergrond
of in een shellscript, wanneer interactieve queries ongewenst zijn.

Rapporten

Zodra de uit te voeren acties zijn bepaald, mmv voert ze in stilte uit, tenzij een van beide
de optie -v (verbose) of -n (niet uitvoeren) is opgegeven. De voormalige oorzaken mmv rapporteren
elke uitgevoerde actie op de standaarduitvoer als

a -> b : klaar.

Hier zouden "a" en "b" worden vervangen door respectievelijk de bron- en doelnamen. Als de
actie verwijdert het oude doel, een "(*)" wordt ingevoegd na de naam van het doel. Ook de
"->" symbool wordt gewijzigd wanneer een cyclus moet worden doorbroken: de '>' wordt gewijzigd in een '^' op de
actie waarvoor het oude doel wordt hernoemd naar een tijdelijk doel en de '-' wordt gewijzigd in
een '=' op de actie waar de tijdelijke wordt gebruikt.

Onder -n worden geen van de acties uitgevoerd, maar worden berichten zoals hierboven afgedrukt
de standaarduitvoer met de ": klaar." overgeslagen.

De door -n gegenereerde uitvoer kan (eventueel na bewerking) worden teruggekoppeld mmv op de
standaard invoer (door het weglaten van de oppompen van -- naar paar op de mmv opdrachtregel). Vergemakkelijken
deze, mmv negeert regels op de standaardinvoer die eruitzien als een eigen fout en "klaar"
berichten, evenals alle regels die beginnen met witruimte, en accepteert patroonparen
met of zonder de tussenliggende "->" (of "-^", "=>" of "=^"). Regels met "(*)" achter de
doelpatroon hebben het effect dat -d alleen wordt ingeschakeld voor de bestanden die overeenkomen met dit patroon, dus
dat dergelijke verwijderingen in stilte gebeuren.

WAARSCHUWING: Dit betekent dat onverwacht spullen kan gebeuren als bestanden afgestemd op de patronen
bevatten ruimten. Zien http://bugs.debian.org/149873 voor meer info.

Bij het voeden mmv zijn eigen output, moet men onthouden om opnieuw de taakoptie te specificeren (if
any) oorspronkelijk gebruikt om het te genereren.

Hoewel mmv probeert alle ongelukken te voorspellen voordat specifieke acties worden uitgevoerd,
ongelukken kunnen gebeuren. Bijvoorbeeld, mmv controleert niet op voldoende vrije ruimte wanneer
kopiëren. Zo kan het ondanks alle inspanningen toch voorkomen dat een actie na enige tijd mislukt
anderen zijn al gedaan. Om het herstel zo gemakkelijk mogelijk te maken, mmv meldt welke
acties die al zijn uitgevoerd en die na een dergelijke storing nog moeten worden uitgevoerd
komt voor. Het wordt dan afgebroken en probeert niets anders te doen. Zodra de gebruiker is opgehelderd
het probleem, hij kan dit rapport terugkoppelen naar mmv op de standaard ingang om het compleet te hebben
de taak. (De gebruiker wordt gevraagd om een ​​bestandsnaam om dit rapport te dumpen als de standaarduitvoer
is niet omgeleid.)

EXIT STATUS


mmv verlaat met status 1 als het afbreekt voordat er iets wordt gedaan, met status 2 als het afbreekt
tot mislukken na het voltooien van enkele acties, en anders met status 0.

Gebruik mmv online met behulp van onworks.net-services


Gratis servers en werkstations

Windows- en Linux-apps downloaden

Linux-commando's

Ad