您当前的位置:首页 > 互联网教程

学习linux shell下的编程有什么用

发布时间:2025-05-21 10:57:57    发布人:远客网络

学习linux shell下的编程有什么用

一、学习linux shell下的编程有什么用

1.尝试一下的人,只需要用上两三天就可以和linux说886。因为普通初学者都不会喜欢linux的。 2.纯粹喜欢linux的人,虽然起初入门很慢,但是渐渐的,他会发现linux有很多让他很爽的地方,并且,越学越爽。 3.(工作或者读书等)需要学习linux的人,需要系统的学习一下,最好有一本好的书来学习。 linux是世界各地的黑客们写出来的开源系统,对于热爱学习计算机技术(算法、数据结构、编程、操作系统……)的人来说,linux是一个天堂。我个人就是完全因为兴趣而捣鼓linux,和工作不沾边。有几种不同的学习: a)使用->需要学习linux的一些历史、各种命令、桌面的操作、shell的知识 b)编程->学习linux的接口 c)系统管理->学习一些管理员需要掌握的命令 d)内核、源码->先要学好操作系统原理,然后慢慢钻研。 linux是一个很奇怪的东西,因为你知道的越多,你的问题就越多。如果你将来用的上,那么学习linux自然有用。如果用不上,学习linux的作用在于折腾你的精力、开拓你的思维、视野、提高自学能力。从你付出的机会成本的角度来说,学习linux不合算,因为你应该把有限的时间用来学习对你更重要的东西,而不是不沾边的linux。除非把linux当作一种爱好。所谓“衣带渐宽终不悔,为伊消得人憔悴”。自然是另一番感受。当你用shell编写个自己能用上的脚本你就知道有用拉而且还老有成就感拉比如你需要搜索全盘文件,把大写名字改为小写,这样的程序用几行shell就能写,但是无论C还是其它语言都非常麻烦,手工修改就更麻烦。明白shell程序设计的用处吗,任何一种语言都有他自己的适用领域。

二、linux应该如何去学习

1、想要学习好Linux就要将它当成兴趣,兴趣才是最好的老师。良好的兴趣才是学习成功好的开始,想要学习好首先就要足够喜欢它。我们要了解市场上Linux的发展势头,了解Linux的相关情况,相信学习好Linux一定要是非常不错的选择。

2、学习合适的Linux发行版本,在开始学习Linux之前,首先就是选择一个适合自己的版本,Linux旗下发行版本有服务器版本以及桌面版本,而且桌面版本也可以做服务的,为了以后找工作需要的。常见的Linux发行版本有centos

3、选择好Linux学习版本之后,还需要合适的学习资料以及内容,可以到相关的Linux社群看看专业人员的学习机器以及学习手册,了解真正相关的知识。

4、学习Linux架构以及命令,linux下都是通过命令来执行的,要学会用man和命令帮助,熟悉各种常见命令的操作。

5、学习shell脚本,对于专业的Linux人员来说,shell脚本是必须要掌握的。shell脚本是linux下强大的工具,可以通过各种命令组合完成自己的工作,提升自己的工作效率。

三、想编写linux下的shell脚本,首先需要看程序之类的书作为基础

具体情况具体分析,实用为主。看需要什么样的脚本,然后写什么样的脚本,不求最精炼最牛X。

对shell一点都不懂? ls、cd、mkdir、rm、grep、ps、 cut、sed……

bash脚本不就是把一系列连贯的操作事先写在一个*.sh文件里,然后运行吗。

一件事情,自己想到完成的步骤,然后把步骤写下来就成了。

=======================================================

1.开头第一行要强调解释器(其实不强调也行,因为环境就是bash,但是要有规矩)

其中“#!”是指定解释器的意思,比如写Python程序的时候不也得需要加在第一行#!/usr/bin/python吗。

2.熟悉几个对文本操作的程序,比如 sed、awk等,够用即可。

echo 2010080405001| sed's/\([0-9]\{4\}\)\([0-9]\{2\}\)\([0-9]\{2\}\)\([0-9]\{2\}\)/\1:\2:\3:\4:/'是什么意思?

就是把2010080405001输出成2010:08:04:05:001这个样子。

很可怕吗?其实——竖杠是管道标识,反斜杠表示“转义”(C语言里一个意思),[]表示选择([0-9]就是0-9其中任意的数字),{}表示块儿,其它的格式比如就是sed程序的语法了。

4.了解几个bash的小技巧:$()、 ``(shift+~)、$(())、|、;、……

5.知道if、for、while等一些语法(挺简单的)。

======================================================

还是老话,具体情况具体分析,具体项目具体参考。

好比你要写个 1+1=?的脚本,那么都没必要看什么狗屁的命令,直接变量+变量就行了。

好比写一个定期整理系统日志的脚本,那至少需要知道系统日志在哪儿,查阅该日志需要什么命令,日志文件的格式如何,需要将日志文件内容格式化之后输出吗……等等等等。

好比写一个检查http服务器是否正常的脚本,那至少知道HTTP服务器的配置文件、网络相关的命令……

==============================

bash脚本的语法不是重点。无论怎样,以实用为宗旨,需要什么,资料一查,马上ok,什么叫不懂,查的多了,不懂也比懂的会写脚本。