linux shell命令行及脚本编程实例详解
2023-06-16 本站作者 【 字体:大 中 小 】
什么是Shell
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
...
需要注意的是,该脚本只能统计文本文件的行数,若有其他类型的文件则会无法处理。
![](/kaifadou/static/images/ndArrow.png)
猜你喜欢
![四根天线和六根天线路由器](/kaifadou/static/images/default.jpg)
四根天线和六根天线路由器
![](/kaifadou/static/images/watch.png)
![平板电脑选固态硬盘(平板可以用固态硬盘吗)](/kaifadou/static/images/default.jpg)
平板电脑选固态硬盘(平板可以用固态硬盘吗)
![](/kaifadou/static/images/watch.png)
![整理笔记本电脑小技巧视频(整理笔记本电脑小技巧视频教程)](/kaifadou/static/images/default.jpg)
整理笔记本电脑小技巧视频(整理笔记本电脑小技巧视频教程)
![](/kaifadou/static/images/watch.png)
![Win7电脑输入法EN删除不了怎么办?](/kaifadou/static/images/default.jpg)
Win7电脑输入法EN删除不了怎么办?
![](/kaifadou/static/images/watch.png)
![王者荣耀铭文攻击和穿透什么好(物理穿透铭文适合哪些英雄)](/kaifadou/static/images/default.jpg)
王者荣耀铭文攻击和穿透什么好(物理穿透铭文适合哪些英雄)
![](/kaifadou/static/images/watch.png)
![电脑音箱没声音耳机就有(电脑音箱没声音耳机就有声)](/kaifadou/static/images/default.jpg)
电脑音箱没声音耳机就有(电脑音箱没声音耳机就有声)
![](/kaifadou/static/images/watch.png)
![巨应动态壁纸英文名(巨应动态壁纸下载)](/kaifadou/static/images/default.jpg)
巨应动态壁纸英文名(巨应动态壁纸下载)
![](/kaifadou/static/images/watch.png)
![我的世界1.16版本的死亡不掉落(我的世界116版本的死亡不掉落指令)](/kaifadou/static/images/default.jpg)
我的世界1.16版本的死亡不掉落(我的世界116版本的死亡不掉落指令)
![](/kaifadou/static/images/watch.png)
![公司电脑主机配置推荐(公司办公电脑什么配置合适)](/kaifadou/static/images/default.jpg)
公司电脑主机配置推荐(公司办公电脑什么配置合适)
![](/kaifadou/static/images/watch.png)
![s11阿柯铭文(艾希铭文s11)](/kaifadou/static/images/default.jpg)
s11阿柯铭文(艾希铭文s11)
![](/kaifadou/static/images/watch.png)
![](/kaifadou/static/images/info2.png)
四川省长称帮一把没找到工作的孩子 每一分钱都花在孩子身上
![四川省长称帮一把没找到工作的孩子 每一分钱都花在孩子身上](http://img.canyinms.com/d/file/kaifadou/202306/nu.jpg)
![](/kaifadou/static/images/info2.png)
重庆中考政治卷出彩礼题引争议 重庆中考出现彩礼问题引发网友争论
![重庆中考政治卷出彩礼题引争议 重庆中考出现彩礼问题引发网友争论](http://img.canyinms.com/d/file/kaifadou/202306/FUZsXDyNJe5QjVm5fZE9Jbqi.jpg)
![](/kaifadou/static/images/info2.png)
9岁女孩被猫抓伤高烧14天 经检查确诊猫抓病
![9岁女孩被猫抓伤高烧14天 经检查确诊猫抓病](http://img.canyinms.com/d/file/kaifadou/202306/GtPaEckovVle9M3C43jqt5pN.jpg)
![](/kaifadou/static/images/info2.png)
9岁女孩被猫抓伤高烧14天是怎么回事 9岁女孩被猫抓伤高烧14天什么情况
![9岁女孩被猫抓伤高烧14天是怎么回事 9岁女孩被猫抓伤高烧14天什么情况](http://img.canyinms.com/d/file/kaifadou/202306/nu.jpg)
![](/kaifadou/static/images/info2.png)
跳河救人小哥被奖8万 获授见义勇为积极分子荣誉称号
![跳河救人小哥被奖8万 获授见义勇为积极分子荣誉称号](http://img.canyinms.com/d/file/kaifadou/202306/lOtOq1cmFx5TR4jqpuuA69Z6.jpg)
![](/kaifadou/static/images/info2.png)
西湖划船刺客运营方被罚12万 西湖游客未满1小时被要求提前下船
![西湖划船刺客运营方被罚12万 西湖游客未满1小时被要求提前下船](http://img.canyinms.com/d/file/kaifadou/202306/Dpo2whmgRvRRSbRr7GsdTQO5.jpg)
![](/kaifadou/static/images/info2.png)
小米回应被印度没收48亿元 一直坚持全球合法合规经营
![小米回应被印度没收48亿元 一直坚持全球合法合规经营](http://img.canyinms.com/d/file/kaifadou/202306/nu.jpg)
![](/kaifadou/static/images/info2.png)
8省份局地最高温或超40℃ 18日后高温影响范围将明显减小
![8省份局地最高温或超40℃ 18日后高温影响范围将明显减小](http://img.canyinms.com/d/file/kaifadou/202306/P4XLpaffV4kNRdUQLpJaREgC.jpg)
![](/kaifadou/static/images/info2.png)
网友一个点子让玩具厂销量200万 扬州玩具厂老板主打一个许愿式创作
![网友一个点子让玩具厂销量200万 扬州玩具厂老板主打一个许愿式创作](http://img.canyinms.com/d/file/kaifadou/202306/qaJdkXtD9mxRpehs1Y8gGxot.jpg)
![](/kaifadou/static/images/info2.png)
女子穿联名汉服进入迪士尼被拦是为什么 上海迪士尼回应穿联名汉服被拦
![女子穿联名汉服进入迪士尼被拦是为什么 上海迪士尼回应穿联名汉服被拦](http://img.canyinms.com/d/file/kaifadou/202306/wv3LFaaLCJZzGRSX51PqZCYS.jpg)