Difference between revisions of "Linux Tools"

From Pikes Peak Makerspace Wiki
Jump to navigation Jump to search
(36 intermediate revisions by the same user not shown)
Line 9: Line 9:
 
<br>
 
<br>
 
<br>
 
<br>
 +
{{Template:Contact Us}}
 +
 
<p style="padding:0.2em 0.4em; background:#ff6c00; color:#FFFFFF; font-size:15%;"> &nbsp; </p>
 
<p style="padding:0.2em 0.4em; background:#ff6c00; color:#FFFFFF; font-size:15%;"> &nbsp; </p>
 
<br>
 
<br>
[[File:Burst.png|alt=Welcome banner|right|frameless|250x250px]]
+
[[File:Burst.png|alt=burst of white rays on orange background|link=https://wiki.pikespeakmakerspace.org/index.php/About_PPM|right|frameless|250x250px]]
 +
 
 +
==Linux Tools for Beginners==
 +
 
 +
===Command Line===
 +
    '''<code>apropos</code>''' – search the manual page names and descriptions
 +
 
 +
    '''<code>clear</code>''' – clear the terminal screen
  
== '''Linux Tools for Beginners''' ==
+
    '''<code>echo</code>''' – display a line of text
  
=== Command Line ===
+
    '''<code>help</code>''' – list of shell commands
    '''apropos''' – search the manual page names and descriptions
 
  
    '''clear''' – clear the terminal screen
+
    '''<code>history</code>''' – track input from the user a line at a time
  
    '''code''' – launch Visual Studio Code (macOS)
+
    '''<code>info</code>''' – read the info documents
  
    '''echo''' – display a line of text
+
    '''<code>man</code>''' – interface to the on-line reference manuals
  
    '''help''' – list of shell commands
+
    '''<code>say</code>''' – convert text to audible speech
  
    '''history''' – track input from the user a line at a time
+
    '''<code>scrot</code>''' – SCReenshOT utility (Raspberry Pi)
  
    '''info''' – read the info documents
+
    '''<code>whatis</code>''' – display one-line manual page descriptions
  
    '''man''' – interface to the on-line reference manuals
+
===File and Directory Management===
 +
    '''<code>alias</code>''' – define or display aliases
  
    '''say''' – convert text to audible speech
+
    '''<code>cd</code>''' – change the current directory
  
    '''scrot''' – command line screen capture utility
+
    '''<code>chown</code>''' – change file owner and group
  
    '''whatis''' – display one-line manual page descriptions
+
    '''<code>cp</code>''' – copy files and directories
  
=== File and Directory Management ===
+
    '''<code>dd</code>''' – convert and copy a file
    '''alias''' – define or display aliases
 
  
    '''cd''' – change the current directory
+
    '''<code>dir</code>''' – list directory contents
  
    '''chown''' – change file owner and group
+
    '''<code>file</code>''' – determine file type
  
    '''cp''' – copy files and directories
+
    '''<code>git</code>''' – [https://git-scm.com/ distributed revision control system]
  
    '''dd''' – convert and copy a file
+
    '''<code>ls</code>''' – list directory contents
  
    '''dir''' – list directory contents
+
    '''<code>mkdir</code>''' – make directories
  
    '''file''' – determine file type
+
    '''<code>mv</code>''' – move (rename) files
  
    '''git''' – fast, scalable, distributed revision control system
+
    '''<code>pwd</code>''' – print working directory
  
    '''ls''' – list directory contents
+
    '''<code>rm</code>''' – remove files or directories
  
    '''mkdir''' – make directories
+
    '''<code>scp</code>''' – secure copy
  
    '''mv''' – move (rename) files
+
    '''<code>touch</code>''' – change file timestamps
  
    '''pwd''' – print working directory
+
    '''<code>which</code>''' – locate a program file in the user's path
  
    '''rm''' – remove files or directories
+
===File Editing ===
 +
    '''<code>awk</code>''' – pattern scanning and text processing language
  
    '''scp''' – secure copy
+
    '''<code>cut</code>''' – remove sections from each line of files
  
    '''touch''' – change file timestamps
+
    '''<code>geany</code>''' – [https://www.geany.org/ a small and lightweight IDE (Raspberry Pi)]
  
=== File Editing ===
+
    '''<code>gzip</code>''' – compress or expand already compressed files
    '''awk''' – pattern scanning and text processing language
 
  
    '''cut''' – remove sections from each line of files
+
    '''<code>nano</code>''' – Nano's ANOther editor, an enhanced free Pico clone
  
    '''geany''' – a small and lightweight IDE  (Raspberry Pi)
+
    '''<code>open</code>''' – open files and directories
  
    '''gzip''' – compress or expand files
+
    '''<code>pandoc</code>''' – [https://pandoc.org/ universal document converter]
  
    '''nano''' – Nano's ANOther editor, an enhanced free Pico clone
+
    '''<code>scratch</code>''' – [https://scratch.mit.edu/ easy to use interactive programming environment (Raspberry Pi)]
  
    '''open''' – open files and directories
+
    '''<code>sed</code>''' – stream editor
  
    '''scratch''' – easy to use interactive programming environment  (Raspberry Pi)
+
    '''<code>tar</code>''' – manipulate tape archives
  
    '''sed''' – stream editor
+
    '''<code>unzip</code>''' – list, test and extract compressed files in a ZIP archive
  
    '''tar''' – manipulate tape archives
+
    '''<code>vim</code>''' – Vi IMproved, a programmers text editor
  
    '''vim''' – Vi IMproved, a programmers text editor
+
===File Transfer ===
 +
    '''<code>curl</code>''' – [https://curl.se/ "command line tool and library for transferring data with URLs"]
  
=== File Transfer ===
+
    '''<code>wget</code>''' – [https://www.gnu.org/software/wget/ "package for retrieving files using HTTP, HTTPS, FTP and FTPS"]
    '''curl''' – transfer a URL
 
  
    '''wget''' – non-interactive download of files
+
===File Viewing===
 +
    '''<code>cat</code>''' – concatenate and print files
  
=== File Viewing ===
+
    '''<code>diff</code>''' – compare 2 files line by line
    '''cat''' – concatenate and print files
 
  
    '''diff''' – compare 2 files line by line
+
    '''<code>find</code>''' – search for files in a directory hierarchy
  
    '''find''' – search for files in a directory hierarchy
+
    '''<code>grep</code>''' – print lines that match patterns
  
    '''grep''' – print lines that match patterns
+
    '''<code>head</code>''' – output the first part of files
  
    '''head''' – output the first part of files
+
    '''<code>jq</code>''' – [https://jqlang.github.io/jq/ lightweight and flexible command-line JSON processor]
  
    '''less''' – opposite of more
+
    '''<code>less</code>''' – opposite of more
  
    '''look''' v display lines beginning with a given string
+
    '''<code>locate</code>''' – faster version of find, depends on a database
  
    '''more''' – page through text one screenful at a time
+
    '''<code>look</code>''' – display lines beginning with a given string
  
    '''tail''' – output the last part of files
+
    '''<code>more</code>''' – page through text one screenful at a time
  
    '''wc''' – word counts, and line and byte counts
+
    '''<code>tail</code>''' – output the last part of files
  
    '''zgrep''' – search compressed files
+
    '''<code>wc</code>''' – word counts, and line and byte counts
  
=== Math Functions ===
+
    '''<code>zgrep</code>''' – search compressed files
    '''bc''' – basic calculator
 
  
    '''dc''' – RPN “Desktop Calculator”
+
===Math Functions===
 +
    '''<code>bc</code>''' – basic calculator
  
    '''log''' – natural logarithmic function
+
    '''<code>dc</code>''' – RPN “Desktop Calculator”
  
    '''mathematica''' – open the app (Raspberry Pi)
+
    '''<code>log</code>''' – natural logarithmic function
  
    '''sin''' – sine function
+
    '''<code>mathematica</code>''' – [https://www.wolfram.com/raspberry-pi/ open the app (Raspberry Pi)]
  
=== Network Config ===
+
    '''<code>sin</code>''' – sine function
    '''ifconfig''' – configure network interface parameters
 
  
    '''ss''' – utility to investigate sockets
+
===Network Config===
 +
    '''<code>ifconfig</code>''' – configure network interface parameters
  
    '''ssh''' – OpenSSH SSH client (remote login program)
+
    '''<code>ipconfig</code>''' – "Internet Protocol configuration", refreshes DHCP and DNS settings on some systems
  
=== Network Monitoring ===
+
    '''<code>ss</code>''' – utility to investigate sockets
    '''ping''' – send ICMP ECHO_REQUEST packets to network hosts
 
  
    '''nc''' – arbitrary TCP and UDP connections and listens
+
    '''<code>ssh</code>''' – OpenSSH SSH client (remote login program)
  
    '''netstat''' – show network status
+
===Network Monitoring===
 +
    '''<code>ping</code>''' – send ICMP ECHO_REQUEST packets to network hosts
  
    '''traceroute''' – print the route packets take to network host
+
    '''<code>nc</code>''' – arbitrary TCP and UDP connections and listens
  
=== Package Management ===
+
    '''<code>netstat</code>''' – show network status
    '''apt-get''' – APT package handling utility
 
  
    '''apt''' – APT package handling utility
+
    '''<code>traceroute</code>''' – print the route packets take to network host
  
    '''dnf''' – Fedora, successor to YUM
+
===Package Managers===
 +
    '''<code>apt</code>''' – APT package handling utility
  
    '''dpkg''' – package manager for Debian
+
    '''<code>apt-get</code>''' – APT package handling utility
  
    '''homebrew''' – for macOS or Linux
+
    '''<code>dnf</code>''' – for Fedora, (successor to YUM)
  
    '''rpm''' – Red Hat and CentOS
+
    '''<code>dpkg</code>''' – for Debian
  
    '''snap''' – for Ubuntu
+
    '''<code>homebrew</code>''' – for macOS or Linux
  
    '''which''' – locate a program file in the user's path
+
    '''<code>rpm</code>''' – for Red Hat and CentOS
  
    '''yum''' – Yellowdog Updater Modified (Fedora)
+
    '''<code>snap</code>''' – for Ubuntu
  
    '''zypper''' – for OpenSUSE
+
    '''<code>yum</code>''' – for Fedora (Yellowdog Updater Modified)
 +
 
 +
    '''<code>zypper</code>''' – for OpenSUSE
  
 
=== Process Management ===
 
=== Process Management ===
    '''bg''' – run a job/process in the background
+
    '''<code>bg</code>''' – run a job/process in the background
  
    '''fg''' – run a job/process in the foreground
+
    '''<code>fg</code>''' – run a job/process in the foreground
  
    '''halt''' – halt, power-off or reboot the machine
+
    '''<code>halt</code>''' – halt, power-off or reboot the machine
  
    '''htop''' – human readable table of processes
+
    '''<code>htop</code>''' – human readable table of processes
  
    '''jobs''' – list all jobs; active, stopped, or otherwise
+
    '''<code>jobs</code>''' – list all jobs; active, stopped, or otherwise
  
    '''kill''' – terminate or signal a process
+
    '''<code>kill</code>''' – terminate or signal a process
  
    '''killall''' – kill processes by name
+
    '''<code>killall</code>''' – kill processes by name
  
    '''ps''' – process status
+
    '''<code>ps</code>''' – process status
  
    '''pstree''' – display a tree of processes
+
    '''<code>pstree</code>''' – display a tree of processes
  
    '''reboot''' – halt, power-off or reboot the machine
+
    '''<code>reboot</code>''' – halt, power-off or reboot the machine
  
    '''shutdown''' – halt, power-off or reboot the machine
+
    '''<code>shutdown</code>''' – halt, power-off or reboot the machine
  
    '''sudo''' – execute a command as another user
+
    '''<code>sudo</code>''' – execute a command as another user
  
    '''tmux''' – terminal multiplexer
+
    '''<code>tmux</code>''' – terminal multiplexer
  
    '''top''' – table of processes
+
    '''<code>top</code>''' – table of processes
  
=== System Info ===
+
===System Info===
    '''arch''' – print machine hardware name (architecture)
+
    '''<code>arch</code>''' – print machine hardware name (architecture)
  
    '''date''' – print or set the system date and time
+
    '''<code>date</code>''' – print or set the system date and time
  
    '''df''' – display free disk space
+
    '''<code>df</code>''' – display free disk space
  
    '''du''' – display disk usage statistics
+
    '''<code>du</code>''' – display disk usage statistics
  
    '''fc-list''' – list available fonts  (Raspberry Pi)
+
    '''<code>fc-list</code>''' – list available fonts  (Raspberry Pi)
  
    '''free''' – display amount of free and used memory in the system
+
    '''<code>free</code>''' – display amount of free and used memory in the system
  
    '''hostname''' – show or set the system's host name
+
    '''<code>hostname</code>''' – show or set the system's host name
  
    '''lsblk''' – list block devices
+
    '''<code>lsblk</code>''' – list block devices
  
    '''lscpu''' – list information about the CPU architecture
+
    '''<code>lscpu</code>''' – list information about the CPU architecture
  
    '''lshw''' – list hardware
+
    '''<code>lshw</code>''' – list hardware
  
    '''lsusb''' – list USB devices
+
    '''<code>lsusb</code>''' – list USB devices
  
    '''time''' – get time in seconds
+
    '''<code>time</code>''' – get time in seconds
  
    '''uname''' – print operating system name
+
    '''<code>uname</code>''' – print operating system name
  
    '''uptime''' – print up time and load
+
    '''<code>uptime</code>''' – print up time and load
  
=== User and Group Management ===
+
===User and Group Management ===
    '''groupadd''' – create a new group
+
    '''<code>groupadd</code>''' – create a new group
  
    '''groupdel''' – delete a group
+
    '''<code>groupdel</code>''' – delete a group
  
    '''groups''' – show group memberships
+
    '''<code>groups</code>''' – show group memberships
  
    '''id''' – return user identity
+
    '''<code>id</code>''' – return user identity
  
    '''passwd''' – modify a user's password
+
    '''<code>passwd</code>''' – modify a user's password
  
    '''useradd''' – create a new user or update default new user info
+
    '''<code>useradd</code>''' – create a new user or update default new user info
  
    '''userdel''' – delete a user account and related files
+
    '''<code>userdel</code>''' – delete a user account and related files
  
    '''usermod''' – modify a user account
+
    '''<code>usermod</code>''' – modify a user account
  
    '''who''' – print effective user ID
+
    '''<code>who</code>''' – print effective user ID
  
    '''whoami''' – print the user name
+
    '''<code>whoami</code>''' – print the user name
==Training — PPM Trainer(s) needed==
+
==Related Pages==
PPM announces all its [https://www.meetup.com/pikespeakmakerspace/events '''Upcoming events, including classes, on Meetup''']
+
'''Links to related PPM Wiki pages:'''
  
==Related Pages==
 
Links to related PPM Wiki pages:
 
 
:'''[[GitHub Tips]]'''
 
:'''[[GitHub Tips]]'''
  
:[[Ubuntu|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Ubuntu'''&nbsp;&nbsp;</span>]]
+
:[[Computers — Ubuntu|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Computers — Ubuntu'''&nbsp;&nbsp;</span>]]
 +
 
 
:[[Computers -- Mac and Apple|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Computers — Mac and Apple'''&nbsp;&nbsp;</span>]]
 
:[[Computers -- Mac and Apple|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Computers — Mac and Apple'''&nbsp;&nbsp;</span>]]
 +
 
:[[Computers|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Computers — Windows'''&nbsp;&nbsp;</span>]]
 
:[[Computers|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Computers — Windows'''&nbsp;&nbsp;</span>]]
 +
 
:[[Infrastructure at PPM|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Infrastructure at PPM'''&nbsp;&nbsp;</span>]]
 
:[[Infrastructure at PPM|<span style="color:#000000; background:#D0DD27">&nbsp;&nbsp;'''Infrastructure at PPM'''&nbsp;&nbsp;</span>]]
 +
 
:[[Raspberry Pi|<span style="color:#ffffff; background:#864199">&nbsp;&nbsp;'''Raspberry Pi'''&nbsp;&nbsp;</span>]]
 
:[[Raspberry Pi|<span style="color:#ffffff; background:#864199">&nbsp;&nbsp;'''Raspberry Pi'''&nbsp;&nbsp;</span>]]
  
 
==Hand-Curated Links==
 
==Hand-Curated Links==
Links to member-recommended external sites:
+
'''Links to member-recommended external sites:'''
 
:'''[[wikipedia:List_of_free_and_open-source_software_packages|List of free and open-source software packages]]''' — on Wikipedia
 
:'''[[wikipedia:List_of_free_and_open-source_software_packages|List of free and open-source software packages]]''' — on Wikipedia
 +
 
:'''[https://learn.microsoft.com/en-us/powershell/scripting/learn/more-powershell-learning?view=powershell-7.4 PowerShell learning resources]''' — on learn.Microsoft.com
 
:'''[https://learn.microsoft.com/en-us/powershell/scripting/learn/more-powershell-learning?view=powershell-7.4 PowerShell learning resources]''' — on learn.Microsoft.com
  
 
==For Additional Help==
 
==For Additional Help==
: Use the PPM Slack channel #computing
+
:Use the PPM Slack channel #computing
 
:[[How To Slack#PPM Channel Names and Descriptions|'''List of all PPM Slack channels''']]
 
:[[How To Slack#PPM Channel Names and Descriptions|'''List of all PPM Slack channels''']]
 
:Note that we have a Slack channel (#job-board) for members to post, discuss, or accept job opportunities either within PPM or from the&nbsp;community.<br>
 
:Note that we have a Slack channel (#job-board) for members to post, discuss, or accept job opportunities either within PPM or from the&nbsp;community.<br>
Line 270: Line 283:
 
<p style="padding:0.2em 0.4em; background:#ff6c00; color:#FFFFFF; font-size:15%;"> &nbsp; </p>
 
<p style="padding:0.2em 0.4em; background:#ff6c00; color:#FFFFFF; font-size:15%;"> &nbsp; </p>
 
[[Category:Software]]
 
[[Category:Software]]
<!--Woodshop-->
 

Revision as of 13:42, 21 November 2024

Level 1 badge used at Pikes Peak Makerspace

Learn about the software that we have installed for all our members at Pikes Peak Makerspace (PPM).

Use of software installed on PPM computers does not require any additional required training (Level 1).


Contact Us if you cannot find your answer here on our Wiki or if you notice any information that is outdated.

 


burst of white rays on orange background

Linux Tools for Beginners

Command Line

    apropos – search the manual page names and descriptions

    clear – clear the terminal screen

    echo – display a line of text

    help – list of shell commands

    history – track input from the user a line at a time

    info – read the info documents

    man – interface to the on-line reference manuals

    say – convert text to audible speech

    scrot – SCReenshOT utility (Raspberry Pi)

    whatis – display one-line manual page descriptions

File and Directory Management

    alias – define or display aliases

    cd – change the current directory

    chown – change file owner and group

    cp – copy files and directories

    dd – convert and copy a file

    dir – list directory contents

    file – determine file type

    gitdistributed revision control system

    ls – list directory contents

    mkdir – make directories

    mv – move (rename) files

    pwd – print working directory

    rm – remove files or directories

    scp – secure copy

    touch – change file timestamps

    which – locate a program file in the user's path

File Editing

    awk – pattern scanning and text processing language

    cut – remove sections from each line of files

    geanya small and lightweight IDE (Raspberry Pi)

    gzip – compress or expand already compressed files

    nano – Nano's ANOther editor, an enhanced free Pico clone

    open – open files and directories

    pandocuniversal document converter

    scratcheasy to use interactive programming environment (Raspberry Pi)

    sed – stream editor

    tar – manipulate tape archives

    unzip – list, test and extract compressed files in a ZIP archive

    vim – Vi IMproved, a programmers text editor

File Transfer

    curl"command line tool and library for transferring data with URLs"

    wget"package for retrieving files using HTTP, HTTPS, FTP and FTPS"

File Viewing

    cat – concatenate and print files

    diff – compare 2 files line by line

    find – search for files in a directory hierarchy

    grep – print lines that match patterns

    head – output the first part of files

    jqlightweight and flexible command-line JSON processor

    less – opposite of more

    locate – faster version of find, depends on a database

    look – display lines beginning with a given string

    more – page through text one screenful at a time

    tail – output the last part of files

    wc – word counts, and line and byte counts

    zgrep – search compressed files

Math Functions

    bc – basic calculator

    dc – RPN “Desktop Calculator”

    log – natural logarithmic function

    mathematicaopen the app (Raspberry Pi)

    sin – sine function

Network Config

    ifconfig – configure network interface parameters

    ipconfig – "Internet Protocol configuration", refreshes DHCP and DNS settings on some systems

    ss – utility to investigate sockets

    ssh – OpenSSH SSH client (remote login program)

Network Monitoring

    ping – send ICMP ECHO_REQUEST packets to network hosts

    nc – arbitrary TCP and UDP connections and listens

    netstat – show network status

    traceroute – print the route packets take to network host

Package Managers

    apt – APT package handling utility

    apt-get – APT package handling utility

    dnf – for Fedora, (successor to YUM)

    dpkg – for Debian

    homebrew – for macOS or Linux

    rpm – for Red Hat and CentOS

    snap – for Ubuntu

    yum – for Fedora (Yellowdog Updater Modified)

    zypper – for OpenSUSE

Process Management

    bg – run a job/process in the background

    fg – run a job/process in the foreground

    halt – halt, power-off or reboot the machine

    htop – human readable table of processes

    jobs – list all jobs; active, stopped, or otherwise

    kill – terminate or signal a process

    killall – kill processes by name

    ps – process status

    pstree – display a tree of processes

    reboot – halt, power-off or reboot the machine

    shutdown – halt, power-off or reboot the machine

    sudo – execute a command as another user

    tmux – terminal multiplexer

    top – table of processes

System Info

    arch – print machine hardware name (architecture)

    date – print or set the system date and time

    df – display free disk space

    du – display disk usage statistics

    fc-list – list available fonts  (Raspberry Pi)

    free – display amount of free and used memory in the system

    hostname – show or set the system's host name

    lsblk – list block devices

    lscpu – list information about the CPU architecture

    lshw – list hardware

    lsusb – list USB devices

    time – get time in seconds

    uname – print operating system name

    uptime – print up time and load

User and Group Management

    groupadd – create a new group

    groupdel – delete a group

    groups – show group memberships

    id – return user identity

    passwd – modify a user's password

    useradd – create a new user or update default new user info

    userdel – delete a user account and related files

    usermod – modify a user account

    who – print effective user ID

    whoami – print the user name

Related Pages

Links to related PPM Wiki pages:

GitHub Tips
  Computers — Ubuntu  
  Computers — Mac and Apple  
  Computers — Windows  
  Infrastructure at PPM  
  Raspberry Pi  

Hand-Curated Links

Links to member-recommended external sites:

List of free and open-source software packages — on Wikipedia
PowerShell learning resources — on learn.Microsoft.com

For Additional Help

Use the PPM Slack channel #computing
List of all PPM Slack channels
Note that we have a Slack channel (#job-board) for members to post, discuss, or accept job opportunities either within PPM or from the community.

Search the PPM Wiki — include Content pages as well as Multimedia.

Contact Us if you cannot find your answer here on our Wiki or if you notice any information that is outdated.

Pikes Peak Makerspace (PPM) is dedicated to supporting our maker community in their creative processes by providing shared space, shared tools, materials, software, and a knowledge base to turn their ideas into reality.