参考: http://linux.vbird.org/linux_basic/0340bashshell-scripts.php#script_be http://www.runoob.com/linux/linux-tutorial.html 12.1 什么是 Shell scripts 什么是 shell script (程序化脚本) 呢?就字面上的意义,我们将他分为两部份. 在“ shell”部分,我们在 十章的 BASH 当中已经提过了,那是一个命令行下面让我们与系统沟通的一个工具接口.…
12.4 条件判断式 只要讲到『程式』的话,那么条件判断式,亦即是『 if then 』这种判别式肯定一定要学习的!因为很多时候,我们都必须要依据某些资料来判断程式该如何进行.举例来说,我们在上头的ans_yn.sh 讨论输入回应的范例中不是有练习当使用者输入Y/N时,必须要执行不同的讯息输出吗?简单的方式可以利用&&与|| ,但如果我还想要执行一堆指令呢?那真的得要if then来帮忙啰-底下我们就来聊一聊! Top 12.4.1 利用if .... then 这个if .... the…
参考: http://linux.vbird.org/linux_basic/0340bashshell-scripts.php#script_be http://www.runoob.com/linux/linux-tutorial.html 12.3 善用判断式 在第十章中,我们提到过$?这个变数所代表的意义,此外,也透过&&及|| 来作为前一个指令执行回传值对于后一个指令是否要进行的依据.第十章的讨论中,如果想要判断一个目录是否存在,当时我们使用的是ls这个指令搭配资料流重导向,最后…
参考: http://linux.vbird.org/linux_basic/0340bashshell-scripts.php#script_be http://www.runoob.com/linux/linux-tutorial.html 12.2 简单的 shell script 练习 在第一支 shell script 撰写完毕之后,相信你应该具有基本的撰写功力了.接下来,在开始更深入的程序概念之前,我们先来玩一些简单的小范例好了. 下面的范例中,达成结果的方式相当的多,建议你先自行撰…
目录 目录 前言 关于这本书 必看知识点 最后 前言 相信部分刚进入这个行业的新同学会对一个问题感到疑惑,为什么从培训学校出来的学员不被欢迎? 这里记录下一些我个人的看法(博主也曾有面试新员工的经历):说到底还是一个学习能力的问题.就这一点,从我的经历看来(曾到多家企业培训新人),培训出身的技术人员大体而言确实没有科班出身的学得更快准狠一些.学习能力这个东西其实比较虚,它并没有一个直观的考量方式,所以企业一般都会简单粗暴的使用学历.专业.项目经验来衡量.这之间反映了你的计算机知识框架是否完善.基…
 首先说明,本周活动有效时间为2016年10月19日到2016年10月31日.   目在介绍这本书之前,首先要感谢QQ号为:1084830483(路在远方),来自哈尔滨工程大学的同学赠送给玄魂工作室的读者的. 前言/序言 对于这本书,我觉得无需过多的介绍,它是陪伴很多人入门linux的,<鸟哥的Linux私房菜>系列,常年畅销,经久不衰.这次要送给大家的是一本台湾原版书,超级厚. 这本经典书籍,我就不过多啰嗦了,如果你没听说过,请百度就好了.下面进入主题. 如果你心动了,如何得到本书呢? 1.…
最近,一直在写PPC的模拟器和汇编器,也在做设计.所以重新看了看<鸟哥的Linux私房菜>,还是有好多命令不太熟悉.就打算写几篇blog记下来. 1. nl [-bnw] filename:添加行号打印参数:-b:指定行号指定的方式,主要有两种: -b a:表示不论是否为空行,也同样列出行号(类似cat -n): -b t:如果有空行,空的那一行不要列出行号(默认值).-n:列出行号表示的方法,主要有三种: -n ln:行号在屏幕的最左方显示: -n rn:行号在自己字段的最右方显示,且不加0…
第2章 Linxu怎样学习         1. Linux当前的应用角色 当前的Linux常见的应用可略分为企业应用和个人应用双方面. 首先谈了企业环境的利用. 1)网络server. 2)关键任务的应用(金融数据库.大型企业网管环境). 3)学术机构的高性能运算任务. 然后谈了个人环境的使用. 1)桌面计算机.X Window System仅仅仅是Linux上面的一套软件,而不是内核. 2)手持系统(PDA.手机). 3)嵌入式系统.         2. 鸟哥的Linux苦难经验回顾录 首…
上一篇文章主要从理论上分析了Linux的Ext2文件系统.这一篇主要解说怎样查看Linux的文件系统的容量以及解说Linux文件系统中的连接文件. 能够通过df和du命令来查看磁盘与文件夹的容量.df命令用来列出文件系统的总体磁盘容量,df命令的使用方法是 df  [-ahikHTm]  文件夹或文件名称.假设df命令不加不论什么參数,则默认将系统内全部的文件系统的容量以及使用情况都列出来.关于df命令还须要说明的是 df命令是查看文件系统的总体使用情况,因此是从Super block(见前一篇…
第3章 主机规划与磁盘分区        1. Linux与硬件的搭配        首先谈了认识计算机的硬件配置. 然后谈了选择与Linux搭配的主机配置. 在Linuxserver中,内存的重要性比CPU还要高得多. 最后说了各硬件设备在Linux中的文件名称.在Linux系统中.差点儿全部的硬件设备文件都在/dev这个文件夹内. 1)IDE硬盘:/dev/hd[a-d] 2)SCSI/SATA/USB硬盘:/dev/sd[a-p] 3)U盘:/dev/sd[a-p] 4)软驱:/dev/f…
1.当执行一个指令的时候,举例来说[ls],系统会依照PATH的设定去每个PATH定义的目录下搜寻文件名为ls的可执行文件,如果在PATH定义的目录中含有多个文件名为ls的可执行文件,那么先搜寻到的同名指令先被执行! 2.使用echo $PATH可以查看那些目录被定义了.echo 有[显示.印出]的意思,而PATH 前面加上的 $ 表示后面接的是变量. 3.shell script 是利用shell 的功能所写的一个[程序program],这个程序是使用纯文本文件,将一些shell的语法与指令(…
猫宁~~~ 建议全程在centos7中进行,我在kali linux中有些命令无法执行. 1~家目录下创建bin文件,test.sh文件在bin目录 下面的shell代码打印Hello World! #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH echo -e "Hello China! \a \n" exit 0 2~输入名称,变量前空格一…
at 语法 == 注意,输入at之后便进入命令行模式 ------- 不管怎么样,只会执行一次. [test @test test]# at [-m] TIME (输入工作指令)[test @test test]# atq (查看当前工作流程)[test @test test]# atrm [jobnumber] (删除流程) -m :执行at规范的工作流程时,将屏幕输出结果mail给输入指令的用户TIME :时间格式,有如下几个: ================== 格式有多种,但没有可以间…
第5章 首次登陆与在线求助man page        1. 首次登陆系统        首先谈了首次登陆CentOS 5.x界面.登陆选项中的会话是能够使用不同的图形界面来操作整个Linux系统.默认至少提供了GNOME/KDE两种图形界面. 随后谈到了GNOME的操作与注销.个人主目录是在/home以下的.GNOME的资源管理器事实上称为"鹦鹉螺".文件名称以小数点"."开头的文件是隐藏文件. 注销能够让你的账号离开系统,但并非关机. 接着谈了KDE的操作与注…
第一章 Linux是什么 1.Linux是什么 一套操作系统 早期的Linux是针对386开发的 具有可移植性 2.Unix及Linux的发展史 1973年,Unix诞生,Ritchie等人以C语言写出第一个Unix内核 1977年,在Unix基础上对内核源码修改,增加了许多工具软件和编译程序,BSD(Berkeley Software Distribution)诞生 1984年,x86架构的Minix操作系统诞生 1984年,GNU(GNU's not Unix)项目和FSF(Free Sof…
1.Unix的前身是由贝尔实验室(Bell lab.)的Ken Thompson利用汇编语言写成的, 后来在1971-1973年间由Dennis Ritchie以C程序语言进行改写,才称为Unix. 2.1977年由Bill Joy释出BSD (Berkeley Software Distribution),这些称为Unix-like的操作系统. 3.1984年由Andrew Tanenbaum制作出Minix操作系统,该系统可以提供原始码以及软件. 4.1984年由Richard Stallm…
1. useradd [-u UID] [-g 初始用户组] [-G 次要用户组] [-mM]\   [-c 说明栏] [-d 主文件夹绝对路径] [-r] [-s shell] 用户账号名:新增用户.参数:-u:后面接UID,是一组数字,直接指定一个特定的UID给这个账号:-g:后面接初始用户组,该用户组的GID会被放置到/etc/passwd的第四个字段:-G:后面接这个账号还可以加入的用户组:-M:强制,不创建用户主文件夹(系统账号默认值):-m:强制,创建用户主文件夹(一般账号默认值):…
1. test命令的测试功能.测试的标志:(1)关于文件类型的检测 test [-efdbcSpL] filename-e:该文件名是否存在:-f:该文件名是否为文件:-d:该文件名是否为目录:-b:该文件名是否存在且为一个block device设备:-c:该文件名是否存在且为一个character device设备:-S:该文件名是否存在且为一个Socket文件:-p:该文件名是否存在且为一个FIFO文件:-L:该文件名是否存在且为一个连接文件.(2)关于文件权限的检测 test [-r]…
1. type [-tpa] name:查看name命令是否为bash内置命令.参数:type:不加任何参数,type会显示出那么是外部命令还是bash的内置命令:-t:当加入-t参数时,type会通过如下关键字显示其意义: file:表示为外部命令 alias:表示为命名别名 builtin:表示为bash的内置命令-p:如果后面接的name为外置命令时,才会显示完整文件名:-a:会由PATH变量定义的路径中,将含有name的命令都列出来,包含别名. 2. unset name:取消变量名na…
1. gzip [-cdtv#] filename:压缩.参数:-c:将压缩的数据输出到屏幕上,可通过数据重定向进行处理:-d:解压缩的参数:-t:可以用来检验一个压缩文件的一致性,查看文件有无错误:-v:可以显示出原文件/压缩文件的压缩比等信息:-#:压缩等级,1最快(压缩比最差),9最慢(压缩比最好),默认6. 2. zcat *.gz:读取gzip压缩文件. 3. bzip2 [-cdkzv#] filename:压缩.参数:-c:将压缩过程中产生的数据输出到屏幕上:-d:解压缩的参数:-…
第4章 安装CentOS 5.x与多重引导小技巧        1. 本练习机的规划(尤其是分区參数)        分了四个分区: 1)/boot:primary 2)/:primary 3)/home:primary 4)swap:logical        2. 開始安装CentOS 5 首先谈了调整启动媒体(BIOS).        然后谈了选择安装结构与开机. 建议使用图形界面来安装就可以. 接着谈了选择语系数据.选择中文简体的语言和美国英语式的键盘. 又谈了磁盘分区.使用"建立自…
权限!权限!权限! 没有权限,一些资源你是没办法使用的.在Linux中cat filename,结果屏幕显示了filename的内容,为什么你能看见,而我不能?权限.与UID/GID有关,与文件的属性有关,同时与process进程也有关. 在Linux上敲一个命令,实质上是一些二进制文件在执行,也可以说是程序,而二进制文件在运行时,都会产生一个进程,操作系统就是通过进程来管理访问资源,达到效果. 1.进程是如何产生的?有哪些关键要素? 在用户cat命令时,触发事件,则将硬盘内的cat二进制文件加…
1. 直接将命令丢到后台中执行“&”,在命令最后加“&”.    将目前的工作丢到后台中暂停:[Ctrl]+z 2. jobs [-lrs]:查看目前的后台工作状态.参数:-l:除了列出job number与命令串外,同时列出PID号码:-r:列出正在后台run的工作:-s:列出正在后台stop的工作. 3. fg %jobnumber:把后台的工作拿到前台执行.参数:无参数:默认去除含+的工作:%jobnumber:jobnumber是工作号码,%可省略. 4. bg %jobnumbe…
1. at [-mldv] TIME/at -c 工作号码:单一工作调度.参数:-m:当at的工作完成后,即使没有输出信息,以email通知用户该工作已完成:-l:相当于atq,列出目前系统上面的所有该用户的at调度:-d:相当于atrm,可以取消一个在at调度中的工作:-v:可以使用较明显的时间格式列出at调度中的任务列表:-c:可以列出后面接的工作的实际命令内容.TIME时间格式:HH:MM:在今日的HH:MM时刻进行,若已经超过该时刻,则明天的HH:MM进行该工作:HH:MM YYYY-M…
1. quotacheck [-avugfM] [/mount_point]:扫描文件系统并创建Quota配置文件.参数:-a:扫描所有在/etc/mtab内,含有quota支持的文件系统,加上此参数后,不必写/mount_point:-u:针对用户扫描文件与目录的使用情况,会新建aquota.user:-g:针对用户组扫描文件与目录的使用情况,会新建aquota.group:-v:显示扫描过程的信息:-f:强制扫描文件系统,并写入新的quota配置文件(危险):-M:强制以读写的方式扫描文件系…
1. 正则表达式特殊符号.[:alnum:]:代表英文大小写字符及数字:[:alpha:]:代表英文大小写字符:[:blank:]:代表空格键与[Tab]键:[:cntrl:]:代表键盘上的控制键,即包括CR.LF.Tab.Del键:[:digit:]:代表数字:[:graph:]:除了空格符外的其他所有按键:[:lower:]:代表英文小写字符:[:print:]:代表任何可以被打印出来的字符:[:punct:]:代表标点符号,即"'?!;:#$:[:upper:]:代表英文大写字符:[:sp…
1. VI按键说明.(1)移动光标的方法h或向左箭头:光标向左移动一个字符:j或向下箭头:光标向下移动一个字符:k或向上箭头:光标向上移动一个字符:l或向右箭头:光标向右移动一个字符:进行多次移动,如向左移动30行,可以使用“30k”或者“30<-”[ctrl]+[f]:屏幕向下移动一页:[ctrl]+[b]:屏幕向上移动一页:[ctrl]+[d]:屏幕向下移动半页:[ctrl]+[u]:屏幕向上移动半页:+:光标移动到非空格的下一行:-:光标移动到非空格的上一行:n[space]:n表示数字,…
1. dumpe2fs [-bh] devicename:查询superblock信息.参数:-b:列出保留为坏道的部分:-h:列出superblock的数据,不会列出其他的区段内容. 2. df [-ahikHTm] 目录或文件名:列出文件系统的整理磁盘使用量.参数:-a:列出所有的文件系统,包括系统特有的/proc等文件系统:-k:以KB的容量显示各文件系统:-m:以MB的容量显示各文件系统:-h:以人们易阅读的GB.MB.KB等格式自行显示:-H:以M=1000K替代M=1024K的进位方…
1. depmod [-Ane]:更新内核模块依赖.参数:无参数:depmod会主动分析目前内核的模块,并重新写入/lib/modules/$(uname -r)/modules.dep中:-A:depmod会查找比modules.dep内还要新的模块,如果找到符合模块才更新:-n:不写modules.dep,而将结果输出到屏幕:-e:显示目前已加载的不可执行的模块名称. 2. lsmod:查看内核目前加载的模块. 3. modinfo [-adln] [module_name|filename…
ifconfig主要可以手动启动观察修改网络接口的相关参数 ifdown,ifup用来启动和关闭接口,后面直接接接口名称 两部主机两点沟通:ping 两主机之间各节点分析 traceroute 查看本机的网络联机与后门 netstat 侦测主机名与IP对应 host,nslookup…