General Linux Commands

Commands and General functions | In Terminal

General Linux Commands | In terminal

Check file size and other info: Different ways to check for files size

Show block devises | show drives
lsblk

Show drive serial numbers

lsblk --nodeps -o name,serial

Minimize: Go back to terminal without getting out of your doc

Ctrl=Z
To go back to the doc fg Press enter

docker cp doc.txt container_id:/doc.txt
           Copy host-file-name container_id:/new-file-name.txt 

Run docker-compose from another directory

docker-compose -f /tmp/myproject/docker-compose.yml up -d

Updating:

Debian:

update the package index files in Linux to get the latest list of available packages in the repositories.

apt-get update

upgrade currently installed software packages to their latest versions. Under no circumstances are existing packages removed:

apt-get upgrade

enhanced version of the apt-upgrade command. Apart from upgrading existing software packages, it installs and removes some packages to satisfy some dependencies.

apt-get 

Computer susbend / wakeup automatically 

sudo rtcwake -m [type of suspend] -s [number of seconds]
sudo rtcwake -m 5 -s 30

Disk shutoff for 60 seconds

sudo rtcwake -m disk -s 60

Disk shutoff and turn on later

sudo rtcwake -m no -l -t $(date +%s -d 'tomorrow 09:00')

Types of Suspend

The -m switch accepts the following types of suspend:

standby – Standby offers little power savings, but restoring to a running system is very quick. This is the default mode if you omit the -m switch.

mem – Suspend to RAM. This offers significant power savings – everything is put into a low-power state, except your RAM. The contents of your memory are preserved.

disk – Suspend to disk. The contents of your memory are written to disk and your computer is powered off. The computer will turn on and its state will be restored when the timer completes.

off – Turn the computer off completely. rtcwake’s man page notes that restoring from “off” isn’t officially supported by the ACPI specification, but this works with many computers anyway.

no – Don’t suspend the computer immediately, just set the wakeup time. For example, you could tell your computer to wake up at 6am. After that, can put it to sleep manually at 11pm or 1am – either way, it will wake up at 6am.

Seconds vs. Specific Time
-s this option takes a number of seconds in the future. For example, -s 60 wakes your computer up in 60 seconds, while -s 3600 wakes your computer up in an hour.

-t this option allows you to wake your computer up at a specific time. This switch wants a number of seconds since the Unix epoch (00:00:00 UTC on January 1, 1970). To easily provide the correct number of seconds, combine the **date** command with the rtcwake command.

-l this switch tells rtcwake that the hardware clock is set to local time, while the **-u** switch tells rtcwake that the hardware clock (in your computer’s BIOS) is set to UTC time. Linux distributions often set your hardware clock to UTC time and translate that to your local time.

make a [[Cronjob]]

Time In Linux | setting time zones

Check your timezone on Linux by typing in timedatectl command.

Output:

$ timedatectl

                      Local time: Wed 2019-10-16 22:26:23 UTC
                  Universal time: Wed 2019-10-16 22:26:23 UTC
                        RTC time: Wed 2019-10-16 22:26:24
                       Time zone: Etc/UTC (UTC, +0000)
       System clock synchronized: no
systemd-timesyncd.service active: inactive
                 RTC in local TZ: no

If you don't know your time zone, find it and copy it. 

timedatectl list-timezones

Set your time zone:

timedatectl set-timezone America/New_York

Make sure it worked:

timedatectl

Or

Go here. It tells you everything you need there. 
    - https://devconnected.com/how-to-set-date-and-time-on-linux/

BASH | General commands


When running bash scripts, you can include other commands on the same line by using these at the end of each "line" command.

bash:

A; B    # Run A and then B, regardless of success of A
A && B  # Run B if and only if A succeeded
A || B  # Run B if and only if A failed
A &     # Run A in background.

Example:
apt install vim -y A && B apt update vim -y

Running a bash script file .sh:

sh scriptfilename.sh

If you get a "Permission denied" error,  either run  "sudo" or you may need to make the script executable by running 

chmod +x scriptname.sh

Nginx | General Commands

A few commands Nginx

systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl status nginx

 

 

Troubleshooting Nginx

sudo tail -f /var/log/nginx/error.log
sudo tail -f /var/log/odoo/odoo.log
Check connection
curl -I http://<your-external-ip>:80
curl -I https://<your-external-ip>:443

Docker | General Commands

Do you have docker?

docker -v

Install Docker: apt install docker

Do you have docker-compose? docker-compose -v

Docker in Linux Commands (From outside containers):
docker images
docker ps -a
docker ps
docker

Go into a Container

Standard login:

sudo docker exec -it containername bash

Log in as root:

docker exec -it --user root containername bash

To log in as root you can do it this way. 

sudo docker exec -u 0 -it containername bash

Run docker from different directory:

sudo docker-compose -f /directory/to/file/docker-compose.yml up -d

Linux command line: bash + utilities

A


& Start a new process in the background

alias Create an alias •

apropos Search Help manual pages (man -k)

apt Search for and install software packages (Debian/Ubuntu)

apt-get Search for and install software packages (Debian/Ubuntu)

aptitude Search for and install software packages (Debian/Ubuntu)

aspell Spell Checker

at Schedule a command to run once at a particular time

awk Find and Replace text, database sort/validate/index
B


basename Strip directory and suffix from filenames

base32 Base32 encode/decode data and print to standard output

base64 Base64 encode/decode data and print to standard output

bash GNU Bourne-Again SHell

bc Arbitrary precision calculator language

bg Send to background

bind Set or display readline key and function bindings •

break Exit from a loop •

builtin Run a shell builtin

bzip2 Compress or decompress named file(s)
C


cal Display a calendar

caller Return the context of any active subroutine call •

case Conditionally perform a command

cat Concatenate and print (display) the content of files

cd Change Directory

cfdisk Partition table manipulator for Linux

chattr Change file attributes on a Linux file system

chgrp Change group ownership

chmod Change access permissions

chown Change file owner and group

chpasswd Update passwords in batch mode

chroot Run a command with a different root directory

chkconfig System services (runlevel)

cksum Print CRC checksum and byte counts

clear Clear terminal screen

cmp Compare two files

comm Compare two sorted files line by line

command Run a command - ignoring shell functions •

continue Resume the next iteration of a loop •

cp Copy one or more files to another location

cpio Copy files to and from archives

cron Daemon to execute scheduled commands

crontab Schedule a command to run at a later time

csplit Split a file into context-determined pieces

curl Transfer data from or to a server

cut Divide a file into several parts
D


date Display or change the date & time

dc Desk Calculator

dd Data Duplicator - convert and copy a file, write disk headers, boot records

ddrescue Data recovery tool

declare Declare variables and give them attributes •

df Display free disk space

diff Display the differences between two files

diff3 Show differences among three files

dig DNS lookup

dir Briefly list directory contents

dircolors Colour setup for 'ls'

dirname Convert a full pathname to just a path

dirs Display list of remembered directories

dos2unix Windows/MAC to UNIX text file format converter

dmesg Print kernel & driver messages

dpkg Package manager (Debian/Ubuntu).

du Estimate file space usage
E


echo Display message on screen •

egrep Search file(s) for lines that match an extended expression

eject Eject removable media

enable Enable and disable builtin shell commands •

env Environment variables

ethtool Ethernet card settings

eval Evaluate several commands/arguments

exec Execute a command

exit Exit the shell

expand Convert tabs to spaces

export Set an environment variable

expr Evaluate expressions
F


false Do nothing, unsuccessfully

fdformat Low-level format a floppy disk

fdisk Partition table manipulator for Linux

fg Send job to foreground

fgrep Search file(s) for lines that match a fixed string

file Determine file type

find Search for files that meet a desired criteria

fmt Reformat paragraph text

fold Wrap text to fit a specified width

for Expand words, and execute commands

format Format disks or tapes

