Here is a slightly optimized version of your code that should run a little bit faster and produce the output I think you're trying to get.
This was tested on Ubuntu running release 4.15.0-32-generic. Unfortunately, as noted by RudiC on this Ubuntu release, the stat utility only shows - for the birth time (aka struct stat crtime field) of a file and the ls utility has no option to print (or sort) on the creation timestamp of a file even if the underlying file system stores this data. I used the paste as RudiC suggested since it should be more efficient than the awk code I suggested in an earlier post in this thread. I didn't observe the mtime before crtime on any of the files I observed on Ubuntu, but that abnormality certainly could be created with a C or C++ program or using the touch utility.
If you want to switch to using mtime instead of crtime you could just use stat and make your loop much simpler as suggested before by using:
If you don't like the sub-seconds and the offset from GMT in the output that produces, those artifacts could very simply be removed if you go back to a slightly modified version of the awk code I suggested instead of using paste.
I moved the check for the filesystem out of the loop since all files in a directory are by definition in the same filesystem. And, we can get the inode numbers and the file names names from ls directly without needing to invoke ls a second time and invoking cut inside the loop to extract it. The two invocations of your function after its definition were used by me to verify the output I was getting. Feel free to replace that code with whatever else you were doing in your script.
If there's anything in this version of your function that you don't understand, ask and I'll try to explain it for you.
I hope this helps.
Last edited by Don Cragun; 03-14-2019 at 04:56 AM..
Reason: Add option using stat utility with mtime instead of the extra overhead needed to get the crtime.
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)
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)
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)
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)
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 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)
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)
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)
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)