質問編集履歴

1 drf

kuzurotto

kuzurotto score 395

2018/01/30 01:03  投稿

bash 定数で読み取り専用の変数ですと表示されてしまう
ある処理をシェルに任せたくてbashを触っています。
その際になるべくコーディング規約に基づいた記法をしたくて色々見ているのですが、定数にしてしまうと-bash: HOGE_HOGE: 読み取り専用の変数です、とでるのですが表示させたくないです。が、こういうものなんでしょうか?
1回目実行時にはそんな文言でませんが2回目にはでてしまいます。
```ここに言語を入力
#!/bin/bash
readonly BASE_DIR="deploy_test"
readonly TEST_DIR="test"
readonly STAGING_DIR="staging"
readonly PRODUCTION_DIR="production"
readonly SUB_DOMAIN_TEST="test"
readonly SUB_DOMAIN_STAGING="stg"
readonly PUBLIC_DIR="public"
readonly SYMBOLIC_NAME="index.html"
echo SYMBOLIC_NAME
echo $SYMBOLIC_NAME
```
```ここに言語を入力
[mg1986jp@sv5015 ~]$ . ./samo.sh
SYMBOLIC_NAME
index.html
[mg1986jp@sv5015 ~]$ . ./samo.sh
-bash: BASE_DIR: 読み取り専用の変数です
-bash: TEST_DIR: 読み取り専用の変数です
-bash: STAGING_DIR: 読み取り専用の変数です
-bash: PRODUCTION_DIR: 読み取り専用の変数です
-bash: SUB_DOMAIN_TEST: 読み取り専用の変数です
-bash: SUB_DOMAIN_STAGING: 読み取り専用の変数です
-bash: PUBLIC_DIR: 読み取り専用の変数です
-bash: SYMBOLIC_NAME: 読み取り専用の変数です
SYMBOLIC_NAME
index.html
```
  • Linux

    4423 questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • bash

    799 questions

    bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る