Linux 学习之路(一)

01|03

kernel space 内存碎片

GUI:图形用户界面

CLI:命令行用户界面

内核功能:

进程管理

内存管理

文件系统

网络功能

硬件驱动

安全机制

批处理系统

jobs1$$$$$$jobs2

kernel:2w

Debian,dpt

RedHat:rpm
01|04

Linux的基本原则:

1.由目的单一的小程序组成,组合小程序完成复杂任务。

2.一切皆文件

3.尽量避免捕获用户接口

4.配置文件保存为纯文本格式

CLI接口:

命令提示符:prompt,bash(shell)

	#:root

	$:普通用户

命令格式:

命令 选项 参数

短选项:-v 多个选项可以组合 -a -b=-ab

长选项:--word

参数:命令的作用对象

使用凭证:root redhat

虚拟终端(terminal):Ctrl+Alt+F2(默认由六个终端可以启动)

startx &_启动图形界面

linux灵活之处在于可以启动多个图形界面。

GUI:

Gnome:c

KDE:c++

XFace

CLI:

bash\csh\zsh\ksh\tcsh

su:switch user

su -l student 完全切换

su student半切换

exit退回原来的位置

#passwd修改当前用户密码,密码复杂性规则
02|01

GUI:Graphic User Interface

CLI:Command Line Interface

IDE:程序员所使用的程序开发环境

DLL:Dynamic Link Library(windows)

.so:shared object共享对象

认证机制:Authentication

授权:Authorization

审计:Audition(日志)

命令:

magic number魔数

shebang

#!/bin/bash看是不是当前程序所能理解的可执行格式,执行入口标志魔数等等

目录:文件,路径映射

路径:从指定起始点到目的地所经过位置。实现层次化管理的一种机制

相对目录:相对于现在所处位置

FHS:文件系统层级目录标准

文件名是不是文件的数据?

pwd:printing working directory显示当前目录,根目录/

ls

-l 长格式 显示完整信息

文件类型:

	-:普通文件(f)

	d:  目录文件

	b:块设备文件(block)

	c:字符设备文件(character)

	l:符号链接文件(symbolic link file),软链接文件

	p:命令管道(pipe)

	s:套接字文件(socket)

	文件权限:9位,每3位一组,每一组:rwx(读、写、执行)rw-能读能写不能执行

	文件硬链接的次数

	文件的属主(owner)

	文件的属组(group)

	文件大小(size),单位是字节

	时间戳(timestamp):最近一次被修改的时间

		访问:access

		修改:modify改变文件内容

		改变:change,metadata,元数据,改变文件属性或者元数据

	-h:做单位转换的默认是b

	-a:显示以.开头的隐藏文件

		. 当前目录

		..表示上一级目录(父目录)

	-A:显示所有隐藏文件但是不包括.或者..

	-d:显示目录自身属性

	-i:index node,inode显示文件索引节点号

	-r:逆序显示文件

	-R:递归(recursive)显示   递归很消耗资源

cd:change directory

	家目录:主目录,home directory用户有所有操作权限

	cd ~

	cd ~student 到student用户的家目录中

	cd -:在前一个目录和当前目录来回切换

命令类型:

	内置命令(shell内置):内部,内建

	外部命令:在文件系统的某个路径下有一个与命令名称相应的可执行文件

环境变量:命名的内存空间

变量赋值

	NAME=Jerry

type:显示指定属于哪种类型

printenv显示环境

PATH:使用:分割的一堆路径

hash缓存:记录下来所用过的命令的缓存

cache is keen

Hash在键-值中查找速度O(1):无论队列多长,查找时间是一样的

date:时间管理

Linux:rtc当前时间

硬件时钟 clock hwclock

系统时钟 date

获取命令的使用帮助:

内部命令:

help COMMAND

外部命令:

COMMAND --help

命令手册:manual

man COMMAND打开查看命令的使用手册

man 2 read

whatis COMMAND显示命令摘要

分章节:

1:用户命令(/bin,/usr/bin,/usr/local/bin)

2:系统调用

3:库用户

4:特殊文件(设备文件)

5:文件格式(配置文件的语法)

6:游戏

7:杂项:Miscellaneous

8:管理命令(/sbin,/usr/sbin,/usr/local/sbin)管理员使用

如果出现乱码,则输入man 2 read

man mount

[]可省的<>必须给出的内容,非可选的…可以出现多次

|:多选一

{}:分组

man lvcreate

