Назад | Перейти на главную страницу

как я могу получить дату в UNIX-aix и сохранить каждую часть в переменной

Я пишу командный файл, и я хочу сравнить время модификации (timstap) с двумя папками и скопировать последний. Я не знаю, доступна ли эта опция в каталоге, потому что я не знаю. поэтому я хочу получить дату и сохранить каждую часть в variale, чтобы сравнить ее

Пример :-

получить дату date 11 5 2011 11:10:57

день = 11

месяц = ​​5

год = 2011

час = 11

мин = 10

secnd = 57

Баш предоставляет -nt оператор сравнения, который возвращает истину, если один файл новее другого. Вот сценарий, который иллюстрирует эту функциональность

#!/bin/bash

if [[ "$1" -nt "$2" ]]
then
    echo "$1 is newer than $2 - copying $1"
    #do something
else
    if [[ "$2" -nt "$1" ]]
        then
            echo "$2 is newer than $1 - copying $2"
            #do something
        else
            echo "$1 and $2 are the same time"
            #do nothing
        fi
fi

Может быть, опция -newer "find" может это сделать.

найти . -newer каталог -exec cp {} / new / location \;

П.Д. Я не говорю по английски

Чтобы установить компоненты datetime в переменные оболочки:

eval $(date "+day=%d month=%m year=%Y hour=%H min=%M secnd=%S")

Чтобы сравнить даты, Ответ Иана это путь.