@@@第二天第一段

@@who:查看当前系统上登录的所有用户及其信息

@@ tty查看显示当前终端对应终端设备文件

串行终端 /dev/ttys#

物理终端 /dev/console

虚拟终端 /dev/tty#

图形终端

伪终端(模拟终端)  /dev/ttys#

@@startx:启动图形界面

startx &后台运行

@@Ctrl+c:取消当前程序

shift+Pageup/Pagedown

@@echo :回显用户输入(文本输入,变量引用,命令执行,)对应的结果并显示出来

$:引用一个变量

PS1:[\u@\h \W]\$

\u: 当前用户

\h:主机名

\W: 工作目录的路径基名

对于Linux来讲,路径分隔符:/

绝对路径:从顶层开始的路径

相对路径:从当前位置开始的路径

@@@第二天第二段

Linux文件系统结构:按层次化来划分文件

/:根,所有文件都从根开始

用户:自己具有所有操作权限的目录,Home,家,主

工作目录:用户当前所处的目录

@@cd:切换文件目录, cd filename

@@basename:显示文件的基名,基名:路径最后一个文件或路径名称。#basename /etc/init.d  显示为init

@@dirname:显示文件的目录名(路径)

Linux文件系统的特性:

1、文件名可以使用除/以外的任意字符;但总长度不能超过255个;

2、严格区分大小写;abc, Abc

如何获取命令帮助:

bash特性之一中,命令有两种类型:

builtin:在shell程序中实现的命令即为内建命令;

外部命令:在文件系统上的某位置有一个与命令名称对应的可执行文件;

@@type: 判断命令是属于内建命令还是外部命令

内部命令返回命令为内部命令提示

非外部命令一律显示执行文件的路径

shell: 事先通过一个变量(PATH)设定好了多个路径,当用户输入命令时,shell会自动到这些路径(由左向右)下查看与命令名称相同的可执行文件

@@hash:查看使用过的命令或程序的执行文件所在目录路径

shell 事先通过一个变量(PATH)设定好了多个路径,当用户输入命令时,shell会自动到这些路径(由左向右)下查看与命令名称相同的可执行文件查找到并执行过的命令会被保存至一个hash查找表中;可以使用hash命令查看此表

@@which:查看一个可执行程序的具体路径:使用“which 命令”

命令的格式:

command options arguments

命令  选项  参数

选项:调整命令的执行特性的;

选项可以有多个;多个选项之间必须以空格分隔;

短选项:-char

长选项:--word

短选项可以合并;长选项一般不可以合并;

有些选项需要有选项参数;

命令参数:命令的作用对象;

有些命令可以带多个参数;各参数间需要使用空格分隔;

获取帮助:

[] :代表括号内的内容可选。

{,} :代表括号内的内容分别作为一个使用单元都使用。例如x{a,b}等同于xa,xb

| :或者,只能选一个

<>:必须指定括号内的内容

...:同类内容可以出现多个

内置命令:

@@help:  # help 命令名

内置命令帮助信息,使用格式 # help cd

外部命令:

# 命令 --help

外部命令帮助信息,使用格式 # dirname --help

使用手册:manual

@@man:# man  命令帮助文件中需要关注的常用内容:NAME:名称释意;SYNOPSIS:使用格式;OPTIONS:选项;EXAMPLES:使用举例;DESCRIPTION:详细功能描述

选项:

-a 显示所有匹配项

-d 显示man查照手册文件时候,搜索路径信息,不显示手册页内容

-f 同命令whatis ,将在whatis数据库查找以关键字开同的帮助索引信息

-h 显示man帮助信息

-k 同命令apropos 将搜索whatis数据库,模糊查找关键字

-S list 指定搜索的领域及顺序 如:-S 1:1p httpd 将搜索man1然后 man1p目录

-C 指定man 命令搜索配置文件 默认是man.config

-K 搜索一个字符串在所有手册页中,速度很慢

-M 指定搜索手册的路径

man的简要使用机制:

翻屏:

空格键:向文件尾部翻一屏;

b: 向文件首部翻一屏;

回车键:向文件尾部翻一行;

k: 向文件首部翻一行;

Ctrl+d: 向文件尾部翻半屏;

Ctrl+u: 向文件首部翻半屏;

文本搜索:

/keyword: 向文件尾部搜索;

?keyword:向文件首部搜索;

n:跟搜索命令相同的方向(下一个);

N:路搜索命令相反的方向(上一个);

q: 退出;

补充:man其实能为命令(普通命令、管理命令)、程序的配置文件格式、系统调用、库调用、游戏及其其它不便归类的文件提供帮助手册;

man命令的分段机制:

1-8:

1:用户命令:User Commands 用户指令:使用者在shell中可以操作指令或可执行程序的文档

2:系统调用:System Calls 系统调用:系统提供的系统调用文档

3:库调用:C Library Functions 程序库调用:常用函数与函数库文档

4:设备文件:Devices and Special Files 设备:设备文档,通常在/dev下的文件

5:文件格式:File Formats and Conventions 文件格式:配置文件

6:游戏:Games et. Al.游戏

7:杂项:Miscellanea 杂项 标准与协议如网络协议,ASCII code等说明;不便归类的。

8:管理命令:System Administration tools and Deamons 系统指令:管理员帐号可用管理指令。

man是按照手册的章节号的顺序进行搜索的,比如:#man sleep只会显示sleep命令的手册,如果想查看库函数sleep,就要输入:# man 3 sleep

@@whatis:  查看某关键字在哪些段落中有使用帮助,可以使用

# whatis Keyword

精确查找

@@makewhatis:提示:如果whatis的数据尚未生成,可以使用makewhatis手动进行;

# man -k Keyword

模糊查找

@@info  info 命令:获取在线文档;

很多应用程序自带的有文档:/usr/share/doc/

ChangeLog, INSTALL, README

google:

linux filetype:ppt

keyword site:magedu.com

RedHat官方文档:

www.redhat.com/docs/

@@@第二天第三段

系统管理类的命令:

@@shutdown: shutdown [option]...  TIME

-r: 重启

-h:关机

-c:取消重启或关机命令

TIME时间格式:

now

+#: #分钟以后

hh:mm

@@reboot :重启系统,调用shutdown -r

@@halt:关机 -p

@@poweroff:断电

-f 选项 危险,不调用shutdown

日期时间管理类命令:

date, hwclock

@@date:显示当前时间或修改时间

date [OPTION]… [+FORMAT]

date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

# date

#修改系统时间 date MMDDhhmm[CC]YY.ss

月月日日时时分分年年(两位或四位年).秒秒

显示时间元素

# date [+FORMAT]

%Y:四位年份

%y: 2位年份

%m: 月

%M:分

%d: 日

%h: 月

%H: 时

%S:秒

%D: 日期

月/日/年

%F: 日期   常用:# date +%F-%H-%M-%S    示例:touch file-`date +%F-%H-%M-%S`

年-月-日

unix元年:1970-01-01 00:00:00

%s: timestamp 常用: # date +%s 从元年到当前时间经过的秒数

@@cal 月历 cal 2014年历

Linux有两个时钟:

硬件时钟:

软件时钟:开机时读取硬件时钟

hc:  硬件的物理时钟

sys:  系统的软件时钟

@@ hwclock

-s: 以硬件时钟为准, --hctosys

-w: 以系统时钟为准, --systohc

总结:man, info, help, date, hwclock, cal, shutdown, reboot, halt, poweroff, type, cd, which, dirname, basename, who, which, whatis, makewhatis, echo, hash, tty

文件和目录管理类的命令

当前所在的目录:工作目录

家目录,主目录

bash特性之二

shell的命令行展开:能够把一个特殊字符换成别的字符;

~: 指定用户的家目录;

{,}: 展开为多个条目;

x/{a,b} = x/a, x/b

目录:

路径:

相对路径中:

.: 当前目录

..: 父目录

@@cd cd ~[username] 切换到某个用户的主目录

. :表示用户所在的当前目录

.. :用户所在当前目录的上一级目录(父目录)

