Изменение временных меток модификации с помощью касания со смещением времени для группы файлов

La expresión $?se evalúa como el código de salida del comando anterior.

&&es un separador de comandos que ejecutará el segundo comando si y solo si el primer comando devuelve un código de salida de cero.

[o testes una herramienta de shell para realizar varias pruebas comparativas.

Debo señalar que ==es la prueba incorrecta para usar aquí, ya que es para comparación de cadenas ; -eqes la prueba de igualdad para comparación numérica .

Entonces:[ $? -eq 1 ] && return 0mirará el código de salida del comando inmediatamente anterior y lo comparará con 1. Si hay una coincidencia, el comando return 0se ejecutará (evitando así lo que supongo que son comandos posteriores en la función en la que se encuentra esta prueba ).

La distinción entre el uso de ==y -eqes que [ 01 -eq 1 ]es verdadero mientras que [ 01 == 1 ]es falso.

0
26.09.2018, 05:28
1 ответ

Предполагается, что команда касания устанавливает фиксированное время.

вы можете использовать скрипт:

#!/bin/bash

# get current time
start=$(date +%s)
# or get time of the first file
start=$(stat -c %X "$1")

for file; do
  touch -d @$start "$file"
  # increment by 1 second
  start=$((start + 1)
  # or by 1 minute
  start=$((start + 60)
done

Вызовите скрипт со списком файлов, которые вы хотите изменить.

0
28.01.2020, 04:13

Теги

Похожие вопросы