linux学习笔记003

查看文本:

cat、tac、more、less、head、tail

cat:连接并显示

 -n 显示行号

 -E 显示行结束符 $是回车符

 -A 显示所有的控制符

 tac反过来查看

 

Ctrl+c 终止当前命令

 

分屏显示:

more、less

more: 向后翻

less:

 

head:查看前n行

tail:查看后n行

 -n

 

tail -f: 查看文件尾部,不退出,等待显示后续追加至此文件的新内容;用于查看日志等类似的文件。

 

文本处理:

cut、join、sed、awk

database:数据库

关系型数据库:

表:二维表

文本文件:

Tom:23:male:2013/05/06

cut:

 -d: 指定字段分隔符,默认是空格

 -f: 指定要显示的字段

  -f1,3

  -f1-3

文本排序:sort

 -n:数值排序

 -r: 降序

 -t: 字段分隔符

 -k: 以哪个字段为关键字进行排序

 -u: 排序后相同的行只显示一次

 -f: 排序时忽略字符大小写

 sort-t: -k3 -n /etc/passwd

 

uniq:

 -c: 显示文件中行重复的次数

 -d: 只显示重复的行

 

文本统计:wc (word count) 行数单词数 字符数

 -l 行数

 -w 单词数

 -c 字符数

 -L 最长的一行包含多少个字符

 

字符处理命令:tr ——转换或删除字符

tr [OPTION]... SET1 [SET2] tr 'ac' 'AB' 把a替换成A b替换成B

 -d: 删除出现在字符集中的所有字符

 

tr ab AB

tr -d 'ab'

 

bash及其特性:

shell: 外壳

GUI:Gnome, KDE, Xfce

CLI: sh, csh, ksh, bash(开源协定), tcsh,zsh(最新的sh)

root, student

程序:进程

进程:在每个进程看来,当前主机上只存在内核和当前进程

进程是程序的副本,进程是程序执行实例

用户工作环境:

bash:

 #root用户

 $普通用户

 

 tom,jerry

 

shell,子shell

pstree 显示进程树

bash—bash从init进程开始每个进程都是其子进程创建

bash:

1、命令历史、命令补全

2、管道、重定向

3、命令别名

4、命令行编辑

5、命令行展开

6、文件名通配

7、变量

8、编程 man bash可以查看bash帮助文档

命令行编辑:

光标跳转:

 Ctrl+a:跳到命令行首

 Ctrl+e:跳到命令行尾

 Ctrl+u: 删除光标至命令行首的内容

 Ctrl+k: 删除光标至命令行尾的内容

 Ctrl+l: 清屏

 

命令历史:

查看命令历史:history 当前目录下,.bash_history

 -c:清空命令历史

 -dOFFSET [n]: 删除指定位置的命令

 -w:保存命令历史至历史文件中

 

环境变量

PATH:命令搜索路径

HISTSIZE: 命令历史缓冲区大小1000条

命令历史的使用技巧:

!n:执行命令历史中的第n条命令;

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

!!: 执行上一条命令;

!string:执行命令历史中最近一个以指定字符串开头的命令

!$:引用前一个命令的最后一个参数;

Esc, .

Alt+.

tab

命令补全,路径补全

命令补全:搜索PATH环境变量所指定的每个路径下以我们给出的字符串开头的可执行文件,

如果多于一个,两次tab,可以给出列表;否则将直接补全;

路径补全:搜索我们给出的起始路径下的每个文件名,并试图补全;

 

命令别名(提高效率)

alias CMDALIAS='COMMAND [options][arguments]'

在shell中定义的别名仅在当前shell生命周期中有效;别名的有效范围仅为当前shell进程;

alias cls=clear

unalias cls

unalias CMDALIAS

 .bashrc 设置永久别名

 more.bashrc

\CMD 用命令本身而不是命令的引用

 

命令替换

命令替换: $(COMMAND), 反引号:`COMMAND` 使用命令执行结果