cd -:回到最近上一次用户所在目录来回切换,;

/usr/share/doc/yum-3.2.1

cd - = /usr/share/doc

cd - = /usr/share/doc/yum-3.2.1

cd -

@@pwd pwd: print working directory查看当前用户所在目录

@@mkdir mkdir: 创建目录

-p: 先创建父目录;

-v: 显示详细信息;执行过程

mkdir /a/b/c/d

x/a, x/b, x/a/m, x/a/n

mkdir -pv x/{a/{m,n},b}

a_c, a_d, b_c, b_d

mkdir a_c a_d b_c b_d

mkdir {a,b}_{c,d}

(x+y)(m+n) = xm + xn + ym + yn

@@rmdir rmdir:删除空目录

-p:mkdir -p逆向删除,只能删除一线单传的目录,目录下有文件不能删除!

练习:创建/tmp/mylinux/usr/local/bin,

练习:创建/tmp/a b

shell中的引用:

'':强引用,变量替换不会进行

"":弱引用,能够执行变量替换

``:命令替换,引用命令的执行结果;命令替换的另外一符号:$(命令);

变量替换:${变量名}

=:给一个变量赋值。例:NAME=##。echo ##:echo显示后面的内容。echo $##:显示$后面变量的值。例如:# echo PATH 和# echo $PATH的区别。补充:变量在赋值时不能使用$;    变量名只能包含字母、数字和下划线,而且不能以数字开头;    变量名区别大小写;

使用格式及例题:(1)1# echo $PATH 2 # echo "$PATH" 3# echo `$PATH 4# echo "The value of PATH is $PATH" 不同输出结果的思考,及解答。

(2)1# echo `date` 2# echo "$PATH" 3# echo 'date' 4# echo "Time is `date+%T` " 不同的输出结果的思考和解答

练习:创建以当前时间命令目录,例如2014-02-11-16-25-20;

# mkdir `date +%F-%H-%M-%S`

练习:

1、创建/tmp/etc/rc.d, /tmp/etc/rc.d/init.d, /tmp/etc/rc.d/rc0.d, /tmp/etc/sysconfig, /tmp/etc/pam, /tmp/etc/yum.repos.d/

2、创建/tmp/etc/rc.d, /tmp/etc/rc.d/init.d, /tmp/etc/rc.d/rc0.d, /tmp/etc/sysconfig, /tmp/etc/pam, /tmp/etc/yum.repos.d/, /tmp/usr, /tmp/usr/share, /tmp/usr/share/doc, /tmp/usr/share/man, /tmp/usr/bin, /tmp/usr/sbin, /tmp/usr/lib, /tmp/usr/lib64

命令总结: pwd, mkdir, rmdir

@@@第二天第四段

命令总结: pwd, mkdir, rmdir

shell的特性之三:命令历史

bash保存的过去曾经执行过的命令的列表;

当前shell进程的保存在缓冲区中;

缓冲区中的命令会在shell退出时保存至文件中, .bash_history

使用上下箭头键可以翻看此前曾经执行过的命令;

@@history

history快捷方式:

!#: #为命令历史列表中的命令编号;可用执行第#条命令;

!!: 执行上一条命令;

!-#: 执行命令历史列表中的倒数第#条命令;

!string: 执行命令历史列表中的最近一次以string开头的命令;

!$: 引用上个命令的最后一个参数; ESC, .

history

-c: 清空列表

-d #: 删除指定的历史命令

-a: 追加当前会话的命令历史至历史文件中去;

命令历史相关的环境变量:

HISTSIZE:命令历史中可以保存的命令的个数;

HISTFILE: 命令历史文件;

HISTFILESIZE:命令历史文件可以保存的命令的个数;

HISTCONTROL: 控制命令历史的生成;

ignoredups: 忽略记录重复的命令;连续的相同命令才为重复;

ignorespace: 不记录以空白字符开头的命令;

ignoreboth: 同时具有上面两种特性;

补充:Linux文件系统的另一特性:以点号开头的文件为隐藏文件; ls -a

shell中的变量赋值:

变量名=值

注意:变量在赋值时不能使用$;

