環境:bash,catalina
Apple-no-MacBook-Pro-3:movieGDRIVE apple$ ls -1 cham-arayaminami-high 2020年02月24日01時02分.jpg 2020年02月24日12時02分.jpg 2020年02月25日01時02分.jpg 2020年02月25日12時02分.jpg 2020年02月26日01時02分.jpg 2020年02月26日12時02分.jpg
上記のようなファイル群があるのですが、2020年02月24日なら2020年02月24日12時02分.jpg1枚のみに間引きたいです。検索してもそれらしいものがヒットしませんでした。
ご教授いただけると嬉しいです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/25 15:14
回答1件
0
ベストアンサー
もっと美しい書き方がありそうですが
bash
1ls -1 | uniq -w 14 | xargs cp -t destdir
-w 14 は文字コード依存ですね。
追記)uniqに -w が無い場合
Macのuniqには -w が無いそうで…
かなり無理矢理ですが…
bash
1ls -1 | awk '{print substr($0, 15) " " substr($0, 0, 15)}'|uniq -f 1|awk '{print $2 $1}' | xargs cp -t destdir
これでどうでしょうか。
追記)uniqを使わない場合
awkだけで無理やりやるとこんな感じです。(xargsはhidezzzさんのアドバイスより)
bash
1ls -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 2
投稿2020/05/25 22:27
編集2020/05/26 14:17総合スコア1096
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/26 05:24
2020/05/26 06:59
2020/05/26 07:45
2020/05/26 12:20
2020/05/26 12:21
2020/05/26 13:01
2020/05/26 13:25
2020/05/26 13:27
2020/05/26 13:32
2020/05/26 14:29
2020/05/26 14:41
2020/05/26 14:50
2020/05/26 15:08
2020/05/26 15:09
2020/05/26 15:11
2020/05/26 15:40
2020/05/26 15:42
2020/05/27 00:38
2020/05/27 00:42
2020/05/27 02:12
2020/05/27 06:47
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。