Эквивалентные команды «grep» и «sed» в Windows

Эквивалентные команды «grep» и «sed» в Windows

Я провожу несколько тестов с имеющимся у меня доменом. Мне нужно, чтобы при выполнении TXT-запроса я получал строку в формате base64 и декодировал ее, отображая сообщение.

На Linux это работает отлично:

$ dig -t txt my.domain.com +short | sed -e 's/^"//' -e 's/"$//' | base64 -d > file.txt
$ cat file.txt

тестирование моих txt-записей

Теперь я хочу сделать то же самое, за исключением того, что в Windows по умолчанию нет dig, но есть следующая команда:

C:\Users\User\xyz>powershell Resolve-DnsName my.domain.com -Type
TXT > test

C:\Users\Avell\xyz>type test

Name                                     Type   TTL   Section    Strings
----                                     ----   ---   -------    -------
my.domain.com                       TXT    10557 Answer    
{dGVzdGluZyBvdXQgbXkgdHh0IHJlY29yZHMK}

Как можно адаптировать команду выше (Linux) для работы в Windows, используя только преобразование в base64 и декодирование для отображения сообщения?

решение1

Или потратьте необходимое время на изучение PowerShell, используя все бесплатные ресурсы и видео на Youtube, чтобы понять все части PowerShell, а также то, что можно сделать изначально, когда нужно писать код самостоятельно, а когда нужно использовать инструменты сторонних поставщиков.

Это не первый раз, когда об этом спрашивают. Быстрый поиск в Интернете с использованием 'PowerShell Sed' и 'PowerShell Grep' покажет вам хороший список этих и даже примеры.

Get-Content Получает содержимое элемента в указанном месте.

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-content?view=powershell-7

Select-String Находит текст в строках и файлах.

https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/select-string?view=powershell-7

sed в PowerShell

https://docs.microsoft.com/en-us/archive/blogs/sergey_babkins_blog/sed-in-powershell

PowerShell – эквивалент SED в UNIX – изменение текста в файле

https://www.kittell.net/code/powershell-unix-sed-equivalent-change-text-file

Использование sed и grep в PowerShell

https://www.catapultsystems.com/blogs/using-sed-and-grep-in-powershell

http://www.systemcentercentral.com/using-sed-and-grep-in-powershell

Grep, способ PowerShell

https://communary.net/2014/11/10/grep-the-powershell-way

Как использовать команду grep в PowerShell

https://antjanus.com/blog/web-development-tutorials/how-to-grep-in-powershell

Как использовать Grep в PowerShell

https://www.adamfowlerit.com/2017/02/how-to-grep-in-powershell

Совет: эквивалент PowerShell Grep

https://dereknewton.com/2010/12/powershell-grep-equivalent

POWERSHELL: ПОИСК СТРОКИ ИЛИ GREP ДЛЯ POWERSHELL

https://www.thomasmaurer.ch/2011/03/powershell-search-for-string-or-grep-for-powershell

Во-вторых, используйтеMicrosoft powershellгалереянепосредственно в консоли PowerShell или новом терминале Windows ...

Find-Module -Name '*grep*' | Format-Table -AutoSize

Version Name     Repository Description                 
------- ----     ---------- -----------                 
1.1.0   PoshGrep PSGallery  Greplike PowerShell function



 Find-Package -Name '*grep*' | Format-Table -AutoSize

Name      Version        Source    Summary                                                                
----      -------        ------    -------                                                                
wk.Grep   0.2.0          nuget.org Package Description                                                    
Liv.Grep  1.0.5436.17982 nuget.org Grep utility written in c#. Makes it easy to query command line outputs
AstroGrep 4.3.2          nuget.org This application and its source code are freely distributable.         
GRepo     1.0.0          nuget.org GRepo                                                                  
PoshGrep  1.1.0          PSGallery Greplike PowerShell function

... или при использовании редакторов PowerShell, которые предоставляют всплывающую справку / IntelliSense (PowerShell_ISE встроенный,Загрузка VSкода,PowerShell Плюскоторые бесплатны) или (PowerShell Studio от Sapien- стоит денег.)

Наконец, вы также используете dig в своем коде. Для этого смотрите это:

PowerShell: запрос DNS-сервера для записей A, PTR, MX, NS и других

Как использовать PowerShell для записей DNS

Связанный контент