Skip to content

Instantly share code, notes, and snippets.

@raykipkorir
Created February 2, 2025 11:26
Show Gist options
  • Save raykipkorir/54644b28f1a3a6ad3fbbf924a8d95090 to your computer and use it in GitHub Desktop.
Save raykipkorir/54644b28f1a3a6ad3fbbf924a8d95090 to your computer and use it in GitHub Desktop.

Linux commands

Basic commands

ls [options] [directory] -> list contents of a directory
  ls -a
  ls -la
pwd
cat
echo
cd
mkdir
touch
rm
whoami
man
mv
cp
sudo
whatis
whereis
which
cal
ufw

User management

useradd [options] username
usermod [options] username

Group managemnt

groupadd [options] groupname
groupmod [options] groupname
groupdel groupname

File ownership and permissions

chown [options] owner[:group] file
chmod [options] mode file

Symbol   | Meaning
r          Read(4)
w          Write(2)
x          Execute(1)

chmod 777 file.txt

File compression and decompression

gzip filename
gunzip filename.gz

Archiving

tar -cvf archive.tar file.txt file2.txt
tar -xvf archive.tar

tar -czvf archive.tar.gz file1 file2 directory/
tar -xzvf archive.tar.gz

Networking

ssh
netcat
scp
wget
curl

How to use ssh - basic

ssh-keygen -t rsa -b 2048 -> generate ssh keys
ssh-copy-id username@remote_ip -> copy public key to remote system
ssh username@remote_ip -> connect to the remote system

How to use scp - basic

scp local_file username@remote_ip:/path/to/remote/directory
scp username@remote_ip:/path/to/remote_file /local/directory
scp -r local_directory username@remote_ip:/path/to/remote/directory

Text processing

sed
awk

Environment variables

export NAME="ray"
echo $NAME
unset NAME

System monitoring

top
htop
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment