马哥linux0726课程内容

课堂内容笔记

 

使用几个符号可以使用原始命令

\,’’,绝对路径运行

这三种方法都可以使用到原始命令,不使用别名

 

别名-内部命令-缓存-外部命令

使用命令的优先级

 

man帮助具体用法

makewhatis老版本安装whatis

mandb新版本安装whatis

man的具体路径在/usr/share/man

whatis可以查询章节号

man章节号 命令(如果不写章节号,优先靠前章节)

可以查询到命令的具体描述

Centos6.8的man的配置文件在/etc/man.config,当中定义了很多变量,也定义了自定解压缩.

Centos7.2的man配置文件在/etc/man_db.conf

 

章节号:

  1. 1.用户命令

  2. 2.系统调用

  3. 3.C库调用

  4. 4.设备文件及特殊文件

  5. 5.配置文件格式

  6. 6.游戏

  7. 7.杂项

  8. 8.管理类的命令

  9. 9.Linux内核API

 

/usr/bin主要是用户的命令

/usr/sbin主要是管理员命令

 

man–f 也可以查询命令的章节号

 

less可以实现翻页

 

man帮助里面搜索字符

/需要搜索的字符

 

外部命令 man 命令

内部命令 help 命令(如果描述不够详细,可以在man bash当中查看)

 

字符终端登录时显示的信息配置文件在

/etc/issue

 

Info的帮助用法

类似于网站的帮助形式

带*号的行,可以回车进入查看使用方法

U可以返回上一层

 

系统文档的帮助文件

图形界面下使用help

 

/usr/share/doc目录

 

第三方帮助文档

 

使用谷歌搜索

Openstackfiletype:pdf

rhcasite:redhat.com/docs

可以得到PDFDOCS文档

 

 

Redhat全球技术支持可以输入命令

Sosreport

会自动收取系统上的日志信息的工具,并自动打包。

 

 

指定时间自动关机

 

Shutdown–P mm:hh  “”(双引号里面可以增加描述,可有可无)指定具体时间关闭服务器

Shutdown  -P 5 (双引号里面可以增加描述,可有可无)指定几分钟后关闭计算机

在命令后面需要加&在后台运行,否则就不能操作其他事情

 

实现字符终端登录时,显示当前登录终端号,主机名和当前时间

 

首先字符终端登录时的配置文件在/etc/issue

我们首先的思路是在配置文件中增加这些选项.

在不知道的情况下,就要查看帮助

先查看章页

Whatisissue

然后

Manissue查询帮助

这里面没有什么有效的信息,可以查询到相关的其他命令

查询到mingetty的命令有相关的选项

然后在issue的配置文件中增加这三个选项就可以实现显示

\n,\t,\s

 

history的一些介绍

etc下的配置文件为全局变量

 

变量:

HISTSIZE记录历史命令条数

HISTFILE指定历史文件,默认是~/.bash_history

(配置文件在.bash_profile)

修改之后输入一些命令,正常退出后自动生成新的配置文件

HISTTIMEFORMAT在历史文件中可以增加时间显示

HISTIGNORE忽略个别命令不进入历史列表

例:HISTIGNORE=”str1:str2”,冒号是隔开符

HISTCONTROL控制命令历史

例:

HISTCONTROL=ignorespace只要在命令行前面增加空格就可以隐藏命令不进入历史列表

还有其他几个选项

Ignoredups忽略重复的命令

Ignoreboth(ignoredups,ignorespace)的结合体

erasedups删除重复命令

 

全局变量配置文件位于/etc/profile

!命令偏移量 可执行指定行数命令

!-数字  可执行历史命令行倒数第几条

.bash_history是存储历史命令文件,是硬盘存储.

正常退出后,可增加新的缓存历史命令到文件中

!!可以执行上一条命令

Ctrl+P可以输出上一条命令,按回车执行

上下键也可以选择历史命令来执行

Ctrl+R可以搜索命令的字符串

ESC+.可以调用前一个命令的参数

ALT+.同样可以调用前一个命令的参数,适用于本地

!$,$表示最后一个的意思,这个命令可以调用最后一个命令的参数

!^,可以调用前一个命令中的第一个参数,适用最后一个命令参数较多的时候使用

!:2 可以调用前一个命令的第二个参数.

!* 可以调用前一个命令所有的参数值