echo "The current directory is$(pwd)."

把命令中某个子命令替换为其执行结果的过程

file-2013-02-28-14-53-31.txt

touch ./file-$(date +%F-%H-%M-%S).txt

bash支持的引号:

``: 命令替换

"": 弱引用,可以实现变量替换

'': 强引用,不完成变量替换

 

文件名通配, globbing

*: 任意长度的任意字符

?:任意单个字符

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

 [abc], [a-m], [a-z], [A-Z], [0-9], [a-zA-Z],[0-9a-zA-Z]

 [:space:]:空白字符

 [:punct:]:标点符号

 [:lower:]:小写字母

 [:upper:]: 大写字母

 [:alpha:]: 大小写字母

 [:digit:]: 数字

 [:alnum:]: 数字和大小写字母

 

# man 7 glob可以看上面的

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

[[:alpha:]]*[[:space:]]*[^[:alpha:]]

 

文件名通配练习:

1、创建a123, cd6, c78m,c1 my,  m.z, k 67, 8yu, 789等文件;注意,以上文件是以逗号隔开的,其它符号都是文件名的组成部分;

2、显示所有以a或m开头的文件;

ls [am]*

3、显示所有文件名中包含了数字的文件;

ls *[0-9]*

ls *[[:digit:]]*

4、显示所有以数字结尾且文件名中不包含空白的文件;

ls *[^[:space:]]*[0-9]

5、显示文件名中包含了非字母或数字的特殊符号的文件;

ls *[^[:alnum:]]*

 

用户、组、权限

安全上下文(secure context):

权限:

r, w, x

文件:

r:可读,可以使用类似cat等命令查看文件内容;

w:可写,可以编辑或删除此文件;

x: 可执行,eXacutable,可以命令提示符下当作命令提交给内核运行;

目录:

r: 可以对此目录执行ls以列出内部的所有文件;

w: 可以在此目录创建文件;

x: 可以使用cd切换进此目录,也可以使用ls-l查看内部文件的详细信息;

rwx:

 r--:只读4

 r-x:读和执行6

 ---:无权限0

 

0 000 ---:无权限

1 001 --x: 执行

2 010 -w-: 写

3 011 -wx: 写和执行

4 100 r--: 只读

5 101 r-x: 读和执行

6 110 rw-: 读写

7 111 rwx: 读写执行

755:rwxr-xr-x

rw-r-----: 640

660:rw-rw----

rwxrwxr-x:775

 

用户:UID, /etc/passwd

组:GID, /etc/group

影子口令:

用户:/etc/shadow

组:/etc/gshadow

用户类别:

管理员:0

普通用户: 1-65535

 系统用户:1-499

 一般用户:500-60000

用户组类别:

管理员组:

普通组:

 系统组:

 一般组:

 

用户组类别:

 私有组:创建用户时,如果没有为其指定所属的组,系统会自动为其创建一个与用户名同名的组

 基本组:用户的默认组

 附加组,额外组:默认组以外的其它组

 

进程:tom tom

对象:rwxrw-r--  jerry tom a.txt

tom: ls

rwxr-xr-x root root /bin/ls

ls

man 5 passwd

/etc/passwd

account: 登录名

password: 密码  密码!!被锁定用户

UID:

GID:基本组ID

comment: 注释

HOME DIR:家目录

SHELL:用户的默认shell

/etc/shadow 1表示md5后八位表示salt杂质

account: 登录名

encrypted password: 加密的密码

 

加密方法:

 对称加密:加密和解密使用同一个密码

 公钥加密:每个密码都成对儿出现,一个为私钥(secret key),一个为公钥(public key)

 单向加密,散列加密:提取数据特征码,常用于数据完整性校验

  1、雪崩效应 计算文件MD5码 md5sum 文件名

  2、定长输出

  MD5:Message Digest, 128位定长输出信息摘要 密码!!被锁定用户

  SHA1:Secure Hash Algorithm, 160位定长输出   安全哈希加密

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值