Küsimus:
Kuidas hoida terminali kaudu kopeerimisel originaali "loodud kuupäeva"?
Adam
2015-08-10 11:20:45 UTC
view on stackexchange narkive permalink

Veebis on palju küsimusi, kuidas käske rsync ja cp panna faili kopeerima, säilitades samal ajal atribuudi "loodud kuupäev" sama, mis originaal kopeerimise ajast. Mõistan, et see on Maci lisatud teave ja see on eraldatud faili atribuudist metaandmed "loomise kuupäev". Igatahes, kui ma mängisin ringi koodiga rsync -a , tegi ta kõike, mida ma tahtsin, välja arvatud see, et nagu kõik veebis märgivad, muutis see "loodud kuupäeva" originaali asemel kopeerimise ajaks. Kasutades rsync ja cp , muutub see "inoodi muutmise" tõttu. Command-c command-v hoiab "loomise kuupäeva" kellaaega aga samana.

Siin on minu küsimus: kuidas Cmd - C Cmd - V hoiab loodud kuupäeva atribuudi koopias sama, kuid ükski terminali käsk ei anna seda tulemust? Kui Cmd - C Cmd - V saab hakkama, näib, et terminalis peab olema mingi käsk mis seda kordab?

Kust kontrollisite, kas kuupäevad muutuvad või jäävad samaks, kas Terminalis või Finderis?Nagu `stat -s`i abil saab hõlpsasti kontrollida, muudab isegi Cmd-C / Cmd-V` ctime` ja `ctime` teavet, siis milliseid ajatemplid soovite siin samaks jääda?
Kui XCode on installitud, tagastab Getfilinfo fail failiteabe.Vaadake lehte https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/GetFileInfo.1.html
'NIX-il pole atribuuti "kuupäeva loomine" (erinevalt Windowsist).`st_ctime` strukturaalses statis salvestab tegelikult viimase korra, kui inode muutus. OS X 64-bitisel on 'st_birthtimespec;/ * faili loomise aeg (sünd) * / `, kuid sellele juurdepääsemine pole lihtne.
Patrix: kas on võimalik iga tagastatud kuupäeva jaoks vaadata "stat -s " vormingus aaaa / kk / pp?Ja ma üritan saada Finderi "loodud" kuupäeva samaks.
Scott ja Milliways, aitäh, mul pole praegu palju aega, kontrollin teie vastuseid täna hiljem.
Kolm vastused:
Fábio Leal
2018-11-08 09:52:35 UTC
view on stackexchange narkive permalink

On palju põhjuseid, miks pigem kasutatakse RSynci kui cp-d. RSynci vaikeversioon MacOS-is on 2.6.9, mis on tänase seisuga üle 12 aasta vana ja millel on mitu teadaolevat viga ning see on üks neist. GPL3-ga seotud asjade tõttu ei hõlma Apple Mac OSX-i uute väljaannete värskendatud versioone.

Selle probleemi lahendamiseks toimige järgmiselt.

  1. Installige homebrew oma Mac-i, kui teil seda veel pole

    / usr / bin / ruby ​​-e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

  2. Paigaldage brewile saadaval olev uus rsynci versioon:

    brew install rsync

  3. Kinnitage, et teie rsynci versioon on vähemalt 3.1.3:

    fabiosl @ macpro ~ $ rsync --versioon

  4. Kopeerige oma failid, kasutades --times ja --crtimes

    rsync -times --crtimes / sourcingirectory / destinationdirectory

fd0
2015-08-10 18:58:00 UTC
view on stackexchange narkive permalink

Nagu öeldud, ei määratle POSIX "loomise kuupäeva" ja käsurea tööriistad kirjutatakse POSIX-i standarditele, kuid need võivad standardeid laiendada. Rsynci ja cp käitumine on see, mida oodatakse. Mõned failisüsteemid ja tuumad laiendavad standardeid ja hõlmavad sünniaega või btime'i.

Eeldades, et kopeerite faile samasse failisüsteemi, on OS X-is tööriistad, mis üritavad säilitada sünniaega ("loomise kuupäev"). Võite kasutada faile pax või hardlink ja loomise kuupäev säilib. Vähem usaldusväärsed tööriistad on ditto või cp koos võimalusega p (vähemalt minu süsteemis kahtlustan vead HFS + -is).

Kui soovite faile teise failisüsteemi kopeerida, peate rsynci kompileerima koos plaastritega failiflagid, crtimes, hfs-compression ja rsync saavad hakkama OS X metaandmetega ja säilitada algse faili sünniaja uues failis.

Ok, sul on õigus, kui kopeerite faile minu Maci ühest kohast teise, hoiab rsync "loomise kuupäeva" samana.Unustasin mainida, et kopeerin faile Macist Seagate'i kõvakettale.Siin hoiab command-c command-v "loodud kuupäeva" sama, kuid rsync -av mitte.
samh
2015-08-10 19:10:26 UTC
view on stackexchange narkive permalink

10.10.4 säilitatakse loodud aeg, kasutades cp -p / path / to / source / path / to / sihtkohta . Täpsemalt öeldes säilitatakse Finderis loomise kuupäev ja muudetud kuupäev , samal ajal kui lisamise kuupäev on kopeerimise aeg.



See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 3.0-litsentsi eest, mille all seda levitatakse.
Loading...