!123:2 可以调用历史命令行中第123个偏移量的第二个参数

!ll:^可以调用以ll命令开头的第一个参数

!ll:$可以调用以ll命令开头的最后一个参数

!ll:2可以调用以ll命令开头的第二个参数

!ll:*可以调用以ll命令开头的所有参数

这样的命令是不进入历史命令的

 

bash的快捷键

Ctrl+l清屏,相当于clear命令

Ctrl+c取消命令的执行

Ctrl+a会移动到命令行的最前面

Ctrl+e会移动到命令行的最后面

Ctrl+u删除光标前到行首

Ctrl+k删除光标后到行尾

ArrowCtrl+b ctrl+f 会向左或向右移动一个字符

Esc-b左移一个单词(一个单词是指空格区别的)

Esc-f右移一个单词

 

Gnome下的terminal快捷键

支持多个标签shell的图形化终端模拟器

Ctrl+shift-t创建一个新的标签

Ctrl-paup/paun切换到下一个/前一个标签页

Ctrl-shift-c复制选中的文本

Ctrl-shift-v粘贴复制的文本

 

 

清除命令痕迹

先删除文件.bash_profile,再清除历史

 

history的用法

-c 清空历史命令

-d 删除指定偏移量的历史命令

-a 追加新执行的历史命令放到历史命令文件中

(新的终端输出的命令修改历史文件之后,可以将历史文件中没有读过的命令读取历史列表中)

-n 读历史文件中没读过的行到历史列表

-r 读历史文件中附加到历史列表

-w 将当前历史列表保存到指定历史文件中

 

-p 展开历史参数成多个行,但不存在历史列表中

例如: history –p echo XXX AAA

这条命令将不会进入历史列表

-s 展开历史参数成一行,附加在历史列表后

例如: history –s reboot

reboot将会附加到历史列表中的最后一行,但是reboot命令并没有执行(伪造历史)

 

 

第四章:文件系统

 

Nautilus是图形化界面

1.jpg

Centos6和centos7有相同的目录结构标准

Centos7.2的目录结构

bin   dev  home lib64  mnt  proc run   srv  testdir usr

boot  etc  lib  media  opt  root sbin  sys  tmp     var

Centos6.8 目录结构

bin   dev  home lib64       media  mnt opt   root  selinux sys      tmp  var

boot  etc  lib  lost+found  misc   net proc  sbin  srv     testdir  usr

FHS(FilesystemHierarchy Standard)

是Linux中的文件系统层次结构标准

他们都是基于LSB(Linux Standard base)

LSB是Linux的标准库

 

文件系统的一个分类

2.jpg


Shatic:静态的

Variable:动态的

Shareble:共享的

Unshareable:不共享的

 

Linux系统标准分层结构各目录作用

/bin存放普通用户的命令

/sbin存放管理员的命令

这俩个目录可以通过PATH变量来测试管理员与普通用户的权限区别

 

/boot主要存放linux内核

/dev主要存放各种设备文件

也有逻辑上的设备

 

ll 查看文件

3.jpg

文件权限第一位表示的就是文件的类型

b就是块设备:block 

c就是字符设备:charcter

 

两者的区别在于,块设备是随机访问,字符设备是顺序访问

随机访问就是硬盘中有一堆文件,我们可以想访问哪个文件就可以访问

而顺序访问则是必须按照顺序来访问文件,并且没有缓存

 

空设备

/dev/zero与/dev/null

好比太空中的黑洞,任何文件扔到这个目录都会被吞噬.

 

hexdump可以查看文件的十六进制内容

random随机的整数变量

/etc存放配置文件

/lib函数库

另外还有存放内核的模块及很多文件系统及硬件的驱动

文件夹所在位置/lib/modules/内核版本/kernel

/media移动设备的挂载点

/mnt手工挂载移动设备

/opt第三方软件安装路径

/srv各种服务用到的数据

/tmp临时文件

/usr操作系统软件资源存放位置

 

/var可变数据,例如,日志,邮件,web服务等等

 

last是成功登录的日志信息

/home存放普通用户的家目录

/lib6464位库文件

/procprocess的进程. 主要存放进程和操作系统内核的一些信息(都属于内存数据,不占用硬盘数据)

/sys主要存放硬件信息

例子:动态增加新的硬盘

