Как выполнить поиск в командной строке для дублирования загрузок в папке загрузок?

Попробуйте sudo apt-get install linux-rt

Изменить: ранее добавьте ppa в другой ответ и попробуйте: sudo apt-get install linux-realtime

1
задан 21 April 2017 в 03:58

6 ответов

Я думаю, что это то, что вы ищете:

for f in ~/Downloads/*; do
    if [[ $f == *\([1-9]\).* ]]; then
        echo "$f"
    fi
done
Edit: @steeldriver отметил, что globs может сделать выше, поэтому более простым решением является следующее:
printf '%s\n' ~/Downloads/*\([1-9]\).*
[!d1 ]

Я предпочитаю простой Bash, но вы можете сделать это в одной строке, используя find:

find ~/Downloads/ -name '*\([1-9]\).*'
2
ответ дан 22 May 2018 в 23:23
  • 1
    Удивительное спасибо, что работает! Вы случайно знаете команду find, чтобы сделать это? Сначала я пытался просить здесь сделать это в find, но не мог понять. – blockysquirtle 21 April 2017 в 05:03
  • 2
    Для одной цифры регулярное выражение предлагает преимущество перед простым глобусом (echo ~/Downloads/*\([1-9]\).* или find ~/Downloads -name '*\([1-9]\).*')? – steeldriver 21 April 2017 в 07:08
  • 3
    @steeldriver Ничего себе, это путь более плавный! Я отведу их в свой ответ, спасибо! – wjandrea 21 April 2017 в 07:42

Я думаю, что это то, что вы ищете:

for f in ~/Downloads/*; do if [[ $f == *\([1-9]\).* ]]; then echo "$f" fi done Edit: @steeldriver отметил, что globs может сделать выше, поэтому более простым решением является следующее: printf '%s\n' ~/Downloads/*\([1-9]\).*

Я предпочитаю простой Bash, но вы можете сделать это в одной строке, используя find:

find ~/Downloads/ -name '*\([1-9]\).*'
2
ответ дан 18 July 2018 в 14:34

Я думаю, что это то, что вы ищете:

for f in ~/Downloads/*; do if [[ $f == *\([1-9]\).* ]]; then echo "$f" fi done Edit: @steeldriver отметил, что globs может сделать выше, поэтому более простым решением является следующее: printf '%s\n' ~/Downloads/*\([1-9]\).*

Я предпочитаю простой Bash, но вы можете сделать это в одной строке, используя find:

find ~/Downloads/ -name '*\([1-9]\).*'
2
ответ дан 24 July 2018 в 20:25

В качестве альтернативы мы можем рассчитать контрольные суммы и распечатать дубликаты (это не зависит от соглашений о дублировании имен файлов).

md5sum ~/Download/*.mp3 | awk 'a[$1]{print $2 }{ a[$1]=$2}'
1
ответ дан 22 May 2018 в 23:23

В качестве альтернативы мы можем рассчитать контрольные суммы и распечатать дубликаты (это не зависит от соглашений о дублировании имен файлов).

md5sum ~/Download/*.mp3 | awk 'a[$1]{print $2 }{ a[$1]=$2}'
1
ответ дан 18 July 2018 в 14:34

В качестве альтернативы мы можем рассчитать контрольные суммы и распечатать дубликаты (это не зависит от соглашений о дублировании имен файлов).

md5sum ~/Download/*.mp3 | awk 'a[$1]{print $2 }{ a[$1]=$2}'
1
ответ дан 24 July 2018 в 20:25

Другие вопросы по тегам:

Похожие вопросы: