Shell是指操作系统提供给用户的一个界面,用户可以通过该界面来调用系统的命令和程序。Linux中提供了多种Shell,在大部分的Linux系统中默认使用的是bash(Bourne-Again SHell)。
Shell命令行Shell命令行是用户与Shell进行交互的主要方式。用户通过Shell命令行输入命令,Shell则会执行并返回输出结果。
Shell脚本编程Shell脚本是一种编写Shell命令的文本文件,其扩展名为.sh。脚本文件中包含了一系列的Shell命令和程序,可以完成一定的自动化工作。
基本的Shell命令以下是一些常见的Shell命令:
ls 列出当前目录下的文件和文件夹 cd 切换目录 mkdir 创建目录 rm 删除文件或目录 cat 查看文件内容 echo 输出字符串 Shell变量Shell变量是用于存储数据的一种方法,可以使用var=value的方式进行赋值,例如:
name="John" echo $name 输出John Shell条件语句Shell条件语句可以根据某个条件执行不同的命令或程序。例如:
if [ $name == "John" ] then echo "Hello John" else echo "Who are you?" fi Shell循环语句Shell循环语句可以多次执行某个命令或程序。例如:
for i in $(seq 1 10) do echo $i done Shell函数Shell函数是一段可以重复使用的代码,定义和调用函数的方式如下:
function myfunc() { echo "Hello World" } myfunc Shell脚本编程实例下列为一个简单的Shell脚本,用于统计当前目录下所有文件的行数:
!/bin/bash for file in $(ls) do if [ -f $file ] then lines=$(wc -l "$file" | awk '{print $1}') echo "$file has $lines lines" fi done该脚本首先循环列出当前目录下的所有文件,判断是否为文件并使用wc -l命令统计文件行数并输出。终的输出结果如下:
file1 has 10 lines file2 has 20 lines file3 has 30 lines ...需要注意的是,该脚本只能统计文本文件的行数,若有其他类型的文件则会无法处理。

