Bash
組合 Bash 關聯數組
我正在嘗試製作一個按需組合數組的腳本。這是腳本:
#! /bin/bash declare -A code code=( [H]="h" [E]="e" [L]="l" [P]="p" [M]="m" [E]="e" )
當我在命令提示符下輸入 ./filename.bash “HELP ME” 時,我需要列印“幫助我” - 不帶引號並在一行中。這是我正在使用的。
code=$1; for (( i = 0; i < ${#code[@]} ; i = $i + 1 )); do; echo ${code[@]:$i:1}; done
試試這個
script.sh "HELP ME"
:#!/bin/bash input=$1; declare -A code code=( [H]="h" [E]="e" [L]="l" [P]="p" [M]="m" [E]="e" ) for ((i=0; i<${#input}; i++)) do if [[ "${input:$i:1}" = " " ]]; then # whitespace? echo -n " " else echo -n "${code[${input:$i:1}]}" fi done
輸出:
幫我