List all files and directories in the current directory separated by commas and sorted by crtime
What I know so far: ls -A will list all files except those starting with a dot ls -d will list all directories ls -m will separate contents by commas
For getting crtimes use:
stat filename will give me the inode number
or ls -i filename will give me the inode number
will give me the root partition
Then I can use:
to get the crtime
I need to know how to tie all of this together.
Moderator's Comments:
Please wrap your codes/samples in CODE and ICODE TAGS, as per forum rules.
Last edited by RavinderSingh13; 03-04-2019 at 08:26 AM..
option -c in the ls command sorts files by the time of their last modification, but if this is a directory, then this is the time of the last modification of files in it.
option -c in the ls command sorts files by the time of their last modification, but if this is a directory, then this is the time of the last modification of files in it.
Hi nezabudka,
For file systems that keep track of it, "crtime" refers to the time at which a file was created.
The last modification time (sometimes just called "mtime") of a directory is usually the time that the directory was created, the last time a link to a file was created in that directory, or the last time a link to a file was removed from that directory, whichever occurred most recently. But, of course, it can also be set to an arbitrary time at least by the C language futimens( ), utimensat( ), and utimes() functions. Changing the size of an already existing file in a directory does not change the modification time of any directory that contains that file.
Note that if a file has multiple hard links (not symlinks), that single file can exist in more than one directory.
This User Gave Thanks to Don Cragun For This Post:
I won't address all points because i am a bit short on time today. It suffices for addressing one point, though:
Quote:
Originally Posted by chstewar
ls -d will list all directories
No. What -d does is it will not follow a directory. That means if you use a wildcard (or, more precisely, a "file glob") like this:
The shell will - prior to calling ls - expand the glob into a list of filesystem items matching this name. filesystem items can be all sorts of things but we are here interested only in files and directories. So, lets say for example that there are three such items, fooA, fooB and fooC. If these are all files the output would simply be:
So far, so good. But what happens if one of these is a directory? In this case the directory would be followed, which means all the files in this directory would be displayed too, i.e.
Notice that this is not the fault of the shell: the shell still generates only the list of the three filenames but ls, when it sees the name of a directory, will list the files in that directory. In this case obviously fooB and fooC must be directories. This makes sense because when you enter
You usually want to see what is in that directory, not just the directory name itself. But sometimes one would not want that and this is why -d exists. It will make the ls NOT follow the directories and display their files but only there names as if they would be normal files.
I have been able to make some progress on the problem. I found a partial solution, but I can't
post the links yet.
Here is the code:
I made a change to the printf statement to:
With this change I get a comma separated list of crtime (creation time) and names of the files
in the current directory.
The problem with this is that the files are not sorted by crtime.
I found code that solved the sort problem, but I don't know how to change the printf statements to get a comma separted list of crtime and name:
Here is the code I found:
The second program sorts by crtime, but I don't know enough about
Bash programming to figure out how to get i displayed as a comma separated list.
If anyone understands this code and has the time to explain it line by line, I believe it
will help me as well as the community.
Hmm I clearly must be missing something. Late to the party again...
stat command will do what you want without sudo.
%w is the human readable format for crtime
%W is the format for epoch seconds for crtime -- which you use for sorting.
So, this may be what you want: get three fields, sort by field one (crtime), print readable crtime and file name with comma separated data. Change the awk printf to what you want. Seemed a bit confusing to me.
Hi All,
I have a list of words (these are actually a list of database table names separated by comma).
Now, I want to find only the non-existing list of words in the *.java files of current directory and/or its sub-directories.
Sample list of words:... (8 Replies)
Find all files in the current directory only excluding hidden directories and files.
For the below command, though it's not deleting hidden files.. it is traversing through the hidden directories and listing normal which should be avoided.
`find . \( ! -name ".*" -prune \) -mtime +${n_days}... (7 Replies)
It is for HP-Unix B.11.31.
Requirement:
1. List the directories, having given pattern in the directories name, sorted by creation date.
Example: Directories with name "pkg32*" or "pkg33*"
2. On the output of 1. list the directories by creation date as sort order, with creation date... (2 Replies)
Hi,
I have to find specific files only in the current directory...not in the sub directories.
But when I use Find command ... it searches all the files in the current directory as well as in the subdirectories. I am using AIX-UNIX machine.Please help..
I am using the below command. And i am... (2 Replies)
Can anyone come up with a unix command that lists
all the files, directories and sub-directories in the current directory
except a folder called log.?
Thank you in advance. (7 Replies)
Hi,
I need to find the list of matching direcories in current folder only and no subfolders on AIX.I tried -maxdepth option but its not working.
Also, tried ls -d option to list the matching directories but getting argument list too long...
So, any help would be appreciated. (6 Replies)
i am trying to write a program, that will list .txt files and .png files.
it will ask the user what type of files do they want to list! so if the user inputs txt files.. how would you list all the .txt files in the current directory (the directory the program is running)!!
thanks (1 Reply)
Hello,
Using the instruction mget (within ftp) and with "Interactive mode off", I want to get all files from directory (DirAA), but not the files in sub-directories.
The files names don't follow any defined rule, so they can be just letters without (.) period
Directory structure example: ... (0 Replies)
Hi All
I was wondering what is the most efficient way to find files in the current directory(that may contain 100,000's files), that meets a certain specified file type and of a certain age.
I have experimented with the find command in unix but it also searches all sub directories. I have... (2 Replies)