猫宁!!!

在centos7上操作这一切

第1节:什么是shell

centos7默认使用shell的bash

cat /etc/shells

第2节:linux的启动过程

BIOS(主板,引导介质)---MBR(硬盘,主引导记录)---BootLoader(grub)(启动引导内核,确定内核版本)--kernel(启动内核)---systemd---系统初始化---shell

一般进入BIOS是键入F2

linux自带脚本

dd if=/dev/sda of=mbr.bin bs=446 count=1

hexdump -C mbr.bin

dd if=/dev/sda of=mbr1.bin bs=512 count=1

hexdump -C mbr1.bin|more

寻找grub配置文件

查看内核版本

寻找初始化路径,针对centos6

top -p 1,显示systemd这个进程,针对centos7

cd /etc/rc.d,针对centos6

cd /etc/systemd/system/,针对centos7

systemd读取各种服务

查看文件类型

查看脚本的内容

第3节:shell脚本的格式

一条命令只做一件事

进入一个目录并查看其中的内容

cd /var/;ls,中间采用分号进行间隔

创建1.sh,内容为cd /var/;ls,赋予可读可执行权限,chmod u+rx 1.sh,执行就好了

cd /var/;ls;pwd;du -sh;du -sh *

一行一条命令便于阅读,极其方便,可以重复使用。创建一个文件的时候,默认有读的权限,但是没有执行的权限。

这个时候不需要分号了。sh 1.sh或者bash 1.sh

查看文件的权限

为了防范格式不兼容的问题,需要一个shell文件的声明,#!/bin/bash,保证在各个平台系统正常使用

./1.sh也可以执行,采用系统默认方式,此外#也可以注释这个脚本的用途,最好放在第二行说明

source ./1.sh,也可以实现执行脚本,显示结果

第4节:脚本不同执行方式的影响

1.sh(完全新建,没有给予可执行权限)内容如下

bash 1.sh,似乎没有进入/tmp目录

修改1.sh,并执行,说明脚本执行完之后又返回root目录下

创建2.sh,没有可执行权限,唯一一个需要可执行权限的

./2.sh

source ./2.sh
. ./2.sh,直接进入相应的目录,这两个不需要可执行权限

内建命令,不需要创建子进程,对当前运行环境造成影响。

外部命令,需要创建子进程

第5节:管道

管道符号‘|’,将前一个命令执行的后果传递给后面的命令,连接好应用程序,连接输入输出

管道和信号是一样

ls -l|more,如果ls -l的内容很多的话,这种方式可以只显示其中的一部分

more 1.sh查看1.sh之中的内容

cat anaconda-ks.cfg,可以查看文件中的所有内容,cat anaconda-ks.cfg|more就是查看部分,分页显示

直接输入cat,可以产生一个进程

直接输入ps -f

两者结合,cat |ps -f,有了一个cat的进程,一直卡在那里,没有执行完全,而且2551对应cat,2552对应ps -f

进程存在的时候,查看某一个进程的运行文件

ps -f 已经执行完了,所以没有文件,避免管道符中使用内部命令

分号是隔开两个命令,相互之间可以无关联,管道符是连接作用

第一疗程,over。。。。。。

PJzhang:shell基础入门的2个疗程-one的更多相关文章

  1. PJzhang:shell基础入门的2个疗程-two

    猫宁!!! 第6节:重定向 标准输入,标准输出,错误输出 输入重定向符号'<' 输出重定向符号'>'(清空之后再输入),'>>'(当前内容不变,在最后一行追加),'2>' ...

  2. PJzhang:python基础入门的7个疗程-one

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 安全从 ...

  3. PJzhang:python基础入门的7个疗程-two

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 htt ...

  4. PJzhang:python基础入门的7个疗程-three

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 第七天 ...

  5. PJzhang:python基础入门的7个疗程-five

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课 https://www.liaoxuefeng.com/wiki/1016959663602400 第十三天:代码组织 类是 ...

  6. PJzhang:python基础入门的7个疗程-six

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课 https://www.liaoxuefeng.com/wiki/1016959663602400 第16天:开源模块 sy ...

  7. PJzhang:python基础入门的7个疗程-four

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 第十天 ...

  8. PJzhang:python基础入门的7个疗程-seven

    猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课 https://www.liaoxuefeng.com/wiki/1016959663602400 第19天:开源模块 数据 ...

  9. Shell基础入门

    目录 Shell基础入门 1.什么是Shell? 2.Shell脚本的结构 3.Shell的变量 3.1.自定义环境变量 3.2.普通变量 3.3.位置参数变量 3.4.状态变量 4.条件测试和比较 ...

随机推荐

  1. MySQL BinLog Server 搭建实战

    一.MySQL Binlog server 介绍 MySQL Binlog Server: 它使用 mysqlbinlog 命令以 daemon 进程的方式模拟一个 slave 的 IO 线程与主库连 ...

  2. ubuntu NAT dhcp

    说明: 1.在服务器版本中,没有想桌面版一样的NetworkManager工具,所以的一切都是在命令行上操作的. 2.本文只针对DHCP默认分配的IP进行查看. 方法: 1.如果要使用DHCP,那么需 ...

  3. 强大的Visual Studio插件CodeRush全新发布v19.2,助力VS开发

    CodeRush是一个强大的Visual Studio .NET 插件,它利用整合技术,通过促进开发者和团队效率来提升开发者体验.CodeRush能帮助你以极高的效率创建和维护源代码.Consume- ...

  4. 【原】linux下部署web

    本机安装xshell.新建->主机处输入ip->确定,按提示输入用户名和密码 安装jdk(一般Linux上都已经安装好了) 安装tomcat. (1)在tomcat官网上下载tar.gz版 ...

  5. composer.json文件解读

    composer.json文件内容 laravel { "name": "laravel/laravel", //name 表示包的名称,由作者名和项目名组成, ...

  6. ES大批量写入提高性能的策略

    1.用bulk批量写入 你如果要往es里面灌入数据的话,那么根据你的业务场景来,如果你的业务场景可以支持让你将一批数据聚合起来,一次性写入es,那么就尽量采用bulk的方式,每次批量写个几百条这样子. ...

  7. 项目部署中,tomcat报java.lang.OutOfMemoryError: PermGen space

    原因: PermGen space的全称是Permanent Generation space,是指内存的永久保存区域,这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader ...

  8. C库函数-fgets()

    函数声明:char *fgets(char *str,int n,FILE *stream) 函数介绍:从指定的stream流中读取一行,并把它存储在str所指向的字符串中.当读取到(n-1)个字符时 ...

  9. AcWing:99. 激光炸弹(前缀和)

    一种新型的激光炸弹,可以摧毁一个边长为 RR 的正方形内的所有的目标. 现在地图上有 NN 个目标,用整数Xi,YiXi,Yi表示目标在地图上的位置,每个目标都有一个价值WiWi. 激光炸弹的投放是通 ...

  10. python3精品解析运算符

    算数运算符 +:两个对象相加 -:得到负数或者,或者一个数减去另一个数 *:两个数相乘或者是返回一个被重复若干次的字符串 /:5/2等于2.1 5//2=2(/有余数,//取整) %:取模(5%2=1 ...