Магия консоли

Mikalai Saskavets

Магия консоли





автоматизируем рутину

Mikalai Saskavets
iTechMeetup Online #3

Практическая задача

Есть 130 файлов со стандартизированным содержимым.
Нужно:

«Концепции»


            
                Исходное имя одного из файлой:
                ocheredi-v-aws-aleksei-firsov-exness-python-meetup-12-12-2018.json
                
                Прослеживаемый паттерн:
                talk-title-person-name-somethinge-else-some-garbage-DD-MM-YYYY.json
                
                Желаемый результат:
                YYYY-MM-DD-talk-title-person-name-something-else.json
            
        

            
                Прослеживаемый паттерн:
                1 ./ocheredi-v-aws-aleksei-firsov-exness-python-meetup-12-12-2018.json
                
                Регулярка:                
                s#\t./(.+)-([0-9]{2})-([0-9]{2})-([0-9]{2,4})#\t./\4-\3-\2-\1#g
                
            
        

            
            
                cat FILE.TXT | другая команда | ещё команда > FILE_2.txt                
            
        

            
            
                cat FILE.TXT | tr [:upper:] [:lower:] > FILE.txt                
            
        
            
            
                cat FILE.TXT | tr [:upper:] [:lower:] > FILE.txt
                
                
                cat FILE.TXT | tr [:upper:] [:lower:] | sponge FILE.txt
            
        

            
                for VAR in *
                do
                    cmd1 $VAR
                    cmd2 | cmd3 $VAR
                done
                # ---------------------------------------------------------
                for VAR in $( ls -1 ); do cmd1 $VAR; cmd2 | cmd3 $VAR; done
                
            
        

            

sed - потоковый текстовый редактор с регулярками
grep - поиск строк в файле (файлах)
tr - трансформация текста
wc - подсчёт символов, слов, строк
rename - переименование файлов, с регулярками

jq - манипуляция контентом JSON-файлов

vidir - переименование и перемещение файлов текстовым редактором
sponge - «губка» для пайпов

        
регулярки: regex101.com