summaryrefslogtreecommitdiffhomepage
path: root/bash.html.markdown
diff options
context:
space:
mode:
authorNeinei0k <Neinei0k@users.noreply.github.com>2017-11-14 19:30:57 +0000
committerGitHub <noreply@github.com>2017-11-14 19:30:57 +0000
commit2dda26010ab52ecd5d54c6fa1b8701288aaaac2d (patch)
tree412e90e27d660989e15ceb9d33161810b95c9621 /bash.html.markdown
parentaff623e234d8d0844a44ff5331d756ae539aa6d0 (diff)
[bash/en] Add arrays and alias
Diffstat (limited to 'bash.html.markdown')
-rw-r--r--bash.html.markdown26
1 files changed, 26 insertions, 0 deletions
diff --git a/bash.html.markdown b/bash.html.markdown
index 0c097c27..3f3e49eb 100644
--- a/bash.html.markdown
+++ b/bash.html.markdown
@@ -83,6 +83,25 @@ echo ${Foo:-"DefaultValueIfFooIsMissingOrEmpty"}
# This works for null (Foo=) and empty string (Foo=""); zero (Foo=0) returns 0.
# Note that it only returns default value and doesn't change variable value.
+# Declare an array with 6 elements
+array0=(one two three four five six)
+# Print first element
+echo $array0 # => "one"
+# Print first element
+echo ${array0[0]} # => "one"
+# Print all elements
+echo ${array0[@]} # => "one two three four five six"
+# Print number of elements
+echo ${#array0[@]} # => "6"
+# Print number of characters in third element
+echo ${#array0[2]} # => "5"
+# Print 2 elements starting from forth
+echo ${array0[@]:3:2} # => "four five"
+# Print all elements. Each of them on new line.
+for i in "${array0[@]}"; do
+ echo "$i"
+done
+
# Brace Expansion { }
# Used to generate arbitrary strings
echo {1..10} # => 1 2 3 4 5 6 7 8 9 10
@@ -155,6 +174,13 @@ then
echo "This will run if $Name is Daniya OR Zach."
fi
+# Redefine command 'ping' as alias to send only 5 packets
+alias ping='ping -c 5'
+# Escape alias and use command with this name instead
+\ping 192.168.1.1
+# Print all aliases
+alias -p
+
# Expressions are denoted with the following format:
echo $(( 10 + 5 )) # => 15