MAN:

NAME

SYNOPSIS 用法说明,包括可用的选项

DESCRIPTION:命令功能的详尽说明,可能包括每一个选项的意义

OPTIONS:说明每个选项的意义

FILES:此命令相关的配置文件

EXAMPLES:使用示例

SEE ALSO:另外参照

翻屏:

向后翻一屏: SPACE

向前翻一屏:b

向后翻一行:ENTER

向前翻一行:k

查找:

/KEYWORD:向后

n:下一个

N:前一个

q:退出

?KETWORD:向前

date +%D 显示月/日/年

date +%F 显示年-月-日

date 时间 直接修改系统时间

hwclock -s读取硬件时间到系统中来

在线文档:

info ls
cal 12 2012 显示12月日历
练习:

1.echo是内部命令还是外部命令?

type echo 内部命令

2.其作用?

help echo

man echo显示一行文本echo -n

3.如何换行显示?

echo -e “The year is 2013. \nToday is 26.”

printf默认没有换行符 \n

02|03 Linux根文件详解

file命令及其用法

windows:PE

Linux:ELF

文件系统:

rootfs:根文件系统

除了目录,就是文件

ls / 查看到根文件下的一级子目录

/boot : 系统启动相关的文件,如内核、initrd,以及grub(bootloader)

/dev : 设备文件

设备文件:

	块设备:随机访问,数据块

	字符设备:线性访问,按字符为单位。显示器,鼠标

	设备号:主设备号(major)和次设备号(minor)

/etc:配置文件:纯文本文件形式保存

/home:用户的家目录,每一个用户的家目录通常默认为/home/USERNAME

/root:管理员的家目录,生产环境中不建议直接用root登录

/lib:库文件

	静态库,	.a

	动态库, .dll,.so (shared object)

	/lib/modules:内核模块文件

库文件没有程序的直接访问入口,是直接调用的。

/media : 挂载点目录,移动设备

/mnt:挂载点目录,额外的临时文件系统

/opt : 可选目录,第三方程序的安装目录

/proc : 伪文件系统,内核映射文件(系统性能监控)

/sys : 伪文件系统,跟硬件设备相关的属性映射文件

/tmp : 临时文件,/var/tmp

/var : 可变化的文件

/bin : 可执行文件,用户命令

/sbin: 管理命令

/usr:shared,read-only,全局的共享的只读文件

/usr/bin

/usr/sbin

/usr/lib

/usr/local:(不影响系统启动)

第三方软件安装路径

/usr/local/bin;/usr/local/sbin;/usr/local/lib

命名规则:

1、长度不能超过255个字符

2、不能使用/当文件名

3、严格区分大小写

文件管理、目录管理、运行程序、设备管理、软件管理、进程管理、网络管理

目录管理:

ls cd pwd

mkdir: 创建空目录

-p:如果要创建的目录的父目录不存在,则同时创建

-v:verbose详细信息

命令行展开:自动将{}中的内容展开为两个

mkdir -pv /mnt/test/{x/m,y}

展开为:mkdir -pv /mnt/test/x/m /mnt/test/y

如果要创建a_b,a_c,d_b,d_c

mkdir {a,d}_{b,c} 神奇的Linux!!!(注:(a+b)(b+c)=ab+ac+db+bc)

#tree:查看目录树

删除目录:rmdir (remove directory)

删除空目录

一线单传空目录删除 rmdir -p xxxxx

文件创建和删除:

#touch 修改文件的时间戳

touch -a a改变文件访问时间

#stat显示文件和文件的状态信息

创建文件,可以使用文件编辑器

删除文件 rm

-i : 交互式(只有管理员有这个)

-f 强行删除

-r递归删除这个目录下的所有文件

rm -rf /

\rm a 直接删除不提示(有别名的命令前加,以原始形式使用)

02|04

复制和移动文件

cp SRC DEST

-r,-i,-f

-p 保留源文件的属组,属主

-a 保留文件所有原来的属性(用于实现备份,表示归档复制)

-d 保持链接自己(期望复制链接自己)

只能复制一个文件到一个文件,多个文件到一个目录

mv : move 移动文件

mv SRC DEST

重命名:

mv abc mn把当前目录下的abc重命名为mn

install uninstall

install复制文件并且设置属性

创建两个目录:

install -d /tmp/{install.1,install.2}

指定权限 -m

猜你喜欢

转载自blog.csdn.net/nicezheng_1995/article/details/82980914