鸟哥的私房菜——总结(二)

来源:互联网 发布:福州淘宝模特 编辑:程序博客网 时间:2024/06/06 14:47

第8章:linux磁盘与文件系统管理


1、df列出问价系统的整体磁盘使用量;-h以人们较易阅读的GB格式显示;-i用inode的数量来显示。df后加目录或文件时,会自动分析该文件或目录所在的分区

2、du评估文件系统的磁盘使用量;

3、磁盘的分区fdisk、格式化mkfs、检验(fsck、badblocks)与挂载(mount)在以后实际应用中加深理解;


第9章:文件的压缩和打包


1、linux上常见的压缩命令是gzip与bzip2;tar可以将很多文件打包成一个文件,单纯的tar只有打包,没有提供压缩的功能,后来GNU计划中,将整个tar与压缩的功能结合在一起;

2、用命令gzip新建的压缩文件为*.gz的文件名;

3、cat可以读取纯文本文件,zcat可以读取gzip的压缩文件;

4、gzip和bzip2都可以对目录进行压缩,但是是将目录内的每个文件分别压缩,因此需要打包命令tar

5、tar 

-j代表有bzip2支持压缩;文件名最好加.bz2

-z代表有gzip支持压缩;文件名最好加.gz

-c新建打包文件;

-t查看打包文件内容;

-v在解压缩过程中将正在处理的文件名显示出来;

-x解打包或解压缩功能;

-p保留文件或目录的原属性;

-f加文件名

可以仅解压缩文件夹中的单一文件

6、如果想要在命令行的两行输入时,第一行最后面加反斜杠\并按下enter键,就能到第二行继续输入了。

7、备份工具:dump;从备份恢复:restore

8、光盘写入工具:新建镜像文件mkisofs,光盘刻录cdrecord

9、dd命令可以读取磁盘设备的内容。


第10章:vim编辑器的使用


1、在vim里面空格和tab得到的结果是不一样的;

2、vim中常用的按键操作:

一般模式常用的按钮:

ctrl+f 屏幕向下移动一页;

ctrl+b屏幕向上移动一页;

0或者home键 移到这一行最前面字符处;

$或者end键移动到这一行最后的字符处;

G移动到文件的最后一行;

nG移动到文件的第n行;

gg移动到文件的第一行,相当于1G;

N[enter]光标向下移动n行;

/word向下查找字符串,n重复前一个查找,N反向进行前一个查找;

?word向上查找字符串;

:n1,n2s/word1/word2/gn1和n2是数字,在n1和n2行之间寻找word1单词,并全替换成word2

x在该行中向后删除一个字符,X向前删除一个字符;

dd删除光标所在的一整行,ndd删除光标所在的向下n行;

yy复制光标所在的那一行;

p在光标下一行粘贴,P在光标上一行粘贴;

J光标所在行和下一行合并;

u复原前一个操作;

ctrl+r重做上一个操作;

.重复前一个操作;

块的选择ctrl+v、复制y、与粘贴p、删除d

多文件编辑::(n编辑下一个文件)(:N编辑上一个文件)(:files列出目前打开的文件)

多窗口:(:sp[filename]打开一个新窗口)(ctrl+w+j/k切换到下/上方窗口)(ctrl+w+q离开)

编辑模式下

i进入插入模式;

r进入替换模式

命令行模式下

:wq保存后离开

3、语系编码转换:iconv,甚至可以将繁体中文转换为简体中文


第11章  认识与学习bash


1、我们必须通过“shell”将我们输入的命令与内核通信,好让内核可以控制硬件来正确无误的工作,而/bin/bash是Linux默认的shell。

2、linux有外部命令和内置在bash当中的命令,通过命令type可以知道某命令还不是bash内部命令。

3、shell的变量功能:、

可以用echo这个命令来显示变量,变量内容在被显示时,前面必须加上字符$

变量的设置,直接用等号就行,如:myname=zztecho $myname;就会显示出zzt

变量设置时,等号两边不能直接接空格符

若该变量在其他子进程执行,需要用export使变量编程环境变量;

取消变量用unset 变量名称

read可以读取来自键盘输入的变量,declare、typeset可以声明变量的类型;

