teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

追記

2016/10/06 04:57

投稿

otn
otn

スコア86363

answer CHANGED
@@ -41,4 +41,19 @@
41
41
  fi
42
42
  echo "$a"
43
43
  done
44
- ```
44
+ ```
45
+ #追記の2「順番入れ替え版」
46
+ %h(ディレクトリ名)を先頭に付加して、ソートキーにする。
47
+ 同じくファイル名に空白が含まれない前提。
48
+ ```Bash
49
+ find ~~ -printf "%h %M %2n %10s %TY-%Tm-%Td %TH:%TM %p\n" |
50
+ sort -t$'\t' -k1 |
51
+ while read a b
52
+ do if [ "$a" != "$last" ]
53
+ then echo
54
+ echo $a: 見出し
55
+ last="$a"
56
+ fi
57
+ echo "$b"
58
+ done
59
+ ```

1

追記

2016/10/06 04:56

投稿

otn
otn

スコア86363

answer CHANGED
@@ -25,4 +25,20 @@
25
25
  /foo/bar/ccc
26
26
  /foo/bar/ddd
27
27
  ```
28
- みたいになっちゃいますね。こういう風に 「/foo/bar: 見出し」が複数に別れるのを防止しようとすると、かなり面倒。
28
+ みたいになっちゃいますね。こういう風に 「/foo/bar: 見出し」が複数に別れるのを防止しようとすると、かなり面倒。
29
+
30
+
31
+ #追記
32
+ ファイル名の前に、属性などがある場合は、ファイル名に空白が含まれない前提で、
33
+ ```Bash
34
+ find ~~~ |
35
+ while read a
36
+ do dir=$(dirname "${a##* }")
37
+ if [ "$dir" != "$last" ]
38
+ then echo
39
+ echo $dir: 見出し
40
+ last="$dir"
41
+ fi
42
+ echo "$a"
43
+ done
44
+ ```