SlideShare une entreprise Scribd logo
1  sur  98
Télécharger pour lire hors ligne
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.

Contenu connexe

Tendances

When Your Inventory Changes: SEO Tips For Changing Product Pages
When Your Inventory Changes: SEO Tips For Changing Product Pages       When Your Inventory Changes: SEO Tips For Changing Product Pages
When Your Inventory Changes: SEO Tips For Changing Product Pages Aleyda Solís
 
How to automate a long tail SEO strategy for ecommerce
How to automate a long tail SEO strategy for ecommerceHow to automate a long tail SEO strategy for ecommerce
How to automate a long tail SEO strategy for ecommercePierreOlivierDanhaiv1
 
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021Sophie Gibson
 
Speed up alt text generation without coding skills
Speed up alt text generation without coding skillsSpeed up alt text generation without coding skills
Speed up alt text generation without coding skillsMiracle Inameti-Archibong
 
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina StoyData Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina StoyLazarinaStoyanova
 
BrightonSEO April 2023 Similar AI: Automation recipes for SEO success
BrightonSEO April 2023 Similar AI: Automation recipes for SEO successBrightonSEO April 2023 Similar AI: Automation recipes for SEO success
BrightonSEO April 2023 Similar AI: Automation recipes for SEO successDylan Fuler
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scaleGiacomo Zecchini
 
Crawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowCrawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowSallyR7
 
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)Gianna Brachetti-Truskawa 🐙
 
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdf
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdfBrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdf
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdfNatalia Witczyk
 
Influencing Discovery, Indexing Strategies For Complex Websites
Influencing Discovery, Indexing Strategies For Complex WebsitesInfluencing Discovery, Indexing Strategies For Complex Websites
Influencing Discovery, Indexing Strategies For Complex WebsitesDan Taylor
 
How to Develop International SEO Audits for Success #IntSS
How to Develop International SEO Audits for Success #IntSSHow to Develop International SEO Audits for Success #IntSS
How to Develop International SEO Audits for Success #IntSSAleyda Solís
 
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
 
Winning SEO when doing Web Migrations #SEO4Life
Winning SEO when doing Web Migrations #SEO4LifeWinning SEO when doing Web Migrations #SEO4Life
Winning SEO when doing Web Migrations #SEO4LifeAleyda Solís
 
7 Ways Not to Fail at International SEO
7 Ways Not to Fail at International SEO7 Ways Not to Fail at International SEO
7 Ways Not to Fail at International SEOAleyda Solís
 
The Value of Featured Snippets (BrightonSEO 2023).pdf
The Value of Featured Snippets (BrightonSEO 2023).pdfThe Value of Featured Snippets (BrightonSEO 2023).pdf
The Value of Featured Snippets (BrightonSEO 2023).pdfNiki Mosier
 
How to convince even the pickiest editors to take SEO more seriously :: brigh...
How to convince even the pickiest editors to take SEO more seriously :: brigh...How to convince even the pickiest editors to take SEO more seriously :: brigh...
How to convince even the pickiest editors to take SEO more seriously :: brigh...Ian Helms
 
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...Martijn Scheijbeler
 
How to get your SEO work prioritised in house - Maddie McCartney.pptx
How to get your SEO work prioritised in house - Maddie McCartney.pptxHow to get your SEO work prioritised in house - Maddie McCartney.pptx
How to get your SEO work prioritised in house - Maddie McCartney.pptxMaddie McCartney
 

Tendances (20)

When Your Inventory Changes: SEO Tips For Changing Product Pages
When Your Inventory Changes: SEO Tips For Changing Product Pages       When Your Inventory Changes: SEO Tips For Changing Product Pages
When Your Inventory Changes: SEO Tips For Changing Product Pages
 
How to automate a long tail SEO strategy for ecommerce
How to automate a long tail SEO strategy for ecommerceHow to automate a long tail SEO strategy for ecommerce
How to automate a long tail SEO strategy for ecommerce
 
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021
Why the f*ck Doesn't This HREFLANG Work - BrightonSEO Autumn 2021
 
Speed up alt text generation without coding skills
Speed up alt text generation without coding skillsSpeed up alt text generation without coding skills
Speed up alt text generation without coding skills
 
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina StoyData Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
Data Studio for SEOs: Reporting Automation Tips - Weekly SEO with Lazarina Stoy
 
BrightonSEO April 2023 Similar AI: Automation recipes for SEO success
BrightonSEO April 2023 Similar AI: Automation recipes for SEO successBrightonSEO April 2023 Similar AI: Automation recipes for SEO success
BrightonSEO April 2023 Similar AI: Automation recipes for SEO success
 
Debugging rendering problems at scale
Debugging rendering problems at scaleDebugging rendering problems at scale
Debugging rendering problems at scale
 
Crawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to KnowCrawl Budget: Everything you Need to Know
Crawl Budget: Everything you Need to Know
 
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
TECHNICAL SEO QA - SHINING A LIGHT ON INVISIBLE WORK (BrightonSEO April 2022)
 
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdf
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdfBrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdf
BrightonSEO 2023 - Introduction to Search Engines Beyond Google - N Witczyk.pdf
 
Influencing Discovery, Indexing Strategies For Complex Websites
Influencing Discovery, Indexing Strategies For Complex WebsitesInfluencing Discovery, Indexing Strategies For Complex Websites
Influencing Discovery, Indexing Strategies For Complex Websites
 
How to control googlebot
How to control googlebotHow to control googlebot
How to control googlebot
 
How to Develop International SEO Audits for Success #IntSS
How to Develop International SEO Audits for Success #IntSSHow to Develop International SEO Audits for Success #IntSS
How to Develop International SEO Audits for Success #IntSS
 
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
 
Winning SEO when doing Web Migrations #SEO4Life
Winning SEO when doing Web Migrations #SEO4LifeWinning SEO when doing Web Migrations #SEO4Life
Winning SEO when doing Web Migrations #SEO4Life
 
7 Ways Not to Fail at International SEO
7 Ways Not to Fail at International SEO7 Ways Not to Fail at International SEO
7 Ways Not to Fail at International SEO
 
The Value of Featured Snippets (BrightonSEO 2023).pdf
The Value of Featured Snippets (BrightonSEO 2023).pdfThe Value of Featured Snippets (BrightonSEO 2023).pdf
The Value of Featured Snippets (BrightonSEO 2023).pdf
 
How to convince even the pickiest editors to take SEO more seriously :: brigh...
How to convince even the pickiest editors to take SEO more seriously :: brigh...How to convince even the pickiest editors to take SEO more seriously :: brigh...
How to convince even the pickiest editors to take SEO more seriously :: brigh...
 
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...
BrightonSEO October 2022 - Martijn Scheybeler - SEO Testing: Find Out What Wo...
 
How to get your SEO work prioritised in house - Maddie McCartney.pptx
How to get your SEO work prioritised in house - Maddie McCartney.pptxHow to get your SEO work prioritised in house - Maddie McCartney.pptx
How to get your SEO work prioritised in house - Maddie McCartney.pptx
 

Similaire à 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 WroteThe Worst Code I Ever Wrote
The Worst Code I Ever WrotePuppet
 
"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
 
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
 

Similaire à 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 WroteThe 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 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
 

Dernier

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 

Dernier (20)

My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 

Command Line Automation for Repetitive Tasks