变量名只能包含字母、数字和下划线,而且不能以数字开头;

变量名区别大小写;

FHS:

/bin: 所有用户可执行的程序

/sbin: 管理员可执行的程序

/usr/bin

/usr/sbin

/usr/local/bin

/usr/local/sbin

/boot: 存储系统引导文件:内核、ramfs文件、bootloader(grub);

/dev: 设备文件存放目录;

/etc: 配置文件的存放目录;

/etc/sysconfig:

/etc/init.d: 系统服务脚本

/home: 普通用户,默认在/home下有一个与其名称同名目录,作为用户的家目录;

/root: 管理员的家目录;

/lib, /lib64:库文件;

/media: 专用挂载位置,通常用来挂载便携式设备;

/mnt: 专用挂载位置,挂载额外存储设备;

/misc: 备用目录

/opt: 备用目录,但通常用来安装第三方软件;

/proc: 伪文件系统,内核参数的映射;

/sys: 伪文件系统,系统级别的用于配置外围设备秘的参数;

/srv: 为服务提供数据存放位置;

/tmp: 临时文件系统;

/usr: shared, readonly

/usr/include: 头文件

/var: 频繁发生变化的文件

/var/log

/var/lock

/var/run

/var/cache

@@@第三天第一段

Linux的文件类型:(记忆)

普通文件:-, f  大部分的不具备特殊意义或功能的文件

目录文件:d  文件的路径映射文件

链接文件(符号链接):l

设备文件:特殊文件

字符设备:c   线性设备

块设备: b     随机设备

命名管道:p    把一个命令输出结果给另外一个命令做输入信息

套接字文件:s  把每个网络通信都标记上用户信息

Linux文件时间戳:

访问时间

修改时间:

改变时间:元数据发生改变

@@ls

--color 显示颜色

-a: 显示所有文件,包含隐藏文件,

-l: 长格式显示详细信息 属性

l          rwxrwxrwx.     1      root   root      2 Feb 12 09:49      rvi       -> vi

文件类型   文件权限   硬链接数   属主   属组      最近一次修改时间    文件名    原始文件

-d: 显示目录自身的信息, 通常与-l同时使用

-r: 逆序显示

-R: 递归显示,逐级向下显示子目录

-h: 文件大小以易读格式显示

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

@@tree 显示目录树,子路径

bash的特性之四:命令别名

@@alias

\命令:不实用别名,执行命令本身 例如\ls

alias: 显示当前shell中定义的所有别名;

# alias 别名='原始命令'

alias echorp='echo "command result `echo -e "\033[1;5;31;42m$?\033[0m"`"'

# unalias 别名

文本文件查看:

/etc/passwd

/bin/ls

@@file file FILE...: 查看文件内容的格式

@@cat cat:

-E: 显示行结束符

-v: 显示非打印字符

-e: 相当于-vE

-n: 添加行号,显示时给行按顺序编号

-s: 多个连续的空白行显示为一个空白行

?思考:如何换行?

控制符,如换行符

@@tac tac:cat按行逆序显示

@@more more:查看文件到尾部就退出

@@less less:man调用的命令,操作参照man

@@head head从头部查看文件内容,并退出

-n #      查看#数字行内容

-#

@@tail tail从尾部查看文件内容

-n #

-f 显示内容并不退出文件,等待新数据的写入

@@echo echo命令的用法:man可以查看支持的控制符(常用)

-e支持控制符,

\0NNN

