标签分类 热门分类
当前位置:首页 > 操作系统电子书 > Linux电子书网盘下载
Linux Bash编程与脚本应用实战 Linux Bash编程与脚本应用实战
32019341

32019341 提供上传

资源
27
粉丝
25
喜欢
132
评论
16

    Linux Bash编程与脚本应用实战 PDF 高清版

    Linux电子书
    • 发布时间:

    给大家带来的一篇关于Linux相关的电子书资源,介绍了关于Linux、Bash、编程、脚本应用方面的内容,本书是由清华大学出版社出版,格式为PDF,资源大小77.1 MB,马玉军,郝军编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.2,更多相关的学习资源可以参阅 操作系统电子书、等栏目。

  • Linux Bash编程与脚本应用实战 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1AX0-ZA6wqTPa4fb475DWQ
  • 分享码:z746
  • Linux Bash编程与脚本应用实战》从实际的应用场景出发,深入浅出地介绍了编写 Shell脚本所包含的各项常用技术,使读者在不知不觉中就能掌握 Shell脚本的编写和使用技巧,是 Shell脚本编程开发初学者的绝佳首选。

    目录

    • 第1章学习Shell的背景知识——Linux系统.1
    • 1.1Linux系统基础1
    • 1.1.1Linux系统的发展.1
    • 1.1.2Linux系统和Windows系统的区别2
    • 1.1.3Linux的启动过程.2
    • 1.2Linux文件系统基础介绍5
    • 1.2.1必须了解的节点inode6
    • 1.2.2Linux系统文件结构.7
    • 1.3学会Linux系统的基本使用.10
    • 1.3.1系统的登录与退出10
    • 1.3.2系统基本选项配置12
    • 1.3.3文本编辑器的使用13
    • 1.4走进Shell.18
    • 1.4.1什么是Shell.19
    • 1.4.2Shell在Linux系统中的作用.19
    • 1.4.3Shell的种类.20
    • 1.5小结.21
    • 第2章迈出Shell脚本编程第一步22
    • 2.1Shell脚本语言概述.22
    • 2.1.1Shell脚本语言的定义.22
    • 2.1.2Shell终端的基本使用.23
    • 2.1.3Shell终端菜单的使用.23
    • 2.2Shell命令格式介绍.24
    • 2.2.1Shell命令格式.24
    • 2.2.2命令行界面介绍25
    • 2.2.3如何获取帮助26
    • 2.3第一个Shell程序:Hello,BashShell!28
    • 2.3.1创建Shell脚本28
    • 2.3.2Shell脚本中的格式介绍.31
    • 2.3.3如何执行Shell程序32
    • 2.4小结.33
    • 第3章Shell常用命令大演练34
    • 3.1Shell命令使用基础.34
    • 3.1.1文件类型34
    • 3.1.2绝对路径和相对路径35
    • 3.1.3文件属性和文件权限36
    • 3.1.4用户和用户组36
    • 3.1.5特殊目录介绍39
    • 3.2用户和用户组管理.40
    • 3.2.1用户管理常用命令40
    • 3.2.2用户组管理常用命令43
    • 3.2.3其他常用命令45
    • 3.3文件和目录操作.48
    • 3.3.1文件操作常用命令48
    • 3.3.2目录操作常用命令52
    • 3.3.3文件权限管理常用命令56
    • 3.3.4查找文件常用命令58
    • 3.4系统管理相关.60
    • 3.4.1网络操作常用命令60
    • 3.4.2系统资源管理常用命令63
    • 3.4.3磁盘信息查看常用命令66
    • 3.5小结.67
    • 第4章Shell脚本中的变量68 [2]
    • 4.1变量的简单使用.68
    • 4.1.1变量的使用68
    • 4.1.2变量的输入和输出70
    • 4.1.3变量的输出命令echo.74
    • 4.2Shell中特殊变量的使用.78
    • 4.2.1位置参数介绍78
    • 4.2.2$@和$*的区别79
    • 4.3环境变量的使用.80
    • 4.3.1Shell中的环境变量.80
    • 4.3.2环境变量的配置文件83
    • 4.3.3全局环境变量和本地环境变量86
    • 4.3.4环境变量的设定87
    • 4.3.5环境变量的取消89
    • 4.4小结.89
    • 第5章Shell脚本中的特殊符号.90
    • 5.1引号的使用.90
    • 5.1.1单引号的使用90
    • 5.1.2双引号的使用91
    • 5.1.3倒引号的使用92
    • 5.2通配符和元字符.93
    • 5.2.1使用通配符93
    • 5.2.2使用元字符96
    • 5.3管道.99
    • 5.4其他特殊字符介绍.100
    • 5.4.1后台运行符100
    • 5.4.2括号101
    • 5.4.3分号103
    • 5.5小结.103
    • 第6章Linux中的文件处理.105
    • 6.1Linux中的文件类型105
    • 6.1.1设备文件106
    • 6.1.2设备文件的挂载和卸载107
    • 6.1.3链接文件111
    • 6.1.4文件描述符113
    • 6.2标准输入、输出与错误.114
    • 6.2.1标准输入114
    • 6.2.2标准输出和标准错误114
    • 6.3重定向.114
    • 6.3.1重定向的定义115
    • 6.3.2输入重定向115
    • 6.3.3输出重定向117
    • 6.4合并标准输出和标准错误119
    • 6.5小结.120
    • 第7章Shell脚本中的分支结构.121
    • 7.1测试命令的使用.121
    • 7.1.1测试命令的基础结构121
    • 7.1.2测试文件类型123
    • 7.1.3测试字符串127
    • 7.1.4测试数值128 [2]
    • 7.1.5复合测试条件129
    • 7.2if分支结构.131
    • 7.2.1if-then结构.131
    • 7.2.2if-then-else结构132
    • 7.2.3嵌套结构134
    • 7.3case多条件分支结构.136
    • 7.3.1case结构基础137
    • 7.3.2在Shell脚本中使用case结构.138
    • 7.3.3select命令的使用139
    • 7.4小结.140
    • 第8章Shell中的循环结构142
    • 8.1for循环.142
    • 8.1.1使用for-in结构.142
    • 8.1.2C式for结构.145
    • 8.2while命令的使用.148
    • 8.2.1使用while结构.148
    • 8.2.2多条件的while结构.149
    • 8.2.3使用until命令149
    • 8.3命令的嵌套.151
    • 8.3.1for命令的嵌套151
    • 8.3.2while命令的嵌套154
    • 8.3.3until命令的嵌套.156
    • 8.4循环控制符.157
    • 8.4.1使用break中断.157
    • 8.4.2使用continue继续159
    • 8.5小结.160
    • 第9章Shell中的函数.162
    • 9.1函数的基本用法.162
    • 9.1.1函数的创建与使用162
    • 9.1.2函数的参数164
    • 9.2函数的返回值.165
    • 9.2.1返回值基础165
    • 9.2.2函数的默认返回值166
    • 9.2.3return命令的使用.167
    • 9.2.4使用函数的返回值168
    • 9.3函数中的全局变量和局部变量169
    • 9.3.1全局变量169
    • 9.3.2局部变量170
    • 9.4数组与函数.171
    • 9.4.1数组作为函数参数171
    • 9.4.2数组作为函数返回值172
    • 9.5脚本函数递归.173
    • 9.6函数的嵌套调用.174
    • 9.7小结.176
    • 第10章Shell脚本编写技巧177
    • 10.1脚本编写规范.177
    • 10.1.1命名规范177
    • 10.1.2注释风格178
    • 10.1.3其他需要注意的规范180
    • 10.2脚本优化.181
    • 10.2.1Shell脚本优化原则.181
    • 10.2.2提供足够的提示信息182
    • 10.3脚本使用技巧.184
    • 10.3.1命令选项说明184
    • 10.3.2算术运算184
    • 10.3.3高级算术运算187
    • 10.4小结.188
    • 第11章正则表达式189
    • 11.1正则表达式基础.189
    • 11.1.1正则表达式的定义189
    • 11.1.2正则表达式的分类190
    • 11.2基本正则表达式的常用符号190
    • 11.2.1使用点字符匹配单字符190
    • 11.2.2使用定位符191
    • 11.2.3使用“*”匹配字符串中的单字符或其重复序列193
    • 11.2.4使用“\”屏蔽一个特殊字符的含义.194
    • 11.3扩展正则表达式的常用符号195
    • 11.3.1使用“[]”匹配一个范围或集合.195
    • 11.3.2使用“\{\}”匹配模式结果出现的次数196
    • 11.3.3问号的使用197
    • 11.4小结.197
    • 第12章Shell中的文本搜索工具——grep家族199
    • 12.1grep的基础使用199
    • 12.1.1grep命令的基本使用方式199
    • 12.1.2grep选项200
    • 12.1.3行数201
    • 12.1.4大小写敏感202
    • 12.1.5显示非匹配行203
    • 12.1.6查询多个文件或多个关键字205
    • 12.2grep和正则表达式206
    • 12.2.1模式范围以及范围组合206
    • 12.2.2定位符的使用207
    • 12.2.3字符匹配208 [2]
    • 12.2.4模式出现几率209
    • 12.2.5匹配特殊字符210
    • 12.3grep命令的扩展使用211
    • 12.3.1类名的使用211
    • 12.3.2egrep命令的使用212
    • 12.3.3fgrep命令的使用213
    • 12.4grep命令使用实例214
    • 12.4.1目录搜索——查找特定目录或文字214
    • 12.4.2使用ps命令检索特定的进程215
    • 12.5小结.216
    • 第13章sed编程217
    • 13.1认识sed217
    • 13.1.1sed工作模式.217
    • 13.1.2sed常用指令.218
    • 13.1.3sed常用选项.219
    • 13.1.4sed地址范围.220
    • 13.2sed编辑器常用命令221
    • 13.2.1替换命令的使用221
    • 13.2.2删除命令的使用223
    • 13.2.3文本的添加和替换224
    • 13.3高级sed编程.225
    • 13.3.1同时处理多行数据225
    • 13.3.2sed编辑器的空间.226
    • 13.3.3sed编辑器的反向.227
    • 13.3.4重定向sed的输出228
    • 13.4小结.229
    • 第14章gawk编程230
    • 14.1gawk概述.230
    • 14.1.1gawk基本介绍230
    • 14.1.2gawk基本使用232
    • 14.2变量的使用.234
    • 14.2.1内置变量的使用234
    • 14.2.2自定义变量的使用236
    • 14.2.3数组的使用237
    • 14.3结构的使用.238
    • 14.3.1条件结构的使用238
    • 14.3.2循环结构的使用241
    • 14.3.3循环结构控制语句243
    • 14.4函数的使用.244
    • 14.4.1算术函数的使用244
    • 14.4.2字符串处理函数的使用246
    • 14.4.3时间函数的使用247
    • 14.5小结.249
    • 第15章脚本控制250
    • 15.1Linux信号控制250
    • 15.1.1Linux信号机制简介.250
    • 15.1.2使用Shell脚本操作信号252
    • 15.2进程的控制.254
    • 15.2.1后台运行符介绍254
    • 15.2.2运行进程的控制255
    • 15.2.3nohup命令的使用.257
    • 15.3脚本运行的优先级.258
    • 15.3.1优先级介绍258
    • 15.3.2使用nice指定优先级.259
    • 15.3.3使用renice重置优先级260
    • 15.4小结.261
    • 第16章脚本运行的优化.262
    • 16.1添加窗口.262
    • 16.1.1dialog软件的安装.262
    • 16.1.2dialog命令的帮助选项.263
    • 16.1.3dialog命令的使用.264
    • 16.2dialog常用窗口的使用.268
    • 16.2.1消息窗口268
    • 16.2.2yesno窗口.269
    • 16.2.3文本框的使用271
    • 16.2.4菜单的使用272
    • 16.3颜色的使用.273
    • 16.4创建菜单.276
    • 16.4.1在Shell脚本中创建菜单277
    • 16.4.2创建子菜单函数278
    • 16.4.3脚本的整合279
    • 16.5小结.280
    • 第17章Shell实战之系统管理281
    • 17.1系统监测.281
    • 17.1.1系统监控基础281
    • 17.1.2Ubuntu自带的系统监控工具.284
    • 17.1.3监控脚本的编写286
    • 17.2计划任务的实现.287
    • 17.2.1at命令的使用287
    • 17.2.2atq命令的使用292
    • 17.2.3cron的使用293
    • 17.3网络管理.295
    • 17.3.1网络配置295
    • 17.3.2服务器的安装299
    • 17.4日志管理.301
    • 17.4.1日志简介302
    • 17.4.2守护进程syslogd.303
    • 17.4.3日志的备份操作305
    • 17.4.4日志的定时操作306
    • 17.5小结.307
    • 第18章Shell实战之数据库操作.308
    • 18.1Linux系统中的数据库308
    • 18.1.1SQLite简介.308
    • 18.1.2SQLite的图形化操作.311
    • 18.1.3MySQL简介314
    • 18.2SQL语句316
    • 18.2.1SQL语言基本介绍.316
    • 18.2.2基本的SQL操作317
    • 18.2.3在Shell脚本中执行SQL语句319
    • 18.3图书管理系统中数据库操作实例320
    • 18.3.1数据库操作基本流程321
    • 18.3.2创建表321
    • 18.3.3增加图书信息322
    • 18.3.4修改图书信息323
    • 18.3.5删除图书信息324
    • 18.4小结.324 [2]

    上一篇:一本书读懂TCP/IP  下一篇:Android开发实战:从学习到产品

    展开 +

    收起 -

     
    Linux 相关电子书
    关于Linux的学习笔记
    网友NO.875826

    如何给ss bash 写一个 WEB 端查看流量的页面

    由于刚毕业的穷大学生,和朋友合租了一台服务器开了多个端口提供 ss 服务,懒得配置 ss-panel,就使用了 ss-bash 来监控不同端口的流量,但每次都要等上服务器才能看到流量使用情况,很麻烦,于是就写了个简单的页面来提供 WEB 访问。 JavaScript 版本 用 crontab 定时把流量记录文件复制到 WEB 目录下,写个 JS 脚本作数据处理。 function successFunction(data) { var allRows = data.split(/\r?\n|\r/); var table = 'table class="table table-hover" '; for (var singleRow = 0; singleRow allRows.length; singleRow++) { if (singleRow === 0) { table += 'thead'; table += 'tr'; } else { table += 'tr'; } var rowCells = allRows[singleRow].split(','); for (var rowCell = 0; rowCell rowCells.length; rowCell++) { if (singleRow === 0) { table += 'th class="text-right"'; table += rowCells[rowCell]; table += '/th'; } else { table += 'td class="text-right"'; table += rowCells[rowCell]; table += '/td'; } } if (singleRow === 0) { table += '/tr'; table += '/thead'; table += 'tbody'; } else { table += '/tr'; } } table += '/tbody'; table += '/table'; $('body').append(table);} 首页 !DOCTYPE htmlhtmlhead titleTraffic/title script src=//cdn.bootcss.com/jquery/3.2.0/jquery.min.js/script link href="//cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" script src="//cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"/script script src="test.j……

    网友NO.952425

    检查mysql是否成功启动的方法(bat+bash)

    很多朋友更喜欢windows下面的可以参考下面的代码 第一种方法:也比较普遍的方法,包括rsync、serv_u等都可以,通过查找进程中的exe文件,例如mysql就是mysqld.exe @echo off for /f "usebackq" %%i in (`"tasklist|find /c "mysqld.exe""`) do ( set chkstat=%%i ) if %chkstat% == 0 ( net start mysqlecho ================ %date:~0,10%.log echo %date% %time% check mysql service stop %date:~0,10%.log echo restart mysql service! %date:~0,10%.log echo ================ %date:~0,10%.log ) 第二种方法: @echo offfor /f "skip=3 tokens=4" %%i in ('sc query mysql') do set "zt=%%i" gt; $EMAILMESSAGEecho "when we were expected $expected" $EMAILMESSAGE# send an email using /bin/mailmail -s "$SUBJECT" "$EMAIL" $EMAILMESSAGE sudo /etc/init.d/mysql restartfi 方法二、 #!/bin/bash#mysql checkPORT="0"PORT=`netstat -lnt | grep 3306 | wc -l `echo $PORTif [ $PORT -eq 1 ] thenecho "mysql is running"elseecho "mysql is not running"echo "progrome reeady to start mysql "sudo service mysql start./check_mysql.shfi ……

    网友NO.354139

    python 捕获 shell/bash 脚本的输出结果实例

    #!/usr/bin/python ## get subprocess module import subprocess ## call date command ## p = subprocess.Popen("date", stdout=subprocess.PIPE, shell=True) ## Talk with date command i.e. read data from stdout and stderr. Store this info in tuple ## Interact with process: Send data to stdin. Read data from stdout and stderr, ## until end-of-file is reached.Wait for process to terminate. The optional input ## argument should be a string to be sent to the child process, or None, ## if no data should be sent to the child. ## (output, err) = p.communicate() ## Wait for date to terminate. Get return returncode ## p_status = p.wait() print "Command output : ", output print "Command exit status/return code : ", p_status ## from: http://www.cyberciti.biz/faq/python-run-external-command-and-get-output/ 以上就是小编为大家带来的python 捕获 shell/bash 脚本的输出结果实例全部内容了,希望大家多多支持码农之家~ ……

    网友NO.481999

    解决bash: mysql: command not found 的方法

    root@DB-02 ~]# mysql -u root -bash: mysql: command not found 原因:这是由于系统默认会查找/usr/bin下的命令,如果这个命令不在这个目录下,当然会找不到命令,我们需要做的就是映射一个链接到/usr/bin目录下,相当于建立一个链接文件。 首先得知道mysql命令或mysqladmin命令的完整路径,比如mysql的路径是:/usr/local/mysql/bin/mysql,我们则可以这样执行命令: # ln -s /usr/local/mysql/bin/mysql /usr/bin 以下是补充: linux下,在mysql正常运行的情况下,输入mysql提示: mysql command not found 遇上-bash: mysql: command not found的情况别着急,这个是因为/usr/local/bin目录下缺失mysql导致,只需要一下方法建立软链接,即可以解决: 把mysql安装目录,比如MYSQLPATH/bin/mysql,映射到/usr/local/bin目录下: # cd /usr/local/bin # ln -fs /MYSQLPATH/bin/mysql mysql 还有其它常用命令mysqladmin、mysqldump等不可用时候都可按用此方法解决。 注:其中MYSQLPATH是mysql的实际安装路径 ……

    Copyright 2018-2020 xz577.com 码农之家

    电子书资源由网友、会员提供上传,本站记录提供者的基本信息及资源来路

    鸣谢: “ 码小辫 ” 公众号提供回调API服务、“ 脚本CDN ”提供网站加速(本站寻求更多赞助支持)

    版权投诉 / 书籍推广 / 赞助:520161757@qq.com

    上传资源(网友、会员均可提供)

    查看最新会员资料及资源信息