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

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-08-20
我想学genesis脚本编写,不知道有没有这方面的书籍买?

你做这行多久了。不知道你只是了解一下呢。还要做这方面的工作?如果是了解一下。网上大把的教材,如果是做这方面工作呢。那以后的日子将很辛苦。我是深有体会。

问题挺深奥...

具体情况具体分析,实用为主。看需要什么样的脚本,然后写什么样的脚本,不求最精炼最牛X。
对shell一点都不懂? ls 、cd 、mkdir 、rm、grep 、ps 、 cut 、sed ……

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

一件事情,自己想到完成的步骤,然后把步骤写下来就成了。
=======================================================
细节方面:
1.开头第一行要强调解释器(其实不强调也行,因为环境就是bash,但是要有规矩)
#!/bin/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程序的语法了。

3.知道取变量是 $变量名
4.了解几个bash的小技巧:$() 、 ``(shift+~) 、$(()) 、| 、;、……
5.知道if、for、while等一些语法(挺简单的)。
======================================================
其它方面:
还是老话,具体情况具体分析,具体项目具体参考。
好比你要写个 1+1=?的脚本,那么都没必要看什么狗屁的命令,直接变量+变量就行了。
好比写一个定期整理系统日志的脚本,那至少需要知道系统日志在哪儿,查阅该日志需要什么命令,日志文件的格式如何,需要将日志文件内容格式化之后输出吗……等等等等。
好比写一个检查http服务器是否正常的脚本,那至少知道HTTP服务器的配置文件、网络相关的命令……

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

1 常用命令;
2 正则表达式;
2 shell语法;
3 多看书,多收集shell脚本,在实践中写简单的脚本解决。
刚开始可以只学bash,只针对linux来学。
后面的话就要求要跨平台,只用某个通用的子集。

编程需要的是思想,知识的积累
如果仅仅是运用 先从LINUX基础了解起吧 然后看shell就轻松很多
我前天开始学的shell 现在基本的调试shell都能看的7788了

  • 如何入门 Linux Shell 脚本编写 | Linux 中国
    答:通过 chmod 命令赋予脚本执行权限,然后在当前目录下使用 ./myscript.sh 执行。本文示例了脚本的创建和基本操作,包括显示当前目录、时间、空间,以及获取并处理用户输入。希望这些信息对你学习 Linux Shell 脚本编写有所帮助。如果你有任何疑问或反馈,欢迎分享。
  • Linux Shell脚本系列教程:Shell入门
    答:shell脚本的起始行通常是 #!/bin/bash,其中/bin/bash是解释器的路径,用于解释执行后续命令。各命令之间以 换行符 或者 分号 间隔。5.运行脚本 在Ubuntu中,有多中方式可以运行脚本。方法一: bash test.sh,在这种情况下,脚本文件的首行可以不必是”#!/bin/bash”,因为在这种方法下已经指定了解释...
  • Linux之shell脚本编程
    答:Linux shell编程中,Vim编辑器扮演重要角色,它是基于vi发展而来的,具备丰富的编程辅助功能,如代码补全和错误检测,程序员常使用它(RStudio和Python IDE也是常用编辑器)。Vim有i模式用于编辑,切换到命令模式则需按下Esc键,写好后用:wq退出并查看内容。Shell脚本,区分于普通文本文件,通常以.sh结尾。...
  • 怎么写LINUX的SHELL?
    答:echo "your login shell is the bash (bourne again shell)"else echo "your login shell is not bash but $SHELL"fi 变量$SHELL包含了登录shell的名称,我们和/bin/bash进行了比较。快捷操作符熟悉C语言的朋友可能会很喜欢下面的表达式:[ -f "/etc/shadow" ] && echo "This computer uses shadow passwors...
  • linux写shell脚本linux写shell
    答:shell脚本中的or和C语言类似,也是用||(两个竖杠)表示or逻辑。但是在shell脚本中,有严格的执行顺序要求,前一条命令或语句返回false,||的下一条语句或命令才会执行。linux命令SHELL编程:数若大于0则输出该数;若小于或等于0则输出0值的程序怎么写?!/bin/bashecho"Pleaseinputanumber:"#键盘...
  • linux创建shell脚本文件linux创建shell脚本
    答:kalilinux怎么写sh脚本?用vim编辑器创建一个shell脚本文件,在脚本文件里输入需要执行的shell命令,保存脚本文件,并赋执行权限,执行脚本文件即可。shell脚本运行命令?在linux下shell脚本执行命令主要有四种方式,具体介绍如下:方式一:切换到shell脚本所在的目录(也叫工作目录)执行shell脚本,具体代码是:c...
  • 嵌入式 Linux 入门(五、Shell 脚本编程上:认识 Shell 脚本)
    答:最常用的是bash,它是命令解释器,介于内核与用户之间。Linux支持多种Shell,查看系统支持的Shell可通过/etc/shells文件。最后,区分编译型语言(如C)与解释型语言(如Shell脚本)的区别,前者需要编译而后者运行时逐行解释。Shell脚本是解释型语言,它在Linux下的应用主要在批处理、自动化任务等。
  • linux shell环境以及shell脚本
    答:8.执行shell脚本的方法(1)$bash script_file (2)chmod u+x script_file script_file 9当执行一个脚本的时候,Shell就会产生一个子Shell去执行文件。10.sShell脚本的开头,#!/bin/bash 告诉系统用什么解释器去执行脚本 11变量替换扩展 {var-DEFAULT} 如果var没有声明,则用DEFAULT作为其值 {var:-...
  • linux shell脚本执行命令详解
    答:linux shell脚本执行 linux shell脚本执行方法一: 切换到shell脚本所在的目录(此时,称为工作目录)执行shell脚本:cd /data/shell ./hello.sh ./的意思是说在当前的工作目录下执行hello.sh。如果不加上./,bash可能会响应找到不到hello.sh的错误信息。因为目前的工作目录(/data/shell)可能不在执行...
  • linux 怎么进入shell编程模式
    答:1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。2、在linux命令行下输入shell指令:vi test.shell。3、最后,按下回车键执行shell指令,此时发现用vi命令成功进入了shell编程模式中。