SlideShare a Scribd company logo
1 of 98
Download to read offline
Mike Osolinski
@Fearless_Shultz
Edit
CLI Automation – Using the
Command Line to
automate repetitive tasks
https://www.slideshare.net/MikeOsolinski
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
What the command line
is and how it helps us to
work more efficiently
Basic examples of how
time and effort can be
saved by using CLI Scripts
Chaining multiple scripts /
modules together to create
automated solutions
What I’m Going to Talk About.
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@fearless_Shultz
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@fearless_Shultz
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
The Command
Line and how it
helps us work
more efficiently.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
A command-line interface or command
language interpreter, allows a user to
issues commands in the form of successive
lines of text
@Fearless_Shultz #brightonSEO
What is the Command Line?
Command Prompt
http://bit.ly/windows-command-prompt
@Fearless_Shultz #brightonSEO
What is the Command Line?
Terminal
http://bit.ly/open-mac-terminal
@Fearless_Shultz #brightonSEO
What is the Command Line?
Bash
http://bit.ly/open-bash-linux
@Fearless_Shultz #brightonSEO
What is the Command Line?
Cygwin
http://bit.ly/open-bash-linux
@Fearless_Shultz #brightonSEO
What is the Command Line?
@Fearless_Shultz #brightonSEO
What is the Command Line?
@Fearless_Shultz #brightonSEO
What is the Command Line?
@Fearless_Shultz #brightonSEO
What is the Command Line?
@Fearless_Shultz #brightonSEO
What is the Command Line?
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Extremely powerful (in both good and bad
ways…)
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
“With great power comes great
responsibility….”
- Uncle Ben
@Fearless_Shultz #brightonSEO@Fearless_Shultz #brightonSEO
Quick and easy to write ad-hoc scripts
that would otherwise take much longer
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Take advantage of a huge library of pre-
built scripts.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Chain different scripts and libraries
together to create fully automated
solutions.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Save time on
repetitive tasks.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Examples Of
Using the
Command Line to
Save Time.
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
• Merging Files
• Optimising Images
• Extracting Data
• Running Lighthouse Reports
• Running Screaming Frog Reports
• Renaming Files
• Manipulating CSV Files
* I know, I know, bullet points kill Kittens
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Create a new
master file
Open each
individual csv
Select and
copy and
paste the data
Double check
everything has
been copied
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
copy *.csv > merged.csv
cat *.csv > merged.csv
Windows
Linux / Mac
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Work through all files and
rename them
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
for /f "Tokens=*" %f in ('dir /l/b/a-d') do (rename "%f" "%f")
for i in $( ls | grep [A-Z] ); do mv -i $i `echo $i | tr 'A-Z' 'a-z'`; done
Windows
Linux / Mac
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Download
images via FTP
Upload in
batches to an
image
processing
service
Tweak image
settings as
required
Download
optimised images
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
jpegoptim –size 500k *.jpg
wget -i large-image-urls.txt
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
https://github.com/tjko/jpegoptim
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Create a
new SF Log
File project
Import log
file data
Filter out
Googlebot
User Agent
Export the
data to
Excel
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
cat *.log | grep Googlebot >new-file.csv
Select-String -Path "C:a_ex190207.log" -Pattern
'Googlebot'
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Install Lighthouse
extension
Open each URL
in a Browser
Select options
and run
performance
test
Once each
report has
finished running,
save as a HTML
file
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
urls.txt
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
test.bat
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
test.bat
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
• This does require some additional modules installing but it is generally very quick and
easy to get set up. Full instructions here https://edit.co.uk/blog/save-time-by-batch-
processing-lighthouse-audit-files-from-the-command-line/
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
Open
Screaming
Frog
Set
Configuration
Options
Wait For
Crawl to Run
Select Filter
100 KB
Images
Export the
Report
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Basic Command Line Examples
cd "C:Program Files (x86)Screaming Frog SEO Spider"
ScreamingFrogSEOSpiderCli.exe ^
--crawl https://edit.co.uk ^
--headless ^
--save-crawl ^
--config “C:image-crawl.seospiderconfig" ^
--output-folder “C:scriptsScreamingFrog" ^
--export-tabs "Images:Over X KB"
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Introducing PowerShell…
@Fearless_Shultz #brightonSEO
Introducing PowerShell
Scripting Panel
Command Line
cmdlet Library
PowerShell is a task-based command-line shell and scripting language built on .NET. PowerShell helps
system administrators and power-users rapidly automate tasks that manage operating systems (Linux,
macOS, and Windows) and processes
@Fearless_Shultz #brightonSEO
Introducing PowerShell - cmdlets
A cmdlet (pronounced "command-let") is a lightweight Windows PowerShell script that performs a
single function.
Import-CSV Invoke-RestMethodExport-CSV
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
The Import-CSV cmdlet turns a
CSV file into an object which
has properties which can easily
be referenced with filters
including:
-lt (Less than)
-gt (Greater than
-eq (Equal to)
-like (Like)
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
Import-Csv -Path 'C:BrightonSEOscriptscsv examplesinternal_html.csv'|
select Address, Status,'Title 1 Length'|
Where Address -like *services*|
where Status -eq 'OK'|
where 'Title 1 Length' -gt 55
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Export-Csv
$myData = Import-Csv -Path 'C:BrightonSEOscriptscsv examplesinternal_html.csv'|
select Address, Status,'Title 1 Length'|
Where Address -like *services*|
where Status -eq 'OK'|
where 'Title 1 Length' -gt 55
$myData | Export-CSv 'C:BrightonSEOscriptscsv examplesinternal_html-new.csv'
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Export-Csv
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
You Could . . .
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
Open redirect
report from SF
in Excel
Create filter to
find any rows
with a redirect
count of more
than one.
Create a new
column to
contain the
redirect
Use a
concatenation
formula to
prepend the
rule to the first
and last URLs
Remove all the
other columns
which aren’t
required and
save.
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Or . . .
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Import-Csv
$myObjectsArray = Import-Csv "C:powershell-scriptsredirect_and_canonical_chains.csv" |
Where { $_."Number of Redirects" -gt 1}
$newArray = @()
$myObjectsArray |
ForEach-Object{
$redirectType = "Redirect 301 "
$addressToRedirectFrom = $_.Address -replace
'^(?:https?://)?(?:[^@/n]+@)?(?:www.)?([^:/n]+)', ''
$addressToRedirectTo = $_.'Final Address'
$rewriteRule = $redirectType + $addressToRedirectFrom + ' ' + $addressToRedirectTo
$newArray += $rewriteRule
}
$newArray | Out-File "C:powershell-scriptstesting-export.csv"
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
Invoke-RestMethod consumes
REST APIs and parses the result
and where JSON is returned
the data is converted into a
PowerShell object that can be
easily queried.
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
$username = “user-name-here"
$password = “api-key-here"
$uri = "https://gtmetrix.com/api/0.1/test"
$testURL = "https://edit.co.uk"
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}"
-f $username,$password)))
$testing = Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f
$base64AuthInfo)} `
-Method Post -Uri $uri -Body @{url="https://edit.co.uk"} `
$testID = $testing.test_id
$testURLWithID = $testing.poll_state_url
$testing
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
$fullData = Invoke-RestMethod -Headers @{Authorization=("Basic {0}" -f
$base64AuthInfo)} `
-Method GET -Uri $uri+$testURLWithID
$testScore = $fullData.resources.pagespeed.Length
$testDoMTime = $fullData.results.dom_content_loaded_time
$testFullyLoaded = $fullData.results.fully_loaded_time
'The test score is:'+ $testScore
'The DOM content loaded time is: ' +$testDoMTime
'The fully loaded time is: ' +$testFullyLoaded
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
@Fearless_Shultz #brightonSEO
Introducing PowerShell – Invoke-RestMethod
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Linking things together
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Generate Redirect Report and Create
Redirects.
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
What is the Command Line?
cd "C:Program Files (x86)Screaming Frog SEO Spider"
ScreamingFrogSEOSpiderCli.exe ^
--crawl https://edit.co.uk/ ^
--headless ^
--save-crawl ^
--config "C:redirect.seospiderconfig" ^
--output-folder "C:redirects" ^
--save-report "Redirect & Canonical Chains"
chaining-redirects.bat
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
What is the Command Line?
cd C:redirects
C:redirectschaining-redirects.bat
Get-Content C:redirectsredirect_and_canonical_chains.csv |
Select-Object -Skip 1 | Out-File C:redirectsredirects.csv
$myObjectsArray = Import-Csv "C:redirectsredirects.csv" |
Where { $_."Number of Redirects" -gt 1}
$newArray = @()
$myObjectsArray |
ForEach-Object{
$rType = "Redirect 301 "
$rFrom = $_.Address -replace
'^(?:https?://)?(?:[^@/n]+@)?(?:www.)?([^:/n]+)', ‘’
$rTo = $_.'Final Address'
$rewriteRule = $rType + $rFrom + ' ' + $rTo
$newArray += $rewriteRule}
$newArray | Out-File "C:redirectsredirect-rules.csv"
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Generate Lighthouse Reports.
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
What is the Command Line?
cd "C:Program Files (x86)Screaming Frog SEO Spider"
ScreamingFrogSEOSpiderCli.exe ^
--crawl https://edit.co.uk ^
--headless ^
--save-crawl ^
--config “C:image-crawl.seospiderconfig" ^
--output-folder “C:scriptsScreamingFrog" ^
--export-tabs “Internal:ALL"
Chaining-lighthouse.bat
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
What is the Command Line?
@echo off
cd C:scriptsChainingLighthouselighthouse-reports
for /f "delims=" %%a in
(C:scriptsChainingLighthousetest-urls.txt) DO (
ECHO Line is: %%a
lighthouse --quiet --chrome-flags="--headless" %%a
)
Test.bat
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
What is the Command Line?
cd C:lighthouse
Get-Content C:scriptsScreamingFroginternal_html.csv |
Select-Object -Skip 1 | Out-File C:lighthouseurls-to-test.csv
$myObjectsArray = Import-Csv "C:lighthouseurls-to-test.csv"
C:Lighthousechaining-lighthouse.bat
$newArray = @()
$myObjectsArray |
ForEach-Object{
$newArray += $_.Address
}
$newArray | Out-File "C:lighthousetest-urls.txt" -Encoding ascii
C:Lighthousetest.bat
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
This is just the tip of the iceberg
@Fearless_Shultz #brightonSEO
Confidential
@Fearless_Shultz #brightonSEO
Useful Resources
For Learning and
Working With CLI
Scripts.
@Fearless_Shultz #brightonSEO
CLI Scripting Resources
Title Link
A beginners guide to batch scripting in
Windows http://steve-jansen.github.io/guides/windows-batch-scripting/
Distilled Beginners guide to command line for
SEO https://www.distilled.net/blog/seo/the-beginners-guide-to-using-the-command-line-for-seo/
SEO Strategies to impress your boss https://elite-strategies.com/impress-seo-boss-linux-command-line-tricks/
Beginners guide to Terminal on Mac https://www.makeuseof.com/tag/beginners-guide-mac-terminal/
Tom Pool CLI Hacks presentation http://bit.ly/tom-pool-command-line-hacks-presentation
Tom Pool CLI Cheat Sheet http://bit.ly/command-line-cheat-sheet
Tom Pool Podcast http://bit.ly/tom-pool-presentation-podcast
64 Resources for learning to code online https://skillcrush.com/2016/03/15/64-online-resources-to-learn-to-code-for-free/
The 100 days of code project https://www.100daysofcode.com/
PowerShell download packages https://github.com/PowerShell/PowerShell
Beginners guide to PowerShell https://blog.netwrix.com/2018/02/21/windows-powershell-scripting-tutorial-for-beginners/
Guide to using Arrays in Poweshell https://4sysops.com/archives/arrays-in-powershell-create-change-read-sort-delete/
PowerShell Foreach-Object https://www.youtube.com/watch?v=BoutUXsBGcU
PowerShell out-File https://stackoverflow.com/questions/19450616/export-csv-exports-length-but-not-name
@Fearless_Shultz #brightonSEO
CLI Scripting Resources
Title Link
CSV kit for PowerShell https://searchenginewatch.com/2019/02/06/technical-seo-2019-statelessness/
Loop through files in directory in powershell
https://stackoverflow.com/questions/18847145/loop-through-files-in-a-directory-using-
powershell
Understanding invoke-rest method https://4sysops.com/archives/understanding-the-invoke-restmethod-powershell-cmdlet
Working With Csvs in PowerShell https://www.petri.com/powershell-import-csv-cmdlet-parse-comma-delimited-csv-text-file
Video example of connecting to REST Method https://www.youtube.com/watch?v=7mEmQgGowMY
PowerShell add-ons https://4sysops.com/archives/my-favorite-windows-powershell-ise-add-ons/
Powershell substrings
https://4sysops.com/archives/strings-in-powershell-replace-compare-concatenate-split-
substring/
Screaming Frog Command Scheduler
https://www.greenlanemarketing.com/blog/schedule-your-screaming-frog-crawls-with-
punctual-frog/
Screaming Frog Command Line
Documentation https://www.screamingfrog.co.uk/seo-spider/user-guide/general/#commandlineoptions
Running Screaming Frog CLI On a Server https://www.databulle.com/blog/seo/screaming-frog-headless.html
GTMetrix API https://gtmetrix.com/api/
Cygwin to run Linux and Mac commands on
Windows https://www.cygwin.com/
Huge searchable DB of REST Apis https://www.programmableweb.com/apis/directory
Regex to strip out domain from URL (For
Redirects) https://stackoverflow.com/questions/4791700/regex-needed-to-strip-out-domain-name
Content and sentiment analysis https://www.pveller.com/content-work-automation-with-text-analytics/
@Fearless_Shultz #brightonSEO
Closing Thoughts.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Repetitive tasks are often PERFECT
candidates for automation
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
If a tool doesn’t already exist to perform a
task don’t assume you have to do things
the hard way. BUILD IT.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Writing scripts is not as HARD as you might
imagine it to be.
@Fearless_Shultz #brightonSEO
@Fearless_Shultz #brightonSEO
Remember the words of Uncle Ben and BE
CAREFULL!
@Fearless_Shultz #brightonSEO
Thank You.

More Related Content

What's hot

SEO Tool Overload😱... Google Data Studio to the rescue
SEO Tool Overload😱... Google Data Studio to the rescueSEO Tool Overload😱... Google Data Studio to the rescue
SEO Tool Overload😱... Google Data Studio to the rescueNils De Moor
 
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptxBeth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptxBethBarnham1
 
BrightonSEO - Apr 2022 - No excuses for doing UX
BrightonSEO - Apr 2022 - No excuses for doing UXBrightonSEO - Apr 2022 - No excuses for doing UX
BrightonSEO - Apr 2022 - No excuses for doing UXOban International
 
Kleecks - AI-Martech as a game changer-DEF.pdf
Kleecks - AI-Martech as a game changer-DEF.pdfKleecks - AI-Martech as a game changer-DEF.pdf
Kleecks - AI-Martech as a game changer-DEF.pdfKleecks
 
Veronika bSEO-Googles-MUM-Speaker-Slides.pptx
Veronika bSEO-Googles-MUM-Speaker-Slides.pptxVeronika bSEO-Googles-MUM-Speaker-Slides.pptx
Veronika bSEO-Googles-MUM-Speaker-Slides.pptxVeronika Höller
 
Extreme Makeover: Site Architecture Edition
Extreme Makeover: Site Architecture EditionExtreme Makeover: Site Architecture Edition
Extreme Makeover: Site Architecture EditionKavi Kardos
 
Product, service and category page links (and how to get them) - Rebecca Moss...
Product, service and category page links (and how to get them) - Rebecca Moss...Product, service and category page links (and how to get them) - Rebecca Moss...
Product, service and category page links (and how to get them) - Rebecca Moss...Rebecca Moss
 
Python For SEO specialists and Content Marketing - Hand in Hand
Python For SEO specialists and Content Marketing - Hand in HandPython For SEO specialists and Content Marketing - Hand in Hand
Python For SEO specialists and Content Marketing - Hand in HandDido Grigorov
 
The Big SEO Migration - Learnings from a first time hiker
The Big SEO Migration - Learnings from a first time hiker The Big SEO Migration - Learnings from a first time hiker
The Big SEO Migration - Learnings from a first time hiker ReneHarris7
 
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance FrameworkGoodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance FrameworkAleyda Solís
 
Estrategias SEO en Gestion de Stocks para Ecommerce #CEMD2020
Estrategias SEO en Gestion de Stocks para Ecommerce  #CEMD2020Estrategias SEO en Gestion de Stocks para Ecommerce  #CEMD2020
Estrategias SEO en Gestion de Stocks para Ecommerce #CEMD2020MJ Cachón Yáñez
 
Brighton SEO April 2022 - Automate the technical SEO stuff
Brighton SEO April 2022 - Automate the technical SEO stuffBrighton SEO April 2022 - Automate the technical SEO stuff
Brighton SEO April 2022 - Automate the technical SEO stuffMichael Van Den Reym
 
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfCore Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfSophie Gibson
 
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...Jessica Maloney
 
BrightonSEO Slides April 2023
BrightonSEO Slides April 2023BrightonSEO Slides April 2023
BrightonSEO Slides April 2023Cheryl Luzet
 
SEO at Scale - BrightonSEO April 2022
SEO at Scale - BrightonSEO April 2022SEO at Scale - BrightonSEO April 2022
SEO at Scale - BrightonSEO April 2022Nitin Manchanda
 
The internet for SEOs by Roxana Stingu
The internet for SEOs by Roxana StinguThe internet for SEOs by Roxana Stingu
The internet for SEOs by Roxana StinguRoxana Stingu
 
Stoicism in Digital - brightonSEO April 2022.pdf
Stoicism in Digital  - brightonSEO April 2022.pdfStoicism in Digital  - brightonSEO April 2022.pdf
Stoicism in Digital - brightonSEO April 2022.pdfAlex Wright
 
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO tests
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO testsBrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO tests
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO testsWill Critchlow
 
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdfBrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf🇺🇲 🇬🇧 Kara Thurkettle
 

What's hot (20)

SEO Tool Overload😱... Google Data Studio to the rescue
SEO Tool Overload😱... Google Data Studio to the rescueSEO Tool Overload😱... Google Data Studio to the rescue
SEO Tool Overload😱... Google Data Studio to the rescue
 
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptxBeth Barnham Schema Auditing BrightonSEO Slides.pptx
Beth Barnham Schema Auditing BrightonSEO Slides.pptx
 
BrightonSEO - Apr 2022 - No excuses for doing UX
BrightonSEO - Apr 2022 - No excuses for doing UXBrightonSEO - Apr 2022 - No excuses for doing UX
BrightonSEO - Apr 2022 - No excuses for doing UX
 
Kleecks - AI-Martech as a game changer-DEF.pdf
Kleecks - AI-Martech as a game changer-DEF.pdfKleecks - AI-Martech as a game changer-DEF.pdf
Kleecks - AI-Martech as a game changer-DEF.pdf
 
Veronika bSEO-Googles-MUM-Speaker-Slides.pptx
Veronika bSEO-Googles-MUM-Speaker-Slides.pptxVeronika bSEO-Googles-MUM-Speaker-Slides.pptx
Veronika bSEO-Googles-MUM-Speaker-Slides.pptx
 
Extreme Makeover: Site Architecture Edition
Extreme Makeover: Site Architecture EditionExtreme Makeover: Site Architecture Edition
Extreme Makeover: Site Architecture Edition
 
Product, service and category page links (and how to get them) - Rebecca Moss...
Product, service and category page links (and how to get them) - Rebecca Moss...Product, service and category page links (and how to get them) - Rebecca Moss...
Product, service and category page links (and how to get them) - Rebecca Moss...
 
Python For SEO specialists and Content Marketing - Hand in Hand
Python For SEO specialists and Content Marketing - Hand in HandPython For SEO specialists and Content Marketing - Hand in Hand
Python For SEO specialists and Content Marketing - Hand in Hand
 
The Big SEO Migration - Learnings from a first time hiker
The Big SEO Migration - Learnings from a first time hiker The Big SEO Migration - Learnings from a first time hiker
The Big SEO Migration - Learnings from a first time hiker
 
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance FrameworkGoodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
Goodbye SEO fck ups! Learn to set an SEO Quality Assurance Framework
 
Estrategias SEO en Gestion de Stocks para Ecommerce #CEMD2020
Estrategias SEO en Gestion de Stocks para Ecommerce  #CEMD2020Estrategias SEO en Gestion de Stocks para Ecommerce  #CEMD2020
Estrategias SEO en Gestion de Stocks para Ecommerce #CEMD2020
 
Brighton SEO April 2022 - Automate the technical SEO stuff
Brighton SEO April 2022 - Automate the technical SEO stuffBrighton SEO April 2022 - Automate the technical SEO stuff
Brighton SEO April 2022 - Automate the technical SEO stuff
 
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdfCore Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
Core Web Vitals Audit - Sophie Gibson - PDF - BrightonSEO.pdf
 
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO  Apri...
HELP! I've Been Hit By An Algorithm Update - Jess Maloney - BrightonSEO Apri...
 
BrightonSEO Slides April 2023
BrightonSEO Slides April 2023BrightonSEO Slides April 2023
BrightonSEO Slides April 2023
 
SEO at Scale - BrightonSEO April 2022
SEO at Scale - BrightonSEO April 2022SEO at Scale - BrightonSEO April 2022
SEO at Scale - BrightonSEO April 2022
 
The internet for SEOs by Roxana Stingu
The internet for SEOs by Roxana StinguThe internet for SEOs by Roxana Stingu
The internet for SEOs by Roxana Stingu
 
Stoicism in Digital - brightonSEO April 2022.pdf
Stoicism in Digital  - brightonSEO April 2022.pdfStoicism in Digital  - brightonSEO April 2022.pdf
Stoicism in Digital - brightonSEO April 2022.pdf
 
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO tests
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO testsBrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO tests
BrightonSEO - SearchPilot - Will Critchlow - Lessons from 100s of SEO tests
 
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdfBrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf
BrightonSEO April 2022 - Kara Thurkettle - Search in the Metaverse.pdf
 

Similar to Command Line Automation for Repetitive Tasks

NYPHP March 2009 Presentation
NYPHP March 2009 PresentationNYPHP March 2009 Presentation
NYPHP March 2009 Presentationbrian_dailey
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalKellyn Pot'Vin-Gorman
 
"The worst code I ever wrote"
"The worst code I ever wrote""The worst code I ever wrote"
"The worst code I ever wrote"Tomas Doran
 
The Worst Code I Ever Wrote
The Worst Code I Ever WroteThe Worst Code I Ever Wrote
The Worst Code I Ever WrotePuppet
 
Shell programming 1.ppt
Shell programming  1.pptShell programming  1.ppt
Shell programming 1.pptKalkey
 
Get-Help: An intro to PowerShell and how to Use it for Evil
Get-Help: An intro to PowerShell and how to Use it for EvilGet-Help: An intro to PowerShell and how to Use it for Evil
Get-Help: An intro to PowerShell and how to Use it for Eviljaredhaight
 
Bash shell scripting
Bash shell scriptingBash shell scripting
Bash shell scriptingVIKAS TIWARI
 
Shell scripting _how_to_automate_command_l_-_jason_cannon
Shell scripting _how_to_automate_command_l_-_jason_cannonShell scripting _how_to_automate_command_l_-_jason_cannon
Shell scripting _how_to_automate_command_l_-_jason_cannonSyed Altaf
 
Fundamentals of programming angeli
Fundamentals of programming angeliFundamentals of programming angeli
Fundamentals of programming angelibergonio11339481
 
Linux advanced privilege escalation
Linux advanced privilege escalationLinux advanced privilege escalation
Linux advanced privilege escalationJameel Nabbo
 
What should or not be programmed on the web
What should or not be programmed on the  webWhat should or not be programmed on the  web
What should or not be programmed on the webMohammad Kamrul Hasan
 
The best unix shell scripting interview questions 2018 learn now!
The best unix shell scripting interview questions 2018   learn now!The best unix shell scripting interview questions 2018   learn now!
The best unix shell scripting interview questions 2018 learn now!mia avery
 

Similar to Command Line Automation for Repetitive Tasks (20)

NYPHP March 2009 Presentation
NYPHP March 2009 PresentationNYPHP March 2009 Presentation
NYPHP March 2009 Presentation
 
Pass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft ProfessionalPass Summit Linux Scripting for the Microsoft Professional
Pass Summit Linux Scripting for the Microsoft Professional
 
Unixscripting
UnixscriptingUnixscripting
Unixscripting
 
Unix shell scripting tutorial
Unix shell scripting tutorialUnix shell scripting tutorial
Unix shell scripting tutorial
 
Powershell notes
Powershell notesPowershell notes
Powershell notes
 
Project Automation
Project AutomationProject Automation
Project Automation
 
"The worst code I ever wrote"
"The worst code I ever wrote""The worst code I ever wrote"
"The worst code I ever wrote"
 
The Worst Code I Ever Wrote
The Worst Code I Ever WroteThe Worst Code I Ever Wrote
The Worst Code I Ever Wrote
 
Shell programming 1.ppt
Shell programming  1.pptShell programming  1.ppt
Shell programming 1.ppt
 
Get-Help: An intro to PowerShell and how to Use it for Evil
Get-Help: An intro to PowerShell and how to Use it for EvilGet-Help: An intro to PowerShell and how to Use it for Evil
Get-Help: An intro to PowerShell and how to Use it for Evil
 
Bash shell scripting
Bash shell scriptingBash shell scripting
Bash shell scripting
 
Shell programming
Shell programmingShell programming
Shell programming
 
Shell scripting _how_to_automate_command_l_-_jason_cannon
Shell scripting _how_to_automate_command_l_-_jason_cannonShell scripting _how_to_automate_command_l_-_jason_cannon
Shell scripting _how_to_automate_command_l_-_jason_cannon
 
Fundamentals of programming angeli
Fundamentals of programming angeliFundamentals of programming angeli
Fundamentals of programming angeli
 
No-script PowerShell v2
No-script PowerShell v2No-script PowerShell v2
No-script PowerShell v2
 
Linux advanced privilege escalation
Linux advanced privilege escalationLinux advanced privilege escalation
Linux advanced privilege escalation
 
Docker and the Oracle Database
Docker and the Oracle DatabaseDocker and the Oracle Database
Docker and the Oracle Database
 
What should or not be programmed on the web
What should or not be programmed on the  webWhat should or not be programmed on the  web
What should or not be programmed on the web
 
The best unix shell scripting interview questions 2018 learn now!
The best unix shell scripting interview questions 2018   learn now!The best unix shell scripting interview questions 2018   learn now!
The best unix shell scripting interview questions 2018 learn now!
 
Password craking techniques
Password craking techniques Password craking techniques
Password craking techniques
 

Recently uploaded

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 

Recently uploaded (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

Command Line Automation for Repetitive Tasks