Introduction to the Command Line (2nd ed.)
Introduction to the Command Line is a popular free book (released under the GPL version 2) that introduces the use of standard Unix and GNU command-line tools to people who are new to the command line. The Bash shell, editors, simple text manipulation, and basic programming are discussed. The book was written in the mid-2000s and needs an update for the way people are working today.
The Free Software Foundation (FSF), in conjunction with FLOSS Manuals, wrote this book originally and is now coordinating the update. This wiki discusses how volunteers can help, and lists proposed changes we are considering in the second edition.
Please add yourself here if you want to write new material. Include:
We need only one person per topic because collaborations rarely work well. We will vote on writers on our mailing list.
| Writer | Topics of Interest | Git | Python |
|---|---|---|---|
| Astika Nehra | Python for numpy, matplotlid, panda; Sentiment Analysis using "tweepy"; Unix Commands for Security Audits, Network Status (ifconfig, ping, tracert, whois, nslookup, dig) | ||
| Patrick Geahan | Any of the Basics, Commands, Advancd-ish or Advanced sections; Nano editor; Bash scripting | ||
| John B. Wyatt IV | Bash, Bash scripting, Git, Automation | ✔ | https://libreplanet.org/wiki/Ittcl |
| Severino Tessarin | Python, Vim, regex | ✔
|
|
| Vicente Eduardo Ribeiro Marçal | Python | ✔ | |
| Akul Vohra | Python, Jupyter | ✔ | |
| Muhammad Raza | Python, Git, Jupyter, Unix Commandline | ✔ | ✔ |
| Sarah Masud | Python and/or Juypter | ✔ | |
| Barett McGavock | Git | ✔ | |
| Paula de la Hoz Garrido | Security | ||
| troy | Any topic or issue that needs attention. | ||
| Alexander Tolios | Any. flexible (preferences: git, vim, ssh, system administration, general cli usage), basically anything from the chapters 'basic', 'commands', 'advanced-ish', 'advanced' (except the 'interpreters'-subchapter) and 'editors' would be fine by me. | ✔ | |
| Dave Rowson | General command-line usage, Vim, ssh and rsync | ||
| Pablo Correa Gomez | General command-line usage, Emacs, Git, scripting | ✔ | |
| Nikhil Reddy | Python, coreutils, network tools, text processing, Vim/Emacs. | ✔
|
Astika Nehra
Python and Jupyter for
- numpy, matplotlib, panda
- Twitter Sentiment Analysis using "tweepy"
Unix Commands for Security Audits, Network Status (ifconfig, ping, tracert, whois, nslookup, dig).
I am 2nd year B.Tech(Computer Science) student at Indira Gandhi Delhi Technical University for Women, New Delhi, India
This assignment will be my first work in technical writing. I have studied python for last 3 years during college as well as school. I am also studying C/C++, Machine Learning using Python, App Development using Android Studio, Networking. (2018-19)
https://github.com/AstikaNehra/ https://www.hackerrank.com/astika_nehra School Projects: - Project work using C programming in Ardiuno Uno, Servo Motor, Ultrasonic Sensors for creating SONAR. (2017-18) - Shop Inventory management system in Python with SQLite database (2017-18)
Patrick Geahan(pmgeahan)
Any of the Basics, Commands, Advancd-ish or Advanced sections; Nano editor; Bash scripting
Professional educator, including instructional design for beginning and advanced computing courses Designer of two courses drawing on and expanding this manual
BS/Computer Science, 2000; MS, Computer Security, 2016. CISSP, GCIH, GSEC
Due to the classification of much of my work, it is not publicly available.
Username: jbwyatt4 for Wiki, LibreBook, & GitLab.com
John B. Wyatt IV
Bash, Bash scripting, Git, automation
Owner/Operator of WyattTechCourses.com (written in Rails).
Published author.
Bachelor's in Computer Science & Engineering, UC Merced.
Published two books and a course on server automation (Chef).
Have taught/tutored with GNU/Linux, C/C++, Ruby, and JavaScript.
https://stackoverflow.com/users/story/1613327
My Dotfile Manager Tutorial, written in Chef. Listed on GitHub's list of dotfile managers & tutorials.
https://gitlab.com/jbwyatt4/chef_dotfile_manager_tutorial
Severino Tessarin
Python,Vim,regex
I am a creative programmer with years of experience in several programming languages for applications related to information technology, science, and engineering. Currently developing a personalized application server entirely based on a python micro-framework (http://tessarinseve.pythonanywhere.com/).
Live coding talks and tutorials for beginners and professional data scientists.
- Web Site :https://tessarinseve.pythonanywhere.com/]
- Blog:https://tessarinseve.pythonanywhere.com/shared/index.html
- Linkedin: https://www.linkedin.com/in/tessarinseve/
Vicente Eduardo Ribeiro Marçal
Python
I'm a philosopher and logician. I work with Python to solve my daily problems. I teach Python in my free time!
I work with development and teach. I have 10 years how a professor and 3 years how a developer.
https://github.com/Riverfount https://vicentemarcal.com
Akul Vohra
Python, Jupyter
I work on personal projects and development usually in the field of data science.
Taught Python + Jupyter at a low level.
https://akul.org https://github.com/akulvohra
Muhammad Raza
Python,Git,Jupyter,Unix Commandline
I have 2 years of experience working in Python
I have taught JavaScript,Python,ExpressJS,Flask at a club in my college.
I write about technology on my website https://muhammadraza.me/ https://github.com/mraza007/Python-for-beginners https://github.com/mraza007
Sarah Masud
Python and or Juypter
Working in Python and ML for 2.5 years now.
Teaching experience: Conducted sessions(online and offline) on Python, ML in Python.
- Github- https://github.com/sara-02
- Website- https://themessier.wordpress.com
- CV- https://themessier.wordpress.com/about/#CV
- Talk Demo- https://www.youtube.com/watch?v=XZW3mMkQzSg
Barett McGavock
git
I have over 20 years of professional software engineering experience. This includes extensive use of both distributed and non-distributed source control systems (cvs, svn, p4, mercurial, git, Team Foundation, and several proprietary SCS systems). My broad background allows me to write more easily about the general things someone would want to accomplish with git. I have over 6 years of experience with git itself and have helped move multiple companies and departments from svn to git.
I write technical documentation including the developers' guide and environment setup guides at work. I have good writing skills, and am a native English speaker.
I write code for REI.com, an outdoor retailer. I also volunteer to do IT administration work for a local softball organization. https://www.rei.com/ https://www.emeraldcitysoftball.org/
Paula de la Hoz Garrido
Security
I'm a 23 years old cybersecurity analyst based in Spain. I've worked as pentester, analyst and auditor in different cybersecurity areas. I've founded a digital rights awareness association in Spain called Interferencias.
I gave several speeches in Spain, Belgium and Vienna, I as well have taught git/programming/security/robotics to different kind of students: kids, teens, post-graduate, highschool teachers and fine art students at the University of Granada, University of Valencia and private academies. I write articles in Spanish, English and Japanese in dev.to/terceranexus6. I've also collaborated with other Spanish websites (Polikracia) and got interviewed in national papers (El pais, 20 minutos). I run a section in a local radio of Madrid (Radio Vallekas) about technology.
https://github.com/Terceranexus6 https://dev.to/terceranexus6 https://terceranexus6.github.io
troy
will work on any topic or issue that needs attention
long time user of the command line on several different systems
lots of technical and related writing as part different technical contract jobs i've held over the past 10 years. i've worked and written for really big tech companies writing to some very niche-y topics, but i've also done writing for tiny little start-ups, even one where i was their first employee and they had almost no documentation. just imagine how many acronyms i had to create by myself! i've written install docs, and configuration docs, and usage type docs for systems dudes and development gals and even for technical management folks, too. of some relevance may be the writing i've done on-boarding new customers to systems or for big, hairy (rawr!) multi-tier apps they've never used before. i also write a lot of email. and short notes to myself about things i need to do.
no public pointers, sorry.
Alexander Tolios
Dave Rowson (username: row44k)
Pablo Correa Gomez (username: pabloyoyoista)
Nikhil Reddy
- Python for: Scripting and automation.
Also consuming APIs and building your own commandline tools.
- Unix Coreutils. - Grep/Sed/Awk.
I am Junior Undergrad studying Chemical Engineering at IIT Hyderabad, India. I do web development (including maintaining college websites) and simulations in Python. I also have an interest in Text Processing in Python. I've worked on backend using Go and used Rust for embedded systems. I do some sysadmining for college websites and hence have some familiarity with nagios, nmap,rsync.
I've written some guides for the students of my college on MicroPython and Arduino. I'm currently teaching at a Python bootcamp for college students; I've had audiences completely new to programming and those already with a CS background.
https://github.com/thenarcissist
You won't really find much there. Sorry about that.
The current draft is on the FLOSS Manuals site. Contact Andy Oram (andyo at praxagora.com) to offer your help as a writer or reviewer.
Volunteers are coordinating their work on this wiki page. You can sign up for an account at the LibrePlanet wiki page and join the discussion.
The FSF recommends these guidelines for discussion.
Things to do to help include:
And tell your friends about this project!
See Current Chapter and Section Listing of v.1 (first edition section and chapter listing with page numbers and page counts) or Content Inventory for an alternative view of first edition contents.
| Version 1 | Proposed Changes | Version 2 |
|---|---|---|
| INTRODUCTION starts on p.1 (7 pages total for this chapter) Introduction p.1 - 5 About this Manual p.5 - 7 |
PROPOSED CHANGES ... Motivate the reader with common tasks; how command line can solve these tasks discuss making mention of Other Vendors' broadening support of Command line/Bash/other Unix tools . Microsoft, with Windows 10 command line and Debian in its App Store for example . Google, now supports Gnu/Linux tools natively in their 2019 Chromebooks |
INTRODUCTION |
| BASICS
starts on p.8 (13 pages total for this chapter) |
PROPOSED CHANGES ... introduce Grep earlier, as a simple way to search |
BASICS |
| COMMANDS
starts on p.21 (13 pages total for this chapter) |
PROPOSED CHANGES ... discuss adding Visual Bash remove file descriptors beyond 0, 1, 2 (too advanced for this book) consider moving "Cut Down on Typing" into Basics section. consider changing the name of this chapter to Beginning (as part of the series Beginning, Intermediate, Advanced) |
COMMANDS |
| ADVANCED-ISH
starts on p.34 (32 pages total for this chapter) |
PROPOSED CHANGES ... Add the <(command) feature as an alternative to piping something on Performance measurement something on Security considering changing the name of this chapter to Intermediate (as part of the series Beginning, Intermediate, Advanced) |
ADVANCED-ISH |
| ADVANCED
starts on p.66 (55 pages total for this chapter) |
PROPOSED CHANGES ... discuss making mention of FTP and Rsync, relatives of Telnet discuss making mention of Tmux and Byobu, near Screen Add a one-page quick-ref sheet to chapters on key tools Add explanation on difference between $(command) and (command) Remove section on 'Making Your Own Interpreter' (Seve: I am in favor of keeping this subsection, if possible) |
ADVANCED |
| TEXT EDITORS
starts on p.121 (22 pages in this chapter) |
PROPOSED CHANGES ... choose one or two: Nano Vim Emacs GEdit discuss where to add Markdown Add a one-page quick-ref sheet to chapters on key tools |
TEXT EDITORS |
| SCRIPTING
starts on p.142 (39 pages in this chapter) |
PROPOSED CHANGES ... Add a one-page quick-ref sheet to chapters on key tools |
SCRIPTING |
| SCRIPTING LANGUAGES
starts on p.180 (12 pages in this chapter) |
PROPOSED CHANGES ... Perl (Remove) Ruby (Remove) GNUOctave (Remove) Python (Add Chapter) Git (Add Chapter) discuss Making mention of IDEs discuss Data Science Project/ Data Manipulation project Add a one-page quick-ref sheet to chapters on key tools |
|
| SECURITY | With minimal references to system-specific tools
|
|
| APPENDICES
starts on p.192 (70 pages in this chapter) |
PROPOSED CHANGES ... discuss the merits of keeping the Command Quickie section here if we are adding Quick Ref sheets to each chapter |
APPENDICES |
The following apply to the Unix/Linux family of systems, or subsets within that family. The trend in our discussions has been to avoid system-specific tools. But they are collected here so the ideas aren't forgotten.
Content inventory based on the first edition of Introduction to the Command Line provides an alternate view of the book's structure and content. Inventory assumes that some previously discussed changes (e.g., eliminating various chapters) will occur, so it is not an exact representation of the first edition. (Also includes the chapter on Git which was added after the first edition.)
A markdown version of the "Introduction to the Command Line" is available on this wiki. It was created from the epub version available at https://archive.flossmanuals.net/_booki/command-line/command-line.epub.
Source files, albeit imperfect, are available here https://static.fsf.org/nosvn/gnu-press/source-files/books/Intro-to-Command-Line.zip
Retrieved from "https://libreplanet.org/wiki?title=Ittcl&oldid=69191" Category: ●Action