alv*_*vas 4 unix sorting directory file cat
如何对目录中的所有文件执行排序?
我本可以在python中完成它,但似乎太麻烦了.
import os, glob
d = '/somedir/'
for f in glob.glob(d+"*"):
f2 = f+".tmp"
# unix~$ cat f | sort > f2; mv f2 f
os.system("cat "+f+" | sort > "+f2+"; mv "+f2+" "+f)
Run Code Online (Sandbox Code Playgroud)
dev*_*ull 16
使用find
和-exec
:
find /somedir -type f -exec sort -o {} {} \;
Run Code Online (Sandbox Code Playgroud)
要限制sort
目录本身中的文件,请使用-maxdepth
:
find /somedir -maxdepth 1 type f -exec sort -o {} {} \;
Run Code Online (Sandbox Code Playgroud)