如何对目录中的所有csv文件进行排序

时间:2013-08-26 11:52:14

标签: bash

我的目录里面有csv文件。 例如:

Dir A-> dir1-> .csv        dir2-> 的.csv 我希望根据4列对所有csv文件进行排序,但是如何将dir A中的所有目录丢弃。

谢谢

1 个答案:

答案 0 :(得分:1)

我理解,您希望特定目录下的所有csv文件都根据其第4列进行排序,

您正在寻找 RECURSIVELY

这个词

我假设您的csv文件如下所示,您正在尝试根据第4列进行排序

1,apple,red,2765
2,mango,green,100
3,pineapple,yellow,900

如果所有csv文件的父目录都是“/ home / think / csvs”,那么尝试下面的内容,

 # setting the path of the parent directory 
 path="/home/think/csvs"  
 # finding all the .csv files under path  
 for i in `find $path -type f -name '*.csv'` 
 do
    # sorting based on 4th columns(k4) by using comma(,) as the field separator
    sort -t"," -k4 $i 
 done

未经测试,但它会是这样的。