shell脚本教程

编程工具

我将auto-header.el放在家目录的一个子目录中,并修改了.emacs文件,使其可以加载此插件:

(add-to-list 'load-path "~/elisp/")
(require 'auto-header)

编程语言和Linux

Linux上有各种各样的编程语言编译器可供选择,如C++,Fortran,ADA,Java,Pascal,COBOL和Lisp等。在这里,我们将重点介绍在Linux下运行的常见的脚本语言BASH。

BASH是Bourne Again Shell的缩写,用于编写脚本,是系统管理员必备的工具。

BASH脚本

一个BASH脚本的第一行通常如下所示:

#!/bin/bash

这是脚本的解释器路径。如果你的默认shell是BASH,你也可以写作:

#!/bin/sh

自定义和内建变量

BASH脚本中可以使用自定义变量,也可以使用内建变量。例如,我们可以使用内建变量$UID,$HOSTNAME和$HOME等,来获取当前用户的信息:

echo "You are user $UID on $HOSTNAME"
echo "Your home directory is: $HOME"

交互式脚本

在BASH脚本中,我们也可以使用read变量来获取用户的输入:

echo -n "请输入一个城市的名字: "
read CITY

然后,我们可以使用case语句来根据用户的输入做出不同的反应:

case $CITY in
London | Paris | Berlin | Rome) echo -n "在欧洲";;
'New York' | Chicago | Washington) echo -n "在美国";;
Tokyo | Bejing | Bangalore) echo -n "在亚洲";;
*) echo -n "某个地方 - 但我不确定在哪里";;
esac

文件检查

在处理文件内容之前,我们可以先检查该文件是否存在:

if test -f /var/log/mail.log; then
printf "该文件存在";
fi

这样可以避免因文件不存在而导致脚本失败的情况。

条件循环

我们可以使用if和elif命令来根据不同的条件执行不同的操作。例如,我们可以创建一个小测验,根据用户的答案来给出反馈:

PS3="选择正确的词填空: "
echo "紧急刹车失效,车子沿着山______滚下来"
 
select SENT1 in 上 下 沿着 旁边
do
    if [ "$SENT1" == "" ];  then
        echo -e "你需要输入一些内容\n"
        continue
    elif [ "$SENT1" != 下 ];  then
        echo -e "抱歉,答案不正确\n"
    elif [ "$SENT1" == 下 ];  then
        echo -e "很好!\n"
        break
    fi
done

这只是一个简单的例子,实际上我们可以根据需求编写更复杂的脚本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值