[Cialug] List file types in a directory

Daniel Juliano dan at danandlaurajuliano.com
Fri Mar 9 16:02:58 CST 2007


Thanks all who replied, awesome answers!  If I had to rate a winner, I 
give it to Tim, as my usage looks like:

ls -1 -R /home/djuliano | awk -F'.' '{print $NF}' | sort | uniq

And his output is perfect for what I want.  The next question would be 
how to get counts by file type.

I'm going to read up on awk, as I've always read it's a language unto 
itself.  Something about sed being part of the mix usually, dunno how 
the two interact.

Dan


Daniel A. Ramaley wrote:
> Like this?
>
> $ ls | perl -ne 'print "$1\n" if /\.([^.]*?)$/;'
>
> That prints the file extension for files that have one. For files that 
> don't have an extension, nothing is printed.
>
> On Thursday 08 March 2007 16:39, Kendall Bailey wrote:
>   
>> Not simple enough for a single command line, but here's a python
>> script which will play the role of awk in the pipeline shown
>>
>> import sys,re
>> for i in sys.stdin :
>>   if re.match(".*\.([^.])+",i.strip()) : print
>> i.strip().split(".")[-1]
>>
>> I'm sure it would be a one liner in perl...
>>
>> On 3/8/07, David Champion <dchampion at visionary.com> wrote:
>>     
>>> Both of those methods will display files with no periods, i.e. put a
>>> file in there called "test" and it will echo out "test".
>>>
>>> -dc
>>>
>>> Tim Wilson wrote:
>>>       
>>>> ls -1 | awk -F'.' '{print $NF}' | sort | uniq
>>>> or sort -u instead of sort | uniq
>>>>
>>>> I use awk because you could have foo.bar.jpg.  Using NF in awk
>>>> will guarantee you'll get jpg.
>>>>
>>>> On 3/8/07, Chris Freeman <cwfreeman at gmail.com> wrote:
>>>>         
>>>>> Assuming only one '.' per filename:
>>>>>
>>>>> ls -1 | cut -f2 -d. | sort -u
>>>>>
>>>>> Chris
>>>>>
>>>>> On 3/8/07, Daniel Juliano < dan at danandlaurajuliano.com> wrote:
>>>>>           
>>>>>> So, how would I get a list of file types for all files in a
>>>>>> directory? Let's say I've got the following:
>>>>>> test1.txt
>>>>>> test2.txt
>>>>>> test3.jpg
>>>>>>
>>>>>> I'd like something similar to:
>>>>>> .txt
>>>>>> .jpg
>>>>>>
>>>>>> Any ideas?
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Cialug mailing list
>>>>>> Cialug at cialug.org
>>>>>> http://cialug.org/mailman/listinfo/cialug
>>>>>>             
>>>>> _______________________________________________
>>>>> Cialug mailing list
>>>>> Cialug at cialug.org
>>>>> http://cialug.org/mailman/listinfo/cialug
>>>>>           
>>> _______________________________________________
>>> Cialug mailing list
>>> Cialug at cialug.org
>>> http://cialug.org/mailman/listinfo/cialug
>>>       
>> _______________________________________________
>> Cialug mailing list
>> Cialug at cialug.org
>> http://cialug.org/mailman/listinfo/cialug
>>     
>
>   

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cialug.org/pipermail/cialug/attachments/20070309/e2e1aab8/attachment.html


More information about the Cialug mailing list