- Passing a Bash Array Element to an Awk Regex Expression
- awk '$2 ~ /^/var$/ { print $1 }' /etc/fstab
- PARTITIONS=(/usr /home /var tmp);
- for ((n=0; n<${#PARTITION[@]}; n++)); do
- cat /etc/fstab | awk '$2 ~ /^${PARTITIONS[$n]}$/ { print $1 }';
- done
- PARTITIONS=(/usr /home /var tmp);
- for ((n=0; n<${#PARTITION[@]}; n++)); do
- cat /etc/fstab | awk -v partition="${PARTITIONS[$n]}" '$2 ~ /^/var$/ { print $1," ",partition }';
- done
- cat /etc/fstab | awk -v partition="${PARTITIONS[$n]}" '$2 ~ partition { print $1 }'
- awk -v partition="${partitions[$n]}" '$2 ~ "^/" partition "$" { print $1 }' /etc/fstab
- partitions=( /usr /home /var /tmp )
- awk '
- FNR==NR { partitions[$0]=""; next }
- $1 !~ /^#/ && ($2 in partitions) { print $1 }
- ' <(printf '%sn' "${partitions[@]}") /etc/fstab
- declare -A 'partitions=([/usr]= [/home]= [/var]= [/tmp]=)'
- while read -r spec file vfstype mntops freq passno; do
- [[ $spec != #* && ${partitions[$file]+set} ]] && echo "$spec"
- done < /etc/fstab
- dirs=( /usr /home /var /tmp )
- for dir in "${dirs[@]}"; do
- { read -r; read -r part _; } < <(df -P "$dir")
- echo "$part"
- done
- awk '$2 ~ "'${PARTITIONS[$n]}'" { print $1 }' /etc/fstab
- awk "$2 ~ /${PARTITIONS[$n]////\/}/ { print $1 }" /etc/fstab
- PARTITIONS=(/usr /home /var /tmp)
- awk -v partition="${PARTITIONS[*]}"
- '$2 != "" && partition ~ $2"\>" { print $1 }' /etc/fstab
- $ cat file | program # would normally just be ...
- $ program < file
- (echo StartFlag ${PARTITIONS[*]}; cat /etc/fstab) | awk ...
- awk -v partitions="${PARTITIONS[*]}" '
- BEGIN { split(partitions,a," ") }
- { for (e in a) { if ($2 ~ a[e]) { print $1 } } }' /etc/fstab