Avatar billede hotsupport Nybegynder
15. september 2006 - 11:52 Der er 4 kommentarer og
1 løsning

Læse ctime fra en fil i et bash shellscript

Jeg er ved at bygge et shellscript i bash (skal køre under Solaris 9.04).
Jeg har brug for at læse ctime (den timestamp der afspejler seneste ændring i filens indhold), putte denne i en shell variable, og derefter med touch -t putte denne timestamp på en anden fil.
Jeg har allerede variabler med stien til original og ny fil, men kan ikke finde ud af at indlæse ctime i en shellvariabel...
Avatar billede arne_v Ekspert
16. september 2006 - 04:55 #1
Kan du ikke bare bruge touch -r til det ?
Avatar billede hotsupport Nybegynder
16. september 2006 - 12:13 #2
Ih jo,

dog med -c for ctim (og for ikke at oprette filen, hvis den ikke findes i forvejen)

Tak
Avatar billede hotsupport Nybegynder
16. september 2006 - 12:19 #3
... men jeg vil også bruge den omtalte timestamp in en logfil over udførte ændringer.
Så skal jeg vel indlæse den i en shellvariabel, for at kunne skrive den i en logfil...?
Avatar billede skau Nybegynder
02. oktober 2006 - 12:55 #4
ls -cl viser ctime, du kan bruge det i et script således:
filen du vil kigge på siger vi hedder test.fil
script:

#!/bin/ksh
CTIME=`ls -lc test.fil |awk '{ print $6"."$7"."$8 }'
echo $CTIME
Avatar billede skau Nybegynder
02. oktober 2006 - 12:59 #5
eller som du spør om sætte dato på en anden fil (enAnden.fil)


#!/bin/ksh
CTIME=`ls -lc test.fil |awk '{ print $8$6$7 }'
touch -t $CTIME enAnden.fil
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester