Find knowledge base article(s) by searching for keywords in the title e.g. type linux in the search box below
Find knowledge base article(s) by browsing the subject categories of articles
Technology quick references, cheatsheets, user manuals etc.
Shop Online through ShopifyLite
Tutorials on various IT applications.
Search Title    (UL:0 |SS:f)

Software >> OS >> Unix >> Shell >> bash >> bash cheat sheet

Test options

-b file
True if file is a Block special device
-c file
True if file is a Char­acter special device
-d file
True if file is a Dire­ctory
-e file
True if file Exists
-g file
True if file has its set-­gro­up-id bit set
-G file
True if file is owned by the current effective group id
-k file
True if file has its "s­tic­ky" bit set
-L file
True if file is a symbolic Link
-O file
True if file is owned by the current effective user id
-p file
True if file is a named Pipe
-r file
True if file is read­able
-S file
True if file is a Socket
-s file
True if file has a Size greater than zero
-t [FD]
True if FD is opened on a termin­al. If FD is omitted, it defaults to 1 (standard output)
-u file
True if file has its set-­user-id bit set
-w file
True if file is writ­able
-x file
True if file is exec­uta­ble
file1 -ef file2
True if file1 and file2 have the same device and inode numbers, i.e., if they are hard links to each other

File age

file1 -nt file2
True if file1 is newer than file2
file1 -ot file2
True if file1 is older than file2

String tests

-z String
True if the length of String is zero
-n String
True if the length of String is nonzero
String1 = String2
True if the strings are equal
String1 != String2
True if the strings are not equal

Numeric tests

ARG1 -eq ARG2
True if ARG1 is equal ARG2
ARG1 -ne ARG2
True if ARG1 is not-equal ARG2
ARG1 -lt ARG2
True if ARG1 is less-than ARG2
ARG1 -le ARG2
True if ARG1 is less-t­han­-or­-equal ARG2
ARG1 -gt ARG2
True if ARG1 is greate­r-than ARG2
ARG1 -ge ARG2
True if ARG1 is greate­r-t­han­-or­-equal ARG2

Bash Shortcuts

CTRL-c
Stop current command
CTRL-z
Sleep program
CTRL-a
Go to start of line
CTRL-e
Go to end of line
CTRL-u
Cut from start of line
CTRL-k
Cut to end of line
CTRL-r
Search history
!!
Repeat last command
!abc
Run last command starting with abc
!abc:p
Print last command starting with abc
!$
Last argument of previous command
ALT-.
Last argument of previous command
!*
All arguments of previous command
^abc^123
Run previous command, replacing abc with 123

 

Bash Parameter Expansions

${pa­ram­eter}
Value of parameter
${pa­ram­ete­r:-­word}
Use default
${pa­ram­ete­r:=­word}
Assign default
${pa­ram­ete­r:?­word}
Display Error
${pa­ram­ete­r:+­word}
Use Alternate
${pa­ram­ete­r:o­ffs­et}
Substring
${pa­ram­ete­r:o­ffs­et:­len­gth}
${!n­ame­[@]}
List Array Keys
${#p­ara­met­er}
Parameter length
${pa­ram­ete­r#m­atch}
Remove prefix
${pa­ram­ete­r##­mat­ch}
(longest)
${pa­ram­ete­r%m­atch}
Remove suffix
${pa­ram­ete­r%%­mat­ch}
(longest)
${pa­ram­ete­r/p­att­ern­/st­ring}
Substi­tution
${pa­ram­ete­r^p­att­ern}
Uppercase match
${pa­ram­ete­r^^­pat­tern}
Uppercase all
${pa­ram­ete­r,p­att­ern}
Lowercase match
${pa­ram­ete­r,,­pat­tern}
Lowercase all

Sed commands

:[la­bel]
Set label
Zero/One address commands
=
Print current line number
a \
Append text
text
(embedded newlines)
Address range commands
b [label]
Jump to label
t (T) [label]
Jump to label on (failed) s///
c \
Replace match
text
(Embedded newlines)
d (D)
Delete (to newline)
h H
Copy/A­ppend pattern
g G
Paste/­Append hold
x
Exchange hold/p­attern
n N
Read/A­ppend next line
p
Print pattern
s/re­gex­/re­pla­ce/
Substi­tution
Addr­esses
firs­t~s­tep
Starting at first, every stepth
/reg­ex/
Lines matching regex
addr­1,+N
addr1 and N following lines
Vari­ous
{c1;­c2;­c3;}
List of commands
;
Separate commands

 

References

ftp.psu.ac.th/pub/bash-howto/reference_bash-cheat.pdf

sed.sourceforge.net/sed1line.txt

devhints.io/bash

 

[ © 2008-2021 myfaqbase.com - A property of WPDC Consulting ]