Использование locate для поиска каталога

У меня была такая же проблема / конфиг, набрав

synclient TouchpadOff = 0

в терминале, разрешив его.

20
задан 28 November 2010 в 02:49

44 ответа

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 26 May 2018 в 00:13

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 25 July 2018 в 22:50

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 27 July 2018 в 00:43

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 31 July 2018 в 10:35

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 31 July 2018 в 11:38

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

locate foldername | grep /foldername$
12
ответ дан 2 August 2018 в 04:14

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

  locate foldername |  grep / foldername $  
12
ответ дан 4 August 2018 в 20:18

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

  locate foldername |  grep / foldername $  
12
ответ дан 6 August 2018 в 04:18

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

  locate foldername |  grep / foldername $  
12
ответ дан 7 August 2018 в 22:23

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

  locate foldername |  grep / foldername $  
12
ответ дан 10 August 2018 в 10:33

Способ (я подозреваю, что может быть лучший способ) использовать grep для возврата только тех путей, которые заканчиваются в имени вашей папки:

  locate foldername |  grep / foldername $  
12
ответ дан 13 August 2018 в 17:01

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 26 May 2018 в 00:13
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 26 May 2018 в 00:13
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () {
    locate "$*" | while read line
    do 
    if [ -d "$line" ] ; then echo $line ; fi
    done
}

locatedir $*
2
ответ дан 26 May 2018 в 00:13
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 25 July 2018 в 22:50
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () { locate "$*" | while read line do if [ -d "$line" ] ; then echo $line ; fi done } locatedir $*
2
ответ дан 25 July 2018 в 22:50
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 25 July 2018 в 22:50
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 27 July 2018 в 00:43
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () { locate "$*" | while read line do if [ -d "$line" ] ; then echo $line ; fi done } locatedir $*
2
ответ дан 27 July 2018 в 00:43
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 27 July 2018 в 00:43
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 31 July 2018 в 10:35
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () { locate "$*" | while read line do if [ -d "$line" ] ; then echo $line ; fi done } locatedir $*
2
ответ дан 31 July 2018 в 10:35
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 31 July 2018 в 10:35
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 31 July 2018 в 11:38
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () { locate "$*" | while read line do if [ -d "$line" ] ; then echo $line ; fi done } locatedir $*
2
ответ дан 31 July 2018 в 11:38
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 31 July 2018 в 11:38
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Вы пробовали:

locate /home/insertusernamehere/*/filename?

или

locate file | grep -i '^/home/.*/examplesubdirectory'?

или любое изменение такого?

5
ответ дан 2 August 2018 в 04:14
  • 1
    Этот ответ показывает, что grep не требуется, и, как видно из первого предложенного варианта, не являются регулярными выражениями. – Tom 9 April 2015 в 15:43

Здесь

locatedir () { locate "$*" | while read line do if [ -d "$line" ] ; then echo $line ; fi done } locatedir $*
2
ответ дан 2 August 2018 в 04:14
  • 1
    Если вы можете объяснить, какие изменения вы внесли, это будет полезно и для других. – Ron 12 June 2015 в 16:15

Вы можете использовать опцию --regex (-r) в locate:

locate -r '/log$'
28
ответ дан 2 August 2018 в 04:14
  • 1
    Да (+1). locate имеет собственную встроенную возможность регулярного выражения: -r или --regex ... для полного диапазона параметров: info locate – Peter.O 28 November 2010 в 08:25
  • 2
    Я знал, что должен быть лучший путь! – misterben 28 November 2010 в 16:32
  • 3
    Настолько короткий, и он работает плавно. Большой вклад! Еще одна причина, по которой учиться / владеть регулярными выражениями – loved.by.Jesus 8 November 2016 в 16:23
  • 4
    В этом случае вам не нужны два ': locate -r /log$. – simlev 26 September 2017 в 11:56

Здесь это

  foundir () {locate "$ *" |  в то время как строка чтения выполняется, если [-d "$ line"];  затем echo $ line;  fi done} foundir $ *  
2
ответ дан 4 August 2018 в 20:18

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

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