User Tools

Site Tools


bash_notes

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
bash_notes [2022/02/23 22:10] – [stackoverflow links I came across] rajubash_notes [2023/12/28 08:49] (current) – [other pages in this wiki] raju
Line 1: Line 1:
 +===== tasks =====
 +==== dummy ====
 +  * [[list files within a specific range]]
 +
 ===== dummy ===== ===== dummy =====
 +==== other pages in this wiki ====
 +  * [[bash scripting]]
 +  * [[shell scripting notes]]
 +
 ==== useful links ==== ==== useful links ====
-  * https://mywiki.wooledge.org/ArithmeticExpression - Arithmetic Expansion +  * https://explainshell.com/ - useful for understanding complex shell commands 
 +  * https://mywiki.wooledge.org/ArithmeticExpression - Arithmetic Expansion 
 +  * https://misc.flogisoft.com/bash/tip_colors_and_formatting - escape characters, color prompts, echo colored strings 
 +  * http://ezprompt.net/ - Easy bash prompt generator 
 + 
 +==== documentation links ==== 
 +  * ignoredups, erasedups - https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html search for ignoredups . 
 + 
 +==== what is the difference between "ls > dirlist 2>&1" and "ls 2>&1 > dirlist"? ==== 
 +The command 
 +<code> 
 +ls > dirlist 2>&
 +</code> 
 +directs both standard output (file descriptor 1) and standard error (file descriptor 2) to the file dirlist, while the command 
 +<code> 
 +ls 2>&1 > dirlist 
 +</code> 
 +directs only the standard output to file dirlist, because the standard error was made a copy of the standard output before the standard output was redirected to dirlist. 
 + 
 +To conclude, the order of redirections is significant. 
 + 
 +Ref:- https://www.gnu.org/software/bash/manual/html_node/Redirections.html -> 5th paragraph. 
 ===== getopts ===== ===== getopts =====
 ==== useful articles ==== ==== useful articles ====
Line 115: Line 145:
  
 ==== add an element to an array ==== ==== add an element to an array ====
-  * https://linuxhint.com/bash_append_array/shows couple of different ways to add an element to an array+ 
 +<code> 
 +appliances=("AC" "TV" "Mobile" "Fridge" "Oven" "Blender"
 +appliances+=("Dish Washer"
 +for appliance in "${appliances[@]}" 
 +do 
 +     echo $appliance 
 +done 
 +</code> 
 + 
 +<code> 
 +languages=("PHP" "MySQL" "Bash" "Oracle"
 +languages[${#languages[@]}]="Python" 
 +for language in "${languages[@]}" 
 +do 
 +     echo $language 
 +done 
 +</code> 
 + 
 +<code> 
 +fruits=("Banana" "Mango" "Watermelon" "Grape"
 +fruits=(${fruits[@]} "Jack Fruit"
 +for fruit in "${fruits[@]}" 
 +do 
 +     echo $fruit 
 +done 
 +</code> 
 + 
 +<code> 
 +men=("John" "Watson" "Micheal"
 +women=("Lisa" "Ella" "Mila"
 +people=(${men[@]} ${women[@]}) 
 + 
 +for person in "${people[@]}" 
 +do 
 +     echo $person 
 +done 
 +</code> 
 + 
 +Ref:- 
 +  * https://linuxhint.com/bash_append_array/well written but the information density is low. So I just summarized the points here and renamed the variables a bit. 
 +  * https://stackoverflow.com/questions/1951506/add-a-new-element-to-an-array-without-specifying-the-index-in-bash
  
bash_notes.1645654234.txt.gz · Last modified: 2022/02/23 22:10 by raju