I forgot to ask. Can I add something to your now-working line
stat -f '%SN,%SB,%Sm' * > file_times.txt
to reformat date and time? Either within the -f format description or piping it to something else?
On the internet I found this, supposedly to simply reformat date and
time, for everything, during a session:
set timefmt "%Y-%m-%d %H:%M:%S"
But it doesn't seem to be working either. I execute it, then do "date"
or "ls -l" or whatever ... and the date and time are still displayed in
the same format as ever.
Thanks in advance.
On 2024-05-03, Dudley Brooks <dbrooks@runforyourlife.org> wrote:--
I forgot to ask. Can I add something to your now-working line
stat -f '%SN,%SB,%Sm' * > file_times.txt
to reformat date and time? Either within the -f format description or
piping it to something else?
On the internet I found this, supposedly to simply reformat date and
time, for everything, during a session:
set timefmt "%Y-%m-%d %H:%M:%S"
But it doesn't seem to be working either. I execute it, then do "date"
or "ls -l" or whatever ... and the date and time are still displayed in
the same format as ever.
Thanks in advance.
Create a plain text file named "lister.sh" with these contents:
#!/usr/bin/env bash
for file in ./*; do
filename=`basename "$file"`
created=`stat -f '%SB' "$filename"`
modified=`stat -f '%Sm' "$filename"`
created_s=`date -j -f "%b %d %H:%M:%S %Y" "$created" "+%F %H:%M:%S"`
modified_s=`date -j -f "%b %d %H:%M:%S %Y" "$modified" "+%F %H:%M:%S"`
echo "$filename,$created_s,$modified_s"
done
Make the script executable with this command in the same directory as
the script:
chmod +x lister.sh
Run the script in a terminal window like so:
./lister.sh > file_times.csv
On 5/4/24 1:43 PM, Jolly Roger wrote:
On 2024-05-03, Dudley Brooks <dbrooks@runforyourlife.org> wrote:
I forgot to ask. Can I add something to your now-working line
stat -f '%SN,%SB,%Sm' * > file_times.txt
to reformat date and time? Either within the -f format description or
piping it to something else?
On the internet I found this, supposedly to simply reformat date and
time, for everything, during a session:
set timefmt "%Y-%m-%d %H:%M:%S"
But it doesn't seem to be working either. I execute it, then do "date"
or "ls -l" or whatever ... and the date and time are still displayed in
the same format as ever.
Thanks in advance.
Create a plain text file named "lister.sh" with these contents:
#!/usr/bin/env bash
for file in ./*; do
filename=`basename "$file"`
created=`stat -f '%SB' "$filename"`
modified=`stat -f '%Sm' "$filename"`
created_s=`date -j -f "%b %d %H:%M:%S %Y" "$created" "+%F %H:%M:%S"`
modified_s=`date -j -f "%b %d %H:%M:%S %Y" "$modified" "+%F %H:%M:%S"`
echo "$filename,$created_s,$modified_s"
done
Make the script executable with this command in the same directory as
the script:
chmod +x lister.sh
Run the script in a terminal window like so:
./lister.sh > file_times.csv
As I mentioned in another thread (in another ng, actually, comp.sys.mac.apps) I didn't have time to try your suggestion until quite recently, and didn't have time to thank you until just now.
It worked perfectly! And it's clear enough that I can modify it myself
to do another couple of minor things I might want to do.
Thanks!
Sysop: | DaiTengu |
---|---|
Location: | Appleton, WI |
Users: | 991 |
Nodes: | 10 (1 / 9) |
Uptime: | 76:58:09 |
Calls: | 12,949 |
Calls today: | 3 |
Files: | 186,574 |
Messages: | 3,264,583 |