[解決済み] bashで${var}パラメータ展開式を入れ子にできますか?
2023-06-16 18:37:23
質問
私の持っているものはこれです。
progname=${0%.*}
progname=${progname##*/}
これは1行にネストできる(できない)、つまり1つの式にできるのでしょうか?
スクリプト名からパスと拡張子を取り除き、ベース名だけを残そうとしています。上記の 2 行は問題なく動作します。私の「C」の性質は、単にこれらをさらに難読化するように私を駆り立てています。
どのように解決するのですか?
ネストとは、このようなものを指します。
#!/bin/bash
export HELLO="HELLO"
export HELLOWORLD="Hello, world!"
echo ${${HELLO}WORLD}
では、ネストすることはできません。
${var}
式のネストはできません。bashのシンタックスエキスパンダーはそれを理解できません。
しかし、もし私があなたの問題を正しく理解しているなら、あなたは
basename
コマンドを使うことを検討してみてください - これは与えられたファイル名からパスを取り除き、もし拡張子が与えられていればそれも取り除きます。たとえば、次のように実行します。
basename /some/path/to/script.sh .sh
を実行すると
script
.
関連
-
[解決済み] Bashスクリプトのソースディレクトリをスクリプト自体から取得するにはどうすればよいですか?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashスクリプトからプログラムが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] パラメータを取るBashのエイリアスを作る?
-
[解決済み] Bashで、文字列がある値で始まっているかどうかを確認するにはどうすればよいですか?
-
[解決済み] Bashスクリプトでファイルへのheredocを書き込むには?
-
[解決済み] Bashで数値を比較するには?
-
[解決済み] Bashでコマンド内のシングルクォート内の変数を展開する
-
[解決済み】Bashの条件式:「and」式をどうするか?(if [ ! -z $VAR && -e $VAR ]))
-
[解決済み] コマンドライン・ターミナルでの乗算
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] bashのループリストで空白をエスケープするには?
-
[解決済み] シェルプログラミングで「export」は何をするのですか?重複
-
[解決済み] bashでWebサーバーの応答を待つループを作成するには?
-
[解決済み] 実行中のBASHスクリプトのパスを決定する [重複].
-
[解決済み] bashでHMAC-SHA1
-
[解決済み] ENV 変数やデフォルト値を使って Makefile の変数を定義する
-
[解決済み] bashでスクリプトの中で宣言された変数をリストアップする方法は?
-
[解決済み] sed を使ってファイルの名前を大量に変更する
-
[解決済み] ファイル名の一部をリネームする [重複]。
-
[解決済み] Bashを使用してJARからMANIFEST.MFファイルを読み込む方法