看板 Linux 關於我們 聯絡資訊
dir=$(mktemp -d) #tmpdir pwd="$(pwd)" for f in *; do ln -s "$pwd"/"$f" $dir/$(stat -c %Y "$f"); done #檔名就是它的時間(解析度秒) find -L $dir -type f | sort -n | xargs cat >output rm -r $dir ※ 引述《wyvernlee (廢死不可!)》之銘言: : ※ 引述《yshihyu (yshihyu)》之銘言: : : 我有多個文件想要按文件日期由舊到新合併成一個檔案 : : 下面例子是按文件名稱1.txt ~ 1000.txt 合併 : : for ((i=1;i<1000;i++)) do cat $i.txt>>sum.txt done : : 請問如果要照上面方法有什麼辦法改成日期? : : 謝謝 : 如果是我我會用兩段式作法: : 1. ls -lt *.txt > 1.lst : 將檔案排序 : 2. vi 1.lst 將不必要的東西刪掉只留下檔案名稱,然後下: : :1,$s/^/cat /g : 再下 : :1,$s/$/>> sum.txt/g : 3. 接著離開 vi,執行 sh 1.lst 即可 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.245.32