Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
#!/bin/sh var="$1"; OUTPUT=$(echo ${$var,,}); echo $OUTPUT
特定の文字をエスケープするなど、考えられるすべての組み合わせを試しました。
シェルにスクリプト引数を小文字で出力させることができません。
エラー:
createmodule.sh: 26: createmodule.sh: Bad substitution
どうしてこれなの?
間違いがあります。代わりにこれを試してください:
#!/bin/bash var="$1" OUTPUT=${var,,} echo $OUTPUT
$あなたは過剰に持っています。
$
sh script議論で見られるように、必要なシェルが本当にシェルであるかどうか確信が持てない場合は、スクリプトを決して呼び出さないでくださいsh。より良いアプローチは、良いシバンを のよう#!/bin/bashに配置し、次にchmod+x script.sh最後に配置することです./script.sh
sh script
sh
#!/bin/bash
chmod+x script.sh
./script.sh