Зберегти ctime за допомогою SCP


14

Як я можу скопіювати файл за допомогою SCP, зберігаючи ctime (час модифікації)?

У мене на папері Mac (ОС 10.8) папка, і результати ls -lі ls -lcтакі ж.

$ ls -l
total 0
drwxr-xr-x  9 elliott  staff  306 Mar 24 21:24 Day1b
$ ls -lc
total 0
drwxr-xr-x  9 elliott  staff  306 Mar 24 21:24 Day1b

Потім я копіюю його на віддалений сервер (Linux), -pщоб зберегти часові позначки.

$ scp -pr Day1b/ elliott@server.com:/

Тепер на віддаленому сервері ctime змінюється на поточну дату.

# ls -l
total 00
drwxr-xr-x  3 elliott elliott 4096 Mar 24 23:24 Day1b/
# ls -lc
total 0
drwxr-xr-x  3 elliott elliott 4096 Mar 28 14:08 Day1b/

Відповіді:


20

Час модифікації - mtime, а не ctime. scp -pвже зберігає mtime.

ctime - час зміни inode , оновлюється щоразу, коли будь-який спосіб торкається самого файлу - перейменовується, переміщується, chmodded тощо.

Як правило, немає можливості зберегти це, оскільки ОС не забезпечує жодної функції для цього, і навіть якщо це було, саме акт встановлення ctime був би зміною, яка призведе до того, що ctime буде оновлено знову.

Іншими словами, ls -lcмарна для більшості цілей, і про це не варто хвилюватися.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.