set -e shopt -s nocasematch function process_debug_scripts { if [[ -d $1 ]]; then for filename in `ls $1` do sed -e "s@ZZZZZZ@$BUILD_ROOT@g" -e "s@WWWWWW@$WORKSPACE@g" \ "$1/$filename" \ > "$BUILD_ROOT/$filename" #For ARMCYGWIN, we have to change /cygdrive/c to c: if [[ $TARGET_TOOLS == RVCT31CYGWIN ]] then mv "$BUILD_ROOT/$filename" "$BUILD_ROOT/$filename"_temp sed -e "s@/cygdrive/\(.\)@\1:@g" \ "$BUILD_ROOT/$filename"_temp \ > "$BUILD_ROOT/$filename" rm -f "$BUILD_ROOT/$filename"_temp fi done fi } # # Setup workspace if it is not set # if [ -z "${WORKSPACE:-}" ] then echo Initializing workspace export EDK_TOOLS_PATH=`pwd`/BaseTools source edksetup.sh BaseTools else echo Building from: $WORKSPACE fi if [[ ! -e $EDK_TOOLS_PATH/Source/C/bin ]]; then # build the tools if they don't yet exist echo Building tools: $EDK_TOOLS_PATH make -C $EDK_TOOLS_PATH else echo using prebuilt tools fi TARGET=DEBUG for arg in "$@" do if [[ $arg == RELEASE ]]; then TARGET=RELEASE fi done mkdir -p ./Build
时间: 2024-04-15 14:26:46 浏览: 10
这段脚本的作用是设置一些环境变量并构建工具。首先,它会检查是否设置了`WORKSPACE`环境变量,如果没有设置,则初始化工作空间并设置`EDK_TOOLS_PATH`环境变量。然后,它会检查是否已经构建了工具,如果没有则构建工具。最后,它会根据传入的参数设置目标类型,如果参数中包含"RELEASE",则目标类型为RELEASE,否则为DEBUG。最后,它会创建一个名为"Build"的目录。
相关问题
我怎么配置shell使得我的command命令会自动记录在.bash_history下面呢?
要配置shell以使命令自动记录在`.bash_history`文件中,你需要进行以下步骤:
1. 打开你的终端,然后编辑你的`.bashrc`文件。可以使用任何文本编辑器来进行编辑,比如`vi`或`nano`。
```
vi ~/.bashrc
```
2. 在文件中找到以下行(如果不存在,则可以添加):
```
HISTSIZE=1000
HISTFILESIZE=2000
```
这些行设置了命令历史记录的大小限制。
3. 在这些行的下方添加以下行:
```
shopt -s histappend
PROMPT_COMMAND='history -a; history -n'
```
- `shopt -s histappend`:这个命令告诉shell把命令追加到历史记录中,而不是覆盖它。
- `PROMPT_COMMAND='history -a; history -n'`:这个命令告诉shell在每次命令之后都执行`history -a`命令,将新的命令添加到历史记录中。
4. 保存并关闭`.bashrc`文件。
5. 重新加载配置文件,使更改生效:
```
source ~/.bashrc
```
现在,当你在终端中执行命令时,它们会自动记录在`.bash_history`文件中。你可以使用`history`命令来查看命令历史记录,并使用上箭头或`!编号`来重新执行先前的命令。
请注意,这些步骤是针对Bash Shell的,如果你使用的是其他Shell,可能需要对应地修改配置文件。
bashrc 中shopt指令
在bashrc文件中,shopt指令用于设置或查询shell的各种选项。
可以使用以下语法查询shopt选项的当前状态:
```bash
shopt
```
这将显示所有shopt选项以及它们的状态(on或off)。
要设置特定的shopt选项,可以使用以下语法:
```bash
shopt -s <option>
```
或
```bash
shopt -u <option>
```
其中,-s用于启用选项(将其设置为"on"状态),-u用于禁用选项(将其设置为"off"状态)。
例如,要启用extglob选项,可以运行以下命令:
```bash
shopt -s extglob
```
要禁用该选项,可以运行以下命令:
```bash
shopt -u extglob
```
请注意,对shopt的更改只适用于当前shell会话。如果要使更改永久生效,请将相应的shopt命令添加到您的bashrc文件中。