创建开发环境脚本
在这一步中,我们将创建一个更实用的示例:一个用于设置包含多个变量的开发环境的脚本。这是 source
命令在实际场景中的常见用例。
1. 创建开发环境脚本
在 ~/project
目录下创建一个名为 dev_env.sh
的新文件:
cd ~/project
nano dev_env.sh
将以下内容添加到文件中:
#!/bin/bash
## Development environment setup script
## Database connection settings
export DB_HOST="localhost"
export DB_PORT="5432"
export DB_USER="dev_user"
export DB_PASSWORD="dev_password"
export DB_NAME="dev_database"
## API settings
export API_URL="http://localhost:3000/api"
export API_KEY="dev_api_key_123"
## Application paths
export APP_ROOT="/home/labex/project/app"
export LOG_DIR="/home/labex/project/logs"
## Create directories if they don't exist
mkdir -p $APP_ROOT
mkdir -p $LOG_DIR
## Display confirmation message
echo "Development environment configured with the following settings:"
echo "-----------------------------------------------------------"
echo "Database: $DB_USER@$DB_HOST:$DB_PORT/$DB_NAME"
echo "API URL: $API_URL"
echo "App Root: $APP_ROOT"
echo "Log Directory: $LOG_DIR"
echo "-----------------------------------------------------------"
echo "Environment is ready for development!"
按 Ctrl+O
、Enter
,然后按 Ctrl+X
保存并退出 nano。
2. 使脚本可执行
chmod +x dev_env.sh
3. 引用开发环境脚本
现在,让我们引用该脚本以设置开发环境:
source dev_env.sh
你应该会看到类似以下的输出:
Development environment configured with the following settings:
-----------------------------------------------------------
Database: dev_user@localhost:5432/dev_database
API URL: http://localhost:3000/api
App Root: /home/labex/project/app
Log Directory: /home/labex/project/logs
-----------------------------------------------------------
Environment is ready for development!
4. 验证环境变量是否已设置
让我们检查脚本设置的一些环境变量:
echo "Database connection string: $DB_USER:$DB_PASSWORD@$DB_HOST:$DB_PORT/$DB_NAME"
输出:
Database connection string: dev_user:dev_password@localhost:5432/dev_database
检查 API 设置:
echo "API settings: $API_URL with key $API_KEY"
输出:
API settings: http://localhost:3000/api with key dev_api_key_123
5. 验证目录是否已创建
检查脚本中指定的目录是否已创建:
ls -la ~/project/app ~/project/logs
你应该会看到显示这两个目录都存在的输出。
这个示例展示了你如何使用 source
命令来设置一个包含多个环境变量和配置的完整开发环境。这种方法在开发工作流中常用于在不同环境(开发、测试、生产等)之间进行切换。