[kwlug-disc] Reminder: bash's find has option -exec
Giles Malet
gdmalet at gmail.com
Wed Nov 12 16:56:28 EST 2025
On 12/11/2025 14:01, D. Hugh Redelmeier wrote:
> I think a "file's status" is just the inode.
The ctime changes when anything in the inode changes, which is
essentially the stuff returned by the stat(3) system call. On my system
that man pages gives the struct below. So changing the permissions
(chmod), hard linking a file to it, changing the owner, group, or the
size will change it. The latter presumably includes a modification time
change too.
Changing any file hard linked to the original will update all "files"
concerned, as they all share one inode, pointed to by each file's
directory entry.
Noticeably absent here is the file creation time.
g
struct stat {
dev_t st_dev; /* ID of device containing file */
ino_t st_ino; /* Inode number */
mode_t st_mode; /* File type and mode */
nlink_t st_nlink; /* Number of hard links */
uid_t st_uid; /* User ID of owner */
gid_t st_gid; /* Group ID of owner */
dev_t st_rdev; /* Device ID (if special file) */
off_t st_size; /* Total size, in bytes */
blksize_t st_blksize; /* Block size for filesystem I/O */
blkcnt_t st_blocks; /* Number of 512 B blocks allocated */
/* Since POSIX.1-2008, this structure supports nanosecond
precision for the following timestamp fields.
For the details before POSIX.1-2008, see VERSIONS. */
struct timespec st_atim; /* Time of last access */
struct timespec st_mtim; /* Time of last modification */
struct timespec st_ctim; /* Time of last status change */
#define st_atime st_atim.tv_sec /* Backward compatibility */
#define st_mtime st_mtim.tv_sec
#define st_ctime st_ctim.tv_sec
};
More information about the kwlug-disc
mailing list