\033[##m

第一个#:1-7每个数字表示不同效果

1加粗

3表示前景色

4表示背景色

5表示闪烁

第二个#:给对应前一个效果参数添加颜色,1-7

多重效果可以用;号隔开

\033[0m: 控制符结束

\033[31mhello\033[0m

示例:echo -e "\033[31;1;42;5mhello\033[0m"

echo "command result `echo -e "\033[1;5;31;42m$?\033[0m"`"

-n: 不为显示内容自动换行

命令总结:cat, tac, ls, more, less, tail, head, echo, tree

@@@第三天第二部分

文件操作:

@@touch touch:创建或修改文件

-c: 不创建空文件

-a: 仅修改访问时间

-m: 仅修改修改时间

-t STAMP: [CC]YYMMDDhhmm.ss

@@cp cp: copy 复制并改名文件

SRC源, DEST目标

cp SRC  DEST

假如SRC是一个文件:

如果目标是一个文件且存在:覆盖

如果目标文件不存在:创建新文件

如果目标存在,且是个目录:复制源至目标目录,并保持原名

cp SRC... DEST

假如SRC有多个文件:

如果目标存在,且是一个文件:复制无法进行

如果目标存在,且是一个目录:复制各文件至目标目录中,并保持原名

如果目标不存在:复制无法进行

如果SRC只有一个且是目录:-r

如果目标是一个文件且存在:失败

如果目标文件不存在:创建新目录

如果目标存在,且是个目录:复制源目录至目标目录中,且保持原名

bash中的特性之五:globbing,文件名通配

通配符:

*: 匹配任意长度的任意字符

abc, abb, abm, xab, ab

ab*

*ab

*ab*:

?:匹配任意单个字符

[]: 匹配指定字符范围内的任意单个字符

[[:upper:]]   所有大写字母

[[:lower:]]   所有小写字母

[[:alpha:]]   大小写字母表

[[:digit:]]   阿拉伯数字

[[:alnum:]]   数字和字母

[[:space:]]   空格

[[:punct:]]   标点符号

[^]: 匹配指定字符范围外的任意单个字符

[^0-9], [^[:digit:]]

练习:复制/var目录下所有以l开头,以一个小写字母结尾,且中间出现一位数字的文件或目录至/tmp下

练习:如果符合条件是目录,也要复制;

1、复制/etc目录下以p开头,中间跟了任意字符,并以d结尾的文件至/tmp目录中;

2、复制/etc/目录下以p开头,中间跟了4个任意字符,并以d结尾的文件至/tmp/a目录中;如果a不存在,先创建出来;

3、复制/etc/目录下以任意一位数字开头,并以非数字结尾的文件至/tmp/b目录中;

4、复制/etc/目录下以非字母开头,后面跟了一个字母及其它任何长度字符的文件至/tmp/c目录中;

cp命令的长用选项:(常用)

-r:递归复制

-i: 交互,提示,提醒

-d: 当源为链接文件时,复制链接文件本身而非指向的源文件

-a: 相当于-dr  备份源文件的元数据属性(管理员才可以用)

-p: 保持原有属性

-f: 强制覆盖

@@mv: 移动文件,用法跟cp相近,可以用来改名

可以直接移动目录,而无须-r选项;

mv /tmp/passwd /tmp/abc

@@rm: 移除文件

删除非空目录:# rm -rf

总结命令:cp, mv, rm

linux6.5退出文档,Centos6.5及Linux基础命令和基础知识点笔记!6.25更新相关推荐

  1. 第七课 环境变量PATH,cp、mv及查看文档cat/more/less/head/tail命令

    一.环境变量(PATH)echo $PATH 查看环境变量的目录PATH=$PATH:/tmp/ (目录)给一个目录赋值环境变量: 让以上环境变量永久生效: 编辑 vi /etc/profile/ 把 ...

  2. 透明加密支持linux吗,IP-guard文档透明加密软件|文档防泄密|数据加密|Linux系统加密|Mac苹果系统文档加密...

    IP-guard文档透明加密软件|文档防泄密|数据加密|Linux系统加密|Mac苹果系统文档加密 发布日期:2018-06-02 IP-guard全向文档加密,采用高强度的加密算法,将各种格式的电子 ...

  3. at91sam9260ek开发板linux移植文档,AT91SAM9260EK开发板 Linux 移植 移植 文档

    AT91SAM9260EK开发板 Linux 移植 移植 文档 AT91SAM9260EKAT91SAM9260EKAT91SAM9260EKAT91SAM9260EK 开发板开发板开发板开发板 Li ...

  4. php把proto解析为文档,Protobuf 文件生成工具 Prototool 命令详解

    Protobuf 文件生成工具 Prototool 命令详解 简介 Prototool 是 Protobuf 文件的生成工具, 目前支持go, php, java, c#, object c 五种语言 ...

  5. 敏捷个人:提供更多文档下载,并转载一篇敏捷个人读书笔记

    这两周一直忙着OpenExpressApp的自动化测试支持了,对于敏捷个人最近在思考作为新手如何学习的问题,后期我会写篇blog与大家分享一下.在敏捷个人项目中我发布了敏捷个人-认识自我,管理自我.p ...

  6. 分布式文档存储独角兽MongoDB——MongoDB常见命令(2)

    分布式文档存储独角兽MongoDB 二.MongoDB常见命令 1.1 MongoDB的基本操作 查看数据库 show dbs; 切换数据库 如果没有对应的数据库则创建 use 数据库名; 切换库,如 ...

  7. 服务器里面文档怎么改编码格式,linux 设置服务器编码格式

    linux 设置服务器编码格式 内容精选 换一换 规划数据服务器与集群处于同一内网,数据服务器IP为192.168.0.90,导出数据文件格式为CSV,所以规划的并行导出模式为Remote模式.Rem ...

  8. latex文档排版时空出一行的命令

    原文地址:https://www.cnblogs.com/longdouhzt/archive/2012/02/10/2345178.html latex 文档中,分行是自动完成的,一般情况下不需要使 ...

  9. 文档查看器PrizmDoc Viewer v13.13发布:多个修订及更新

    PrizmDoc是最快速.最有品质的HTML5文档查看器,提供安全的.全定制化的查看和协作功能.它通过一个简单部署的机制减少成本,降低安全风险和提高生产率.同时,它是基于服务器的查看器,消除了不必要的 ...

最新文章

  1. java多线程之锁 -- 偏向锁、轻量级锁、自旋锁、重量级锁
  2. Typora markdown公式换行等号对齐_【精品软件 第3期】 有颜有料的编辑器——Typora
  3. 源码包安装和快捷管理nginx,自定义命令管理服务
  4. mysql中文长方形_MySql 5.7 中文文档 - 12.16.9.2 使用最小边界矩形的空间关系函数 | Docs4dev...
  5. 网络营销——网络营销专员浅析网站快照更新要点
  6. 网易云信欢乐颂(送),领取“五美”送麻麻
  7. asp.net web api集成微信服务(使用Senparc微信SDK)
  8. 并发执行变成串行_大神浅谈数据库并发控制 锁和 MVCC
  9. 数据中台、数据仓库和数据湖传统的区别
  10. 使用 jQuery Mobile 与 HTML5 开发 Web App (十) —— jQuery Mobile 默认配置与事件基础
  11. Kudu :主键冲突 status=Already present: key already present
  12. python tkinter-单选、多选
  13. opencv 利用图像轮廓函数填充圆环内部 图像轮廓函数应用小例子
  14. 地理空间数据免费获取(一)
  15. Systemd Spec 宏
  16. npm run dev命令报错解决方式
  17. IOS13图标尺寸_7大原则,带你设计出更优秀的图标
  18. 李宏毅2020机器学习课程笔记(一)
  19. 网络安全与渗透:内网渗透,Cobalt_Strike(十三)此生无悔入华夏,男儿何不带吴钩
  20. ESIM模拟器生成事件使用流程

热门文章

  1. 奔向三张,不破不立:一个iOS开发工程师的职业规划思考(转自iOSer 逆,以资激励)
  2. 安卓平板装MySQL_准备购入一部平板作为学习用具,有推荐的吗?
  3. 关于石英晶体谐振器可靠性分析
  4. 学生信息管理系统用php,PHP案例:学生信息管理系统
  5. SAP-跟我一起学习重复制造
  6. MallBook推出二维码收款分账,开启简单分账新篇章
  7. 分享生活美好,三星Lifestyle系列电视和你一起拉满新年氛围
  8. ESP32学习一-程序下载(windows工具)
  9. 场景化分析rem布局原理
  10. 亚马逊、谷歌关停业务背后,互联网巨头疯狂扩张时代结束