回答編集履歴

3

uniq使わないパターン

2020/05/26 14:17

投稿

x98000
x98000

スコア1096

test CHANGED
@@ -21,3 +21,15 @@
21
21
  ```
22
22
 
23
23
  これでどうでしょうか。
24
+
25
+ ### 追記)uniqを使わない場合
26
+
27
+ awkだけで無理やりやるとこんな感じです。(xargsはhidezzzさんのアドバイスより)
28
+
29
+ ```bash
30
+
31
+ ls -l | awk 'NR==1{h=substr($0, 0, 15);print} NR!=1 && substr($0, 0, 15)!=h{h=substr($0, 0, 15);print}' | xargs -I@ cp @ destdir
32
+
33
+
34
+
35
+ ```

2

修正

2020/05/26 14:17

投稿

x98000
x98000

スコア1096

test CHANGED
@@ -16,7 +16,7 @@
16
16
 
17
17
  ```bash
18
18
 
19
- ls -1 | awk '{print substr($0, 15) " " substr($0, 0, 15)}'|uniq -f 1|awk '{print $2 $1}'
19
+ ls -1 | awk '{print substr($0, 15) " " substr($0, 0, 15)}'|uniq -f 1|awk '{print $2 $1}' | xargs cp -t destdir
20
20
 
21
21
  ```
22
22
 

1

Mac対応

2020/05/26 07:54

投稿

x98000
x98000

スコア1096

test CHANGED
@@ -7,3 +7,17 @@
7
7
  ```
8
8
 
9
9
  -w 14 は文字コード依存ですね。
10
+
11
+ ### 追記)uniqに -w が無い場合
12
+
13
+ Macのuniqには -w が無いそうで…
14
+
15
+ かなり無理矢理ですが…
16
+
17
+ ```bash
18
+
19
+ ls -1 | awk '{print substr($0, 15) " " substr($0, 0, 15)}'|uniq -f 1|awk '{print $2 $1}'
20
+
21
+ ```
22
+
23
+ これでどうでしょうか。