Получить конкретное слово из текста

Podrías hacer esto con el comando findy la opción exec-algo como esto:

find. -type d \( ! -name. \) -exec bash -c '
    dirname=$(basename "{}") && 
    cd "{}" && 
    echo "{}" > original_filenames.txt && 
    ls | grep -Fv original_filenames.txt >> original_filenames.txt
' \;

Aquí hay una publicación de StackOverflow que puede resultarle útil:

0
22.07.2019, 14:23
1 ответ

Попробуйте это,

Печатать только слово, содержащее s

echo $TEXT | grep -o '[0-9]*s'
5s
7s

Печатать только слова, содержащие s, m или h

echo $TEXT | grep -o '[0-9]*[smh]'
5s
3m
1h
7s
5m
3h

From man:

  • grep -oПечатать только совпадающие (не -пустые )части совпадающей строки, причем каждая такая часть находится в отдельной строке вывода.

На ваш обновленный вопрос:

  • Для печати последнего поля, если оно имеетs

    awk '$NF~/s/{print $NF}' FILE.txt
    5s
    7s
    
  • Для печати последнего поля, если оно имеет s, или h, или m

    .
     awk '$NF~/s/ || $NF~/m/ || $NF~/h/ {print $NF}' FILE.txt
     5s
     3m
     1h
     7s
     5m
     3h
    
3
28.01.2020, 02:22

Теги

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