[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
chmod stat atime ctime mtime
From: |
Jorge Barros de Abreu |
Subject: |
chmod stat atime ctime mtime |
Date: |
Sun, 4 Dec 2011 18:22:50 -0200 |
User-agent: |
KMail/1.13.6 (Linux/2.6.37.6; KDE/4.5.5; x86_64; ; ) |
Olá.
Usei meu computador com a data no futuro sem perceber por três dias.
Tenho que reajustar ctime, atime e mtime dos arquivos usados nesse periodo.
Tenho um arquivo no seguinte formato genérico
/diretorio/arquivo1 atime
/diretorio/arquivo2 ctime
/diretorio/arquivo3 mtime
....
/diretorio/arquivon ..........
-não posso prever o valor de diretorio
-cada arquivo aparece somente uma vez
-a ordem de ctime, mtime, atime é aleatória
-o conteúdo de cada arquivo deve permanecer rigonorosamente igual ao que era
antes de rodar o script
A minha dúvida é:
? o que coloco no lugar das ?????? abaixo uma vez que não posso escrever no
arquivo?
Em outras palavras:
?como posso ajustar, via shell, a data de mudança de conteúdo do arquivo sem
mudar o conteúdo do
referido arquivo?
Obrigado.
#!/bin/bash
#-------------------------
#atime | ctime | mtime
#----------|------------|--------
#ls -lu | ls -lc | ls -l
#----------|------------|--------
#access | change | modify
#arquivo| inode | arquivo
#-----------|-----------|--------
#cat | chmod | echo
#--------------------------
oFS=$IFS
IFS=';'
for i in `cat y | tr '\n' ';'`
do
IFS=' '
ARQUIVO=`echo $i | cut -d' ' -f1` #pode ser um nome de diretorio
OCTAL=`stat -c '%a' $ARQUIVO 2>/dev/null`
PARAMETRO=`echo $i | cut -d' ' -f2`
#echo $PARAMETRO
if [[ $PARAMETRO == "atime" ]]
then
#cat $ARQUIVO > /dev/null
echo "atime"
fi
if [[ $PARAMETRO == "ctime" ]]
then
#chmod $OCTAL $ARQUIVO
echo "ctime"
fi
if [[ $PARAMETRO == "mtime" ]]
then
#??????
echo "mtime"
fi
IFS=';'
done
IFS=$oFS
exit
--
Data Estelar 2455900,061875
http://sites.google.com/site/ficmatinf
Desejo-lhe Paz, Vida Longa e Prosperidade.
São Bem Vindas Mensagens no Formato texto UTF-8 com Acentos.
- chmod stat atime ctime mtime,
Jorge Barros de Abreu <=