Recently in the shell script, found some shell strings of the Sao operation, can improve efficiency.
String Read
- ${var}: Value of variable var
- ${var-default}: If Var is not declared, the value of Var is $default
- ${var:-default}: If Var is not declared, or is empty, the value of Var is $default
- ${var=default}: If Var is not declared, the value of Var is $default
- ${var: =default}: If Var is not declared, or is empty, the value of Var is $default
- ${#var}: Get the length of $var
String manipulation
- ${#string}: Length of $string
- ${string:position}: Substring starting from $position position
- ${string:position:length}: Substring of length, starting from $position position
- ${string#substring}: Remove the string with the shortest match $substring from the beginning
- ${string# #substring}: Delete the longest matching $substring string from the beginning
- ${string%substring}: Removes the shortest match $substring string from the end
- ${string%%substring}: Removes the longest matching $substring string from the end
- ${STRING/STR1/STR2}: Replace the first matching $str1 with str2
- ${STRING//STR1/STR2}: Replace all matching $str1 with str2
- ${string/#str1/STR2}: Replace $STR2 with $str1 if $string prefix and $str1 match
- ${STRING/%STR1/STR2}: If $string suffix and $str1 match, replace $STR1 with $STR2
Linux shell string manipulation