{"id":2276,"date":"2017-06-08T17:42:28","date_gmt":"2017-06-08T12:42:28","guid":{"rendered":"https:\/\/ahmadawais.com\/?p=2276"},"modified":"2019-04-11T17:56:54","modified_gmt":"2019-04-11T12:56:54","slug":"setup-cron-in-unix-basic-understanding","status":"publish","type":"post","link":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/","title":{"rendered":"Anatomy of crontab!"},"content":{"rendered":"<p>More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let&#8217;s Encrypt SSL certificates, I have to renew them every 90 days.<\/p>\n<p>To automate it, I use a simple cron. Being a DevOps fanboy, I like doing things from scratch. This article will help you write a simple cron yourself if you have SSH\/root access to your server.<\/p>\n<h2 id=\"%f0%9f%8e%af-crontab\">\ud83c\udfaf Crontab<a href=\"#%f0%9f%8e%af-crontab\" class=\"heading-link\">#<\/a><\/h2>\n<p>You can use the crontab command to setup your cron on a Unix based OS.<\/p>\n<p><strong>NAME<\/strong>: <code>crontab<\/code> \u2014 maintain crontab files for individual users (V3)<\/p>\n<p><strong>SYNOPSIS<\/strong>: <code>crontab<\/code> [ \u2212u user] file crontab[\u2212uuser]{\u2212l |\u2212r |\u2212e}<\/p>\n<p><strong>DESCRIPTION<\/strong>: The <code>crontab<\/code> utility is the program used to install, deinstall or list the tables used to drive the cron(8) daemon in Vixie Cron. Each user can have their own crontab.<\/p>\n<ul>\n<li><code>\u2212u<\/code> Specify the name of the user whose crontab is to be tweaked. If this option is not given, crontab examines \u201cyour\u201d crontab, i.e., the crontab of the person executing the command. Note that su(1) can confuse crontab and that if you are running inside of su(1) you should always use the \u2212u option for safety\u2019s sake.<\/li>\n<li><code>\u2212l<\/code> Display the current crontab on standard output.<\/li>\n<li><code>\u2212r<\/code> Remove the current crontab.<\/li>\n<li><code>\u2212e<\/code> Edit the current crontab using the editor specified by the VISUAL or EDITOR environment variables. The specified editor must edit the file in place; any editor that unlinks the file and recreates it cannot be used. After you exit from the editor, the modified crontab will be installed automatically.<\/li>\n<\/ul>\n<h2 id=\"%f0%9f%a4%96-add-a-cron-job\">\ud83e\udd16 Add a Cron Job<a href=\"#%f0%9f%a4%96-add-a-cron-job\" class=\"heading-link\">#<\/a><\/h2>\n<p>Let&#8217;s add a simple cron job that repeats itself every fifth day.<\/p>\n<h3 id=\"1-edit-the-current-crontab\">1. Edit the Current <code>crontab<\/code><a href=\"#1-edit-the-current-crontab\" class=\"heading-link\">#<\/a><\/h3>\n<p>Add a cron job by the command (this will open up the crontab file where you can add your crons).<\/p>\n<p><code>crontab -e<\/code><\/p>\n<p>A <code>crontab<\/code> file has five fields for specifying mins, hours, the day of the month, month, and the day of the week followed by the command to be run at that interval.<\/p>\n<\/section>\n<div class=\"postcontents full dark\">\n<div class=\"wrapper\">\n<p><em><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4875\" src=\"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png\" alt=\"Crontab\" width=\"1412\" height=\"818\" srcset=\"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png 1412w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-300x174.png 300w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-768x445.png 768w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-1024x593.png 1024w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-860x498.png 860w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-680x394.png 680w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-400x232.png 400w, https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab-50x29.png 50w\" sizes=\"auto, (max-width: 1412px) 100vw, 1412px\" \/>* in the value field above means all legal values as in braces for that column.<\/em><\/p>\n<p><strong>UPDATE<\/strong>: Check out this awesome resource to visualize\u2192 <a href=\"http:\/\/crontab.guru\">crontab.guru<\/a><\/p>\n<\/div>\n<\/div>\n<section class=\"postcontents wrapper\">\n<h3 id=\"2-add-a-cron-job\">2. Add a Cron Job<a href=\"#2-add-a-cron-job\" class=\"heading-link\">#<\/a><\/h3>\n<p>Since we only want our Cron to run every fifth day. I&#8217;ll add something like this at the end of the file. Each cron job should be at a new line.<\/p>\n<p><code>0 0 *\/5 * * shell_command_here<\/code><\/p>\n<p>or to be exact a custom shell command for a bash function that I wrote.<\/p>\n<p><code>0 0 *\/5 * * wpsites update --le --all<\/code><\/p>\n<h3 id=\"3-save-the-crontab\">3. Save the <code>crontab<\/code><a href=\"#3-save-the-crontab\" class=\"heading-link\">#<\/a><\/h3>\n<p>Save it <code>CTRL (\u2303)<\/code> + <code>X<\/code> then <code>Y<\/code> \u2014 finally press <code>ENTER (return)<\/code><\/p>\n<h3 id=\"4-save-the-crontab\">4. Save the <code>crontab<\/code><a href=\"#4-save-the-crontab\" class=\"heading-link\">#<\/a><\/h3>\n<p>You can check the new crons have been installed of not by<\/p>\n<p><code>crontab -l<\/code><\/p>\n<div>\n<h3 id=\"to-summarize\">To Summarize<a href=\"#to-summarize\" class=\"heading-link\">#<\/a><\/h3>\n<div>1\ufe0f\u20e3 Edit the cron by command <code>crontab -e<\/code><\/div>\n<div>2\ufe0f\u20e3 Save it <code>CTRL (\u2303)<\/code> + <code>X<\/code> then <code>Y<\/code> \u2014 finally press <code>ENTER (return)<\/code><\/div>\n<div>3\ufe0f\u20e3 Check cron jobs with <code>crontab -l<\/code><\/div>\n<\/div>\n<p>And you&#8217;re done :) Let me know how it goes at your end!<\/p>\n<p>Peace! \u270c\ufe0f<\/p>\n","protected":false},"excerpt":{"rendered":"<p>More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let&#8217;s Encrypt SSL certificates, I have to renew them every 90 days. To automate it, I use a simple cron. Being a DevOps fanboy, I like doing things from scratch. This article will help you write a simple cron yourself if you have SSH\/root access to your server. \ud83c\udfaf Crontab# You can use the crontab command to setup your cron on a Unix based OS. NAME: crontab \u2014 maintain crontab files for individual users (V3) SYNOPSIS: crontab [ \u2212u [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"webmentions_disabled_pings":false,"webmentions_disabled":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[141],"tags":[],"class_list":["post-2276","post","type-post","status-publish","format-standard","hentry","category-devops"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Anatomy of crontab!<\/title>\n<meta name=\"description\" content=\"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let&#039;s Encrypt SSL certificates, I\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Anatomy of crontab!\" \/>\n<meta property=\"og:description\" content=\"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let&#039;s Encrypt SSL certificates, I\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/\" \/>\n<meta property=\"og:site_name\" content=\"Ahmad Awais\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/AhmadAwais\" \/>\n<meta property=\"article:author\" content=\"https:\/\/facebook.com\/AhmadAwais\" \/>\n<meta property=\"article:published_time\" content=\"2017-06-08T12:42:28+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-04-11T12:56:54+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png\" \/>\n<meta name=\"author\" content=\"Ahmad Awais\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@MrAhmadAwais\" \/>\n<meta name=\"twitter:site\" content=\"@MrAhmadAwais\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Ahmad Awais\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/\"},\"author\":{\"name\":\"Ahmad Awais\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#\\\/schema\\\/person\\\/1d1b9504182dca2315cf039fb4ebb85b\"},\"headline\":\"Anatomy of crontab!\",\"datePublished\":\"2017-06-08T12:42:28+00:00\",\"dateModified\":\"2019-04-11T12:56:54+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/\"},\"wordCount\":456,\"commentCount\":1,\"publisher\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#\\\/schema\\\/person\\\/1d1b9504182dca2315cf039fb4ebb85b\"},\"image\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2017\\\/06\\\/crontab.png\",\"articleSection\":[\"DevOps\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/\",\"url\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/\",\"name\":\"Anatomy of crontab!\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2017\\\/06\\\/crontab.png\",\"datePublished\":\"2017-06-08T12:42:28+00:00\",\"dateModified\":\"2019-04-11T12:56:54+00:00\",\"description\":\"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let's Encrypt SSL certificates, I\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#primaryimage\",\"url\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2017\\\/06\\\/crontab.png\",\"contentUrl\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2017\\\/06\\\/crontab.png\",\"width\":1412,\"height\":818,\"caption\":\"Crontab\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/setup-cron-in-unix-basic-understanding\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/ahmadawais.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Anatomy of crontab!\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#website\",\"url\":\"https:\\\/\\\/ahmadawais.com\\\/\",\"name\":\"Ahmad Awais\",\"description\":\"Founder &amp; CEO of CommandCode.ai f\\\/k\\\/a Langbase | Google Developers Advisory Board (gDAB) founding member\",\"publisher\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#\\\/schema\\\/person\\\/1d1b9504182dca2315cf039fb4ebb85b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/ahmadawais.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/#\\\/schema\\\/person\\\/1d1b9504182dca2315cf039fb4ebb85b\",\"name\":\"Ahmad Awais\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/Ahmad-Awais-face.jpg\",\"url\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/Ahmad-Awais-face.jpg\",\"contentUrl\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/Ahmad-Awais-face.jpg\",\"width\":2299,\"height\":1705,\"caption\":\"Ahmad Awais\"},\"logo\":{\"@id\":\"https:\\\/\\\/ahmadawais.com\\\/wp-content\\\/uploads\\\/2020\\\/06\\\/Ahmad-Awais-face.jpg\"},\"description\":\"Founder & CEO of \u2318 Command Code coding agent with taste. Founded Langbase.com, AI cloud to build, deploy, and scale AI agents with tools & memory \u00b7 Creator of Command.new. \\\"Awais is an awesome example for developers\\\" \u2014 Satya Nadella, CEO of Microsoft. NASA Mars Ingenuity Helicopter mission code contributor 8th GitHub Stars Award recipient with 5x GitHub Stars Award (Listed as GitHub's #1 JavaScript trending developer). Google Developers Expert Web DevRel. Ex VP Eng (DevTools & DevRel) Rapid \u00b7 Google Developers Advisory Board (gDAB) founding member \u00b7 AI\\\/ML\\\/DevTools Angel Investor (Replit, Resend, Daytona, Gumroad and you?) \u276f AI\\\/ML Advisory Board San Francisco, DevNetwork. Award-winning Open Source Engineering leader authored hundreds of open-source dev-tools and software libraries used by millions of developers, including Shades of Purple code theme and corona-cli. Linux Foundation (Node.js Committee Lead), OpenAPI Business Governing Board. Taught 108K+ developers via NodeCLI.com and VSCode.pro course. 274 million views, blogging for 24 yrs. \u276f Read more about Ahmad Awais or come say hi on \ud835\udd4f @MrAhmadAwais.\",\"sameAs\":[\"https:\\\/\\\/AhmadAwais.com\\\/\",\"https:\\\/\\\/facebook.com\\\/AhmadAwais\",\"https:\\\/\\\/instagram.com\\\/MrAhmadAwais\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/MrAhmadAwais\\\/\",\"https:\\\/\\\/x.com\\\/MrAhmadAwais\",\"https:\\\/\\\/youtube.com\\\/AhmadAwais\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Anatomy of crontab!","description":"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let's Encrypt SSL certificates, I","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/","og_locale":"en_US","og_type":"article","og_title":"Anatomy of crontab!","og_description":"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let's Encrypt SSL certificates, I","og_url":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/","og_site_name":"Ahmad Awais","article_publisher":"https:\/\/facebook.com\/AhmadAwais","article_author":"https:\/\/facebook.com\/AhmadAwais","article_published_time":"2017-06-08T12:42:28+00:00","article_modified_time":"2019-04-11T12:56:54+00:00","og_image":[{"url":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png","type":"","width":"","height":""}],"author":"Ahmad Awais","twitter_card":"summary_large_image","twitter_creator":"@MrAhmadAwais","twitter_site":"@MrAhmadAwais","twitter_misc":{"Written by":"Ahmad Awais","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#article","isPartOf":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/"},"author":{"name":"Ahmad Awais","@id":"https:\/\/ahmadawais.com\/#\/schema\/person\/1d1b9504182dca2315cf039fb4ebb85b"},"headline":"Anatomy of crontab!","datePublished":"2017-06-08T12:42:28+00:00","dateModified":"2019-04-11T12:56:54+00:00","mainEntityOfPage":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/"},"wordCount":456,"commentCount":1,"publisher":{"@id":"https:\/\/ahmadawais.com\/#\/schema\/person\/1d1b9504182dca2315cf039fb4ebb85b"},"image":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#primaryimage"},"thumbnailUrl":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png","articleSection":["DevOps"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/","url":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/","name":"Anatomy of crontab!","isPartOf":{"@id":"https:\/\/ahmadawais.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#primaryimage"},"image":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#primaryimage"},"thumbnailUrl":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png","datePublished":"2017-06-08T12:42:28+00:00","dateModified":"2019-04-11T12:56:54+00:00","description":"More often than not, we find ourselves in a situation where something needs to be automated. For example, since I use Let's Encrypt SSL certificates, I","breadcrumb":{"@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#primaryimage","url":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png","contentUrl":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2017\/06\/crontab.png","width":1412,"height":818,"caption":"Crontab"},{"@type":"BreadcrumbList","@id":"https:\/\/ahmadawais.com\/setup-cron-in-unix-basic-understanding\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ahmadawais.com\/"},{"@type":"ListItem","position":2,"name":"Anatomy of crontab!"}]},{"@type":"WebSite","@id":"https:\/\/ahmadawais.com\/#website","url":"https:\/\/ahmadawais.com\/","name":"Ahmad Awais","description":"Founder &amp; CEO of CommandCode.ai f\/k\/a Langbase | Google Developers Advisory Board (gDAB) founding member","publisher":{"@id":"https:\/\/ahmadawais.com\/#\/schema\/person\/1d1b9504182dca2315cf039fb4ebb85b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ahmadawais.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/ahmadawais.com\/#\/schema\/person\/1d1b9504182dca2315cf039fb4ebb85b","name":"Ahmad Awais","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2020\/06\/Ahmad-Awais-face.jpg","url":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2020\/06\/Ahmad-Awais-face.jpg","contentUrl":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2020\/06\/Ahmad-Awais-face.jpg","width":2299,"height":1705,"caption":"Ahmad Awais"},"logo":{"@id":"https:\/\/ahmadawais.com\/wp-content\/uploads\/2020\/06\/Ahmad-Awais-face.jpg"},"description":"Founder & CEO of \u2318 Command Code coding agent with taste. Founded Langbase.com, AI cloud to build, deploy, and scale AI agents with tools & memory \u00b7 Creator of Command.new. \"Awais is an awesome example for developers\" \u2014 Satya Nadella, CEO of Microsoft. NASA Mars Ingenuity Helicopter mission code contributor 8th GitHub Stars Award recipient with 5x GitHub Stars Award (Listed as GitHub's #1 JavaScript trending developer). Google Developers Expert Web DevRel. Ex VP Eng (DevTools & DevRel) Rapid \u00b7 Google Developers Advisory Board (gDAB) founding member \u00b7 AI\/ML\/DevTools Angel Investor (Replit, Resend, Daytona, Gumroad and you?) \u276f AI\/ML Advisory Board San Francisco, DevNetwork. Award-winning Open Source Engineering leader authored hundreds of open-source dev-tools and software libraries used by millions of developers, including Shades of Purple code theme and corona-cli. Linux Foundation (Node.js Committee Lead), OpenAPI Business Governing Board. Taught 108K+ developers via NodeCLI.com and VSCode.pro course. 274 million views, blogging for 24 yrs. \u276f Read more about Ahmad Awais or come say hi on \ud835\udd4f @MrAhmadAwais.","sameAs":["https:\/\/AhmadAwais.com\/","https:\/\/facebook.com\/AhmadAwais","https:\/\/instagram.com\/MrAhmadAwais\/","https:\/\/www.linkedin.com\/in\/MrAhmadAwais\/","https:\/\/x.com\/MrAhmadAwais","https:\/\/youtube.com\/AhmadAwais"]}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/posts\/2276","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/comments?post=2276"}],"version-history":[{"count":4,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/posts\/2276\/revisions"}],"predecessor-version":[{"id":5634,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/posts\/2276\/revisions\/5634"}],"wp:attachment":[{"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/media?parent=2276"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/categories?post=2276"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ahmadawais.com\/api\/wp\/v2\/tags?post=2276"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}