PJzhang:shell基础入门的2个疗程-one
猫宁!!!
在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。。。。。。
最新文章
- WebService的使用
- Java 正则表达式详解
- windows脚本配置ip地址
- AWS国际版的Route 53和CloudFront
- 【hdu2795】Billboard
- SQL Server 2008 定时作业的制定(SQL2005参考此方法) 转
- ES6 - 对象
- [DataTable] datatable根据表中的字段进行排序
- BZOJ2038小Z的袜子(hose)
- 「OC」点语法和成员变量的作用域
- 详细介绍Java垃圾回收机制
- 在vim中搜索单词
- js手写图片查看器(图片的缩放、旋转、拖拽)
- UVA - 10723 类似LCS
- 关于linux 共享内存查看已经完整释放
- D - F(x)
- (常用)subprocess模块 详情官方
- android: LayoutInflater使用
- Spring cron表达式详解
- [转]从OSI网络模型到TCP/IP协议族简介
热门文章
- Ubuntu系统没声音
- Python 判断文件是否存在,不存在则将名称写入指定文件
- 课程 6;比特币产生,分配(2100w,10个矿区)
- react-native-swiper的Github地址
- Java进阶知识04 Struts2的基础配置详解
- 2019牛客暑期多校训练营(第二场)A 数学
- permutation 2(递推 + 思维)
- HDU 5831 Rikka with Parenthesis II ——(括号匹配问题)
- Linux-配置共享目录
- C++入门经典-例7.5-对象的指针,函数指针调用类成员