The Software Developer's Guide to Linux: A Practical, No-Nonsense Guide to Using the Linux Command Line and Utilities as a Software Developer

David Cohen & Christian Sturm

Language: English

Published: Oct 14, 2024

Description:

A must-read for software developers lacking command-line skills, focusing on Linux. It provides transferable command-line proficiency for use in Mac OS, Unix, and Windows with WSLKey FeaturesA practical, no-nonsense guide specifically written for developers (not sysadmins) who need to quickly learn command-line skillsExpand your practical skills and look like a wizard on the command lineBuild practical skills to work effectively with the most common CLI tools on Unix-like systemsBook DescriptionDevelopers are always looking to raise their game to the next level, yet most are completely lost when it comes to the Linux command line.

This book is the bridge that will take you to the next level in your software development career. Most of the skills in the book can be immediately put to work to make you a more efficient developer. It's written specifically for software engineers, not Linux system administrators, so each chapter will equip you with just enough theory to understand what you're doing before diving into practical commands that you can use in your day-to-day work as a software developer.

As you work through the book, you'll quickly absorb the basics of how Linux works while you get comfortable moving around the command line. Once you've got the core skills, you'll see how to apply them in different contexts that you'll come across as a software developer: building and working with Docker images, automating boring build tasks with shell scripts, and troubleshooting issues in production environments.

By the end of the book, you'll be able to use Linux and the command line comfortably and apply your newfound skills in your day-to-day work to save time, troubleshoot issues, and be the command-line wizard that your team turns to.

What you will learnLearn useful command-line tricks and tools that make software development, testing, and troubleshooting easyUnderstand how Linux and command line environments actually workCreate powerful, customized tools and save thousands of lines of code with developer-centric Linux utilitiesGain hands-on experience with Docker, SSH, and Shell scripting tasks that make you a more effective developerGet comfortable searching logs and troubleshooting problems on Linux serversHandle common command-line situations that stump other developersWho this book is forThis book is for software developers who want to build practical Command-Line (CLI) and Linux skills and who want to quickly fill the gap to advance their skills and their career. Basic knowledge of editing text, working with files and folders, having some idea of what "operating systems" are, installing software, and using a development environment is assumed.

Table of ContentsHow the Command Line WorksWorking with ProcessesService Management with systemdUsing Shell HistoryIntroducing FilesEditing Files on the Command LineUsers and GroupsOwnership and PermissionsManaging Installed SoftwareConfiguring SoftwarePipes and RedirectionAutomating Tasks with Shell ScriptsSecure Remote Access with SSHVersion Control with GitContainerizing Applications with DockerMonitoring Application LogsLoad Balancing and HTTP