数组变量类型,数组的设置方式是:var[index]=content,读取数组方式${数组};

4、进入子进程用命令bash,离开用exit;子进程会继承父进程的环境变量但不会继承自定义变量;

5、在一串命令中,在反单引号`之内的命令将会被先执行;

6、查看环境变量env;

7、用$RANDOM可以取出一个介于0-32767的随机数;

8、用set查看所有的变量,包括环境变量和自定义变量;

9、PS1可以设置系统登录时显示的提示符;

10、限制用户的某些系统资源,如打开文件的数量、使用cpu的时间等,用命令ulimit

11、命令别名设置alias,取消用unalias;

命令别名和自定义的变量在注销bash后就会失效;

12、历史记录命令history,可以用!!执行上一个命令,!66执行第66个命令,!al执行最近以al开头的命令;

13、系统登录时会读取两个配置文件:/etc/profile和~/.bash_profile或~/.profile;

14、source读入环境配置文件的命令,source 文件名;

15、stty -a可以列出系统的按键与按键内容;注意ctrl+s暂停屏幕的输出,ctrl+Q回复屏幕的输出;

16、数据流重定向,标准输入<或<<;标准输出>或>>;

如果想要将数据累加而不想要将旧的数据删除,用>>;

17、/dev/null垃圾黑洞,可以吃掉任何导向这个设备的信息;

18、<和<<可将由键盘输入的数据改由文件内容代替;如,cat > file < file2;<<代表结束输入的意思;

19、在命令和命令中间用分号;隔开,这样分号前的命令执行完后就会立刻执行下一个命令;

20、两个命令之间还可以用与&&和或||,对多个命令进行判断执行;

21、管道命令|

22、选取命令:cut,可以根据分割字符切割后,按数字选取;

23、grep从一行中选出所需要的信息;

24、last可以查出有哪些用户登录了主机;

25、排序命令sort,排序的字符与语系的编码有关,因此排序时最好用LANG=C让语系统一;

26、排序后想要将重复的数据仅列出一个,用uniq;

27、查看某一文件有多少字、多少行、多少字符,用wc命令;

28、双向重定向:tee,可以同时将数据流送到文件和屏幕;如:ls -l /home | tee file |more;

29、tr可以删除一段信息中的文字,或者进行文字信息的替换;

30、col将tab键换成对等的空格键;expand将tab键转成空格键,后面还可以加数字控制空格数目;

31、join将两个文件当中相同数据的那一行加在一起;paste直接将两行粘在一起,中间以tab键隔开;

32、split可以将大文件切割成数个小文件,小文件可以以大小或者行数来定义;

33、参数代换命令:xargs,可以读入stdin的数据,很好用!!!!!!!!!!!!!用法xargs command


第12章 正则表达式与文件格式化处理


1、shell的正则表达式和perl的基本一致;使用正则表达式时要特别注意当时环境的语系,否则会产生不同的结果;

2、符号^在中括号之内和之外是不同的!在括号内代表“反向选择”,在括号之外代表定位在行首;

3、查找空白行可以用^$,因为只有行首和行尾,所以可以找出空白行;

4、sed工具,可以对数据进行替换、删除、新增、选取特定行等功能!

sed后面接的动作务必用两个单引号括住;

用法:sed [-nefr] [动作];动作n1,n2 function,n1,n2代表进行动作的行数;

function:

a:新增;

c: 替换过;

d:删除;

i:插入;

s:替换;

5、数据处理工具:awk sed用于整行数据的处理,而awk将一行分成多个字段处,在字段内处理,默认的字段分隔符是空格或tab键;

awk使用的模式:awk '条件类型1{动作1}条件类型2{动作2}' filename

如:last -n 5 |awk 'awk {print $1 "\t" $3}'$1表示第一列

$0表示一整行数据;

NF表示每一行拥有的字段总数;

NR表示awk目前处理的是第几行数据;

FS表示目前的分隔字符;

awk中也可以使用逻辑运算符;

在awk动作中,如果有多个命令辅助时,可以用分号隔开;与bash,shell中的变量不同,在awk中变量可以直接使用,不用加$符号;

6、比较两个文件:diff


原创粉丝点击