Я хотел бы, чтобы файл bat нашел определенный файл в каталоге и обновил временную метку, чтобы быть текущим и/или синхронизироваться со временем активации файла bat.bat файл для изменения метки времени файла
ответ
Вы можете использовать touch (уже предложено в комментарии Jubjub Bandersnatch в):
Изменение modification time
из всех файлов TXT в теперь:
touch -m *.txt
Usage: touch [OPTION]... FILE... Update the access and modification times of each FILE to the current time. -a change only the access time -c do not create any files -d, --date=STRING parse STRING and use it instead of current time -f (ignored) -m change only the modification time -r, --reference=FILE use this file's times instead of current time -t STAMP use MMDDhhmm[[CC]YY][.ss] instead of current time --time=WORD access -a, atime -a, mtime -m, modify -m, use -a --help display this help and exit --version output version information and exit STAMP may be used without -t if none of -drt, nor --, are used.
Спасибо всем за помощь. Без установки программного обеспечения третьей части я добавил «copy copytest.txt ,, +» в файл bat и поместил его в соответствующую папку и создал ярлык для рабочего стола. Спасибо еще раз за помощь. –
Вам не нужно используйте «touch.exe», чтобы выполнить это. Простой сценарий, подобный этому, будет выглядеть так:
@echo off
ECHO Test1:
SET FILENAME=test.xml
copy /b %FILENAME% +,,
dir %FILENAME%
timeout 64
ECHO Test2:
copy /b %FILENAME%,,+
dir %FILENAME%
pause
Это доказывает, что есть два разных способа сделать это синтаксически.
Я закончил с использованием:
copy Certain.config,,+
TIMEOUT 2
net stop Certain_Services
TIMEOUT 1
net start Certain_Services
будет обновлять измененную дату, остановить и перезапустить службы.
используя 'copy file ,, +' без '/ b' переключатель не очень разумно, я думаю ... – npocmaka
Вы хотите изменить время изменения файла? [touch] (http://unxutils.sourceforge.net/) может это сделать. Вы должны были бы поместить его в какой-то скрипт или цикл FOR, но прикосновение сделает сложную часть. – mojo