增加完一台硬盘之后可以使用一个命令来扫描

echo“- – -” > /sys/class/scsi_host/host2/scan

 

centos6中特有的一个目录/misc

可以自动挂载光盘

进入misc目录

cd cd

就可以自动挂载当前光盘

 

Linux下的文件系统区分大小写取决与文件系统,例如FAT文件系统就不区分大小写,但是基本上linux系统用不上fat系统

 

所以大小写取决文件系统,并不是操作系统

 

以.打头的文件为隐藏文件

 

文件有两类数据

元数据:metadata

数据:date

说明:文件的名称为元数据,文件的内容为数据

 

DataBlock 数据块:基本数据单位

tune2fs–l /dev/sda2 命令可以查看到块的大小

 

文件的颜色分别代表哪些类型

蓝色—目录

绿色—可执行文件

红色—压缩文件

浅蓝色–链接文件

灰色—其他文件

 

文件类型

4.jpg

套接字文件的作用:进程兼通信的

Socket文件主要用于一台机器两个应用程序通信不需要通过走网络的方式来通信的一个工具.

 

pwd显示当前工作目录

 

pwd–P 显示物理的真实路径

$PWD变量存储的是当前的目录

$OLDPWD变量存储的是上一次离开的目录

 

绝对路径:完整的文件的位置路径

相对路径:指定相对于当前工作目录

绝对路径是以根目录开始,而相对路径不是.

 

cd –P直接进入物理路径,而不是链接路径

 

ls

文件的优先级按字母的位置来排序

比如1,2,12.文件的排序是1,12,2

 

-R的选项:递归的意思

递归就是层层递进

 

atime 读的时间

ctime change  状态(元数据发生改变)更改时间

mtime modify 修改的时间

 

stat 文件名 可以查看具体的三个时间

原创文章,作者:Kartik,如若转载,请注明出处:http://www.178linux.com/28133

(0)
上一篇 2016-08-04 14:41
下一篇 2016-08-04 14:41

相关推荐

  • 文本处理工具命令使用以及文件权限管理

    一 sort uniq wc cut tr 等文本处理工具的基本用法 1. 通过who命令查看当前登录了哪些用户,并通过uniq或sort -u命令将重复的行只显示一次 [root@Linuxprobe ~]# who | cut -d’ ‘ -f1 | sort -u 目前查看系统有两个用户登录 harrycai root [root@Linuxprobe…

    Linux干货 2017-08-13
  • grub的启动加密及删除恢复

    一、实验1:设置grub口令 1、生成一个加密运算为"nd5"的密码 2、设置grub口令 3、测试grub是否已加密 4、在虚拟机的下图的图形界面中,直接敲"Esc"或者"e"键 5、在图形的框下,提示只能敲"p"键,原因是因为grub加密的原因 6、直接敲"p&qu…

    Linux干货 2016-10-04
  • Linux理论基础(计算机组成机器功能|Linux发行版|Linux哲学思想)

    1、描述计算机的组成及其功能。
    2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
    3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。

    2018-03-06
  • xen虚拟机实时迁移

    前言:  xen虚拟机提供了一种类似于heartbeat高可用方案,在保证也不中断的业务情况下实现虚拟机迁移技术。在保证虚拟机上的服务正常的情况下将运行中的Domain迁移到其他机器上,实现xen虚拟机的高可用。 一、实验准备:  (1)各个测试机之间时间要同步  (2)node3提供iscsi网络共享存储  (4)n…

    Linux干货 2015-08-27
  • 脚本编程之变量

    简单跟大家介绍一下脚本编程中的变量。 大家都知道,脚本编程,主要由三个部分组成,一是命令,二是变量,三是控制语句。 变量的使用,可以让脚本变得更加简洁,高效。 我们主要简单讲一下变量的概念,变量的类型,变量的种类,不同种类的变量是如何定义的,变量的基本操作,以及变量的配置文件。 了解了这些,我们还可以聊一聊变量的高级操作。 首先,什么是变量? 通俗一点讲:变…

    Linux干货 2017-04-17
  • 非交互式添加分区

    非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,位置千万不能指定错误 parted /dev/sdb mkpart primary 1 1000M parted /dev/sdb mkpart primary 1001 3000M 方法二 (1)将你要在parted命令行输入的命令实现…

    Linux干货 2017-04-24