free Display memory usage

fsck File system consistency check and repair

ftp File Transfer Protocol

function Define Function Macros

fuser Identify/kill the process that is accessing a file
G


gawk Find and Replace text within file(s)

getopts Parse positional parameters

getfacl Get file access control lists

grep Search file(s) for lines that match a given pattern

groupadd Add a user security group

groupdel Delete a group

groupmod Modify a group

groups Print group names a user is in

gzip Compress or decompress named file(s)
H


hash Remember the full pathname of a name argument

head Output the first part of file(s)

help Display help for a built-in command •

history Command History

hostname Print or set system name

htop Interactive process viewer
I


iconv Convert the character set of a file

id Print user and group id's

if Conditionally perform a command

ifconfig Configure a network interface

ifdown Stop a network interface

ifup Start a network interface up

import Capture an X server screen and save the image to file

install Copy files and set attributes

iostat Report CPU and i/o statistics

ip Routing, devices and tunnels
J


jobs List active jobs •

join Join lines on a common field
K


kill Kill a process by specifying its PID

killall Kill processes by name

klist List cached Kerberos tickets
L


less Display output one screen at a time

let Perform arithmetic on shell variables •

link Create a link to a file

ln Create a symbolic link to a file

local Create a function variable •

locate Find files

logname Print current login name

logout Exit a login shell •

look Display lines beginning with a given string

lpc Line printer control program

lpr Print files

lprint Print a file

lprintd Delete a print job

lprintq List the print queue

lprm Remove jobs from the print queue

lsattr List file attributes on a Linux second extended file system

lsblk List block devices

ls List information about file(s)

lsof List open files

lspci List all PCI devices
M


make Recompile a group of programs

man Help manual

mapfile Read lines from standard input into an indexed array variable •

mkdir Create new folder(s)

mkfifo Make FIFOs (named pipes)

mkfile Make a file

mkisofs Create a hybrid ISO9660/JOLIET/HFS filesystem

mknod Make block or character special files

mktemp Make a temporary file

more Display output one screen at a time

most Browse or page through a text file

mount Mount a file system

mtools Manipulate MS-DOS files

mtr Network diagnostics (traceroute/ping)

mv Move or rename files or directories

mmv Mass Move and rename (files)
N


nc Netcat, read and write data across networks

netstat Networking connections/stats

nft nftables for packet filtering and classification

nice Set the priority of a command or job

nl Number lines and write files

nohup Run a command immune to hangups

notify-send Send desktop notifications

nslookup Query Internet name servers interactively
O


open Open a file in its default application

op Operator access
P


passwd Modify a user password

paste Merge lines of files

pathchk Check file name portability

Perf Performance analysis tools for Linux

ping Test a network connection

pgrep List processes by name

pkill Kill processes by name

popd Restore the previous value of the current directory

pr Prepare files for printing

printcap Printer capability database

printenv Print environment variables

printf Format and print data •

ps Process status

pushd Save and then change the current directory

pv Monitor the progress of data through a pipe

pwd Print Working Directory
Q


quota Display disk usage and limits

quotacheck Scan a file system for disk usage
R


ram ram disk device

rar Archive files with compression

rcp Copy files between two machines

read Read a line from standard input •

readarray Read from stdin into an array variable •

readonly Mark variables/functions as readonly

reboot Reboot the system

rename Rename files

renice Alter priority of running processes

remsync Synchronize remote files via email

return Exit a shell function

rev Reverse lines of a file

rm Remove files

rmdir Remove folder(s)

rsync Remote file copy (Synchronize file trees)
S


screen Multiplex terminal, run remote shells via ssh

scp Secure copy (remote file copy)

sdiff Merge two files interactively

sed Stream Editor

select Accept user choices via keyboard input

seq Print numeric sequences

set Manipulate shell variables and functions

setfacl Set file access control lists.

sftp Secure File Transfer Program

sha256sum Compute and check SHA256 (256-bit) checksums

shift Shift positional parameters

shopt Shell Options

shuf Generate random permutations

shutdown Shutdown or restart linux

sleep Delay for a specified time

slocate Find files

sort Sort text files

source Run commands from a file '.'  •

split Split a file into fixed-size pieces

ss Socket Statistics

ssh Secure Shell client (remote login program)

stat Display file or file system status

strace Trace system calls and signals

su Substitute user identity

sudo Execute a command as another user

sum Print a checksum for a file

suspend Suspend execution of this shell •

sync Synchronize data on disk with memory
T


tail Output the last part of a file

tar Store, list or extract files in an archive

tee Redirect output to multiple files

test Evaluate a conditional expression

time Measure Program running time

timeout Run a command with a time limit

times User and system times

tmux Terminal multiplexer

touch Change file timestamps

top List processes running on the system

tput Set terminal-dependent capabilities, color, position

traceroute Trace Route to Host

trap Execute a command when the shell receives a signal •

tr Translate, squeeze, and/or delete characters

true Do nothing, successfully

tsort Topological sort

tty Print filename of terminal on stdin

type Describe a command •
U


ulimit Limit user resources •

umask Users file creation mask

umount Unmount a device

unalias Remove an alias •

uname Print system information

unexpand Convert spaces to tabs

uniq Uniquify files

units Convert units from one scale to another

unix2dos UNIX to Windows or MAC text file format converter

unrar Extract files from a rar archive

unset Remove variable or function names

unshar Unpack shell archive scripts

until Execute commands (until error)

uptime Show uptime

useradd Create new user account

userdel Delete a user account

usermod Modify user account

users List users currently logged in

uuencode Encode a binary file

uudecode Decode a file created by uuencode
V


v Verbosely list directory contents ('ls -l -b')

vdir Verbosely list directory contents ('ls -l -b')

vi Text Editor

vmstat Report virtual memory statistics
W


w Show who is logged on and what they are doing

wait Wait for a process to complete •

watch Execute/display a program periodically

wc Print byte, word, and line counts

whereis Search the user's $path, man pages and source files for a program

which Search the user's $path for a program file

while Execute commands

who Print all usernames currently logged in

whoami Print the current user id and name ('id -un')

wget Retrieve web pages or files via HTTP, HTTPS or FTP

write Send a message to another user
X


xargs Execute utility, passing constructed argument list(s)

xdg-open Open a file or URL in the user's preferred application.

xxd Make a hexdump or do the reverse

xz Compress or decompress .xz and .lzma files

yes Print a string until interrupted

zip Package and compress (archive) files

. Run a command script in the current shell

!! Run the last command again

### Comment / Remark

Sourced (and copied directly) from ss64.com

UnZip and UnCompress

xz-utils:

You will need xz-utils if you dont have it already. If not, You have to install xz-utils package first:

sudo apt-get install xz-utils


You can use unxz command to extract .xz files:

unxz file.xz

or using with --decompress option of xz:

xz --decompress file.xz

7 Zip

You will need 7zipif you dont have it already. If not, You have to install xz-utils package first:

sudo apt install p7zip

Then, uncompress using the -d command:

p7zip -d something.7z

How to check IP address from command line | Internal and External

Check your Internal IP address

To check you current machines addres: "ip add" or "ip addr" or;

ip address

Check your external IP address

First make sure that the curl command is installed. If not, do this

sudo apt install curl

By using curl, check the external address by doing this;

curl -w "\n" -s https://api.ipify.org

That should give an output of your external IP address.

UFW

Allow ports

sudo ufw allow 22

remove ports

sudo ufw delete allow 22

How to clean log files in Linux

Fisrt, See the logs that are in the logs area of /var

du -h /var/log/

The du command prints the estimated disk space usage of each file and directory for the path that you specified.
The -h argument causes the command to print the information in a human-readable format.

 

https://linuxhandbook.com/empty-file-linux/

 

https://support.hostway.com/hc/en-us/articles/360001972270-How-to-clean-log-files-in-Linux