发表于: 2017-04-17 22:13:25

2 1475


今天完成的事情:完成线下报名,读了一下《Linux命令行与Shell脚本编程大全》,以下是做的笔记:


1. 基本的bash shell命令

1.1 启动shell

/etc/passwd文件包含所有系统用户列表及基本配置信息:rich:x:501:501:Rich Blum:/home/rich:/bin/bash

    - 用户名

    - 用户密码(占位符)

    - 用户的系统UID(用户ID)

    - 用户的系统GID(组ID)

    - 用户的全名

    - 用户的默认主目录

    - 用户的默认shell程序

1.2 shell提示符

$:bash shell的默认提示符

echo $PS1:显示当前默认提示符设置(PS1:控制默认命令行提示符的格式)

$ PS1="[\t][\u]\$":创建新的提示符,只需给PS1变量赋一个新的字符串

1.3 bash手册

man bash:man手册页面

1.4 浏览文件系统

常见Linux目录名称:

    /: 根目录

    /bin: GNU用户工具

    /boot: 启动目录

    /dev: 设备目录

    /etc: 系统配置文件目录

    /home: 主目录,创建用户目录

    /lib: 库目录,存放系统和应用程序的库文件

    /media: 媒体目录

    /mnt: 挂载目录

    /opt: 可选目录,存放可选软件包

    /root: 根主目录

    /sbin: GNU管理员级工具

    /tmp: 临时目录

    /usr: 用户安装软件目录

    /var: 可变目录,存放经常变化的目录

遍历目录

cd:切换目录

绝对文件目录:从根目录开始

相对文件目录: .:表示当前目录;..:表示当前目录的父目录

1.5 文件和目录列表

1.5.1基本列表功能

ls:显示当前目录下的文件和目录

    -F:区分文件和目录

    -a:显示隐藏文件和目录

    -R:列出当前目录下包含的目录中的文件

1.5.2修改输出信息

ls -l:显示详细信息

    - 文件类型

    - 文件的权限

    - 文件的硬链接总数

    - 文件属主的用户名

    - 文件属组的组名

    - 文件的大小

    - 文件的上次修改时间

    - 文件名或目录名

1.5.3 完整的参数列表

ls -sail: -a:列出所有文件 -i:列出索引节点 

     -l:产生一个长列表 -s:列出文件的块大小

1.5.4 过滤输出列表

ls -l 文件名:文件名中,?代表一个字符,*代表零个或者多个字符

1.6 处理文件

1.6.1 创建文件

touch 文件名:创建空文件,也可以更改文件的访问和修改时间

    -a:只修改访问时间

    -m:只修改修改时间

    -t:指定特定的时间

1.6.2 复制文件

cp 源文件目录 目标文件目录:复制文件

cp -R:递归复制整个文件目录

1.6.3 链接文件

cp -l:创建硬链接,其中包含了源文件的信息及位置。

cp -s:创建软连接,一个符号链接。

1.6.4重命名文件

mv 文件名 新文件名:mv命令是用来移动文件的(moving),也可以用于重命名。

1.6.5 删除文件

rm:删除文件也就是移除(removing),加-f强制删除。

1.7 处理目录

1.7.1创建目录

mkdir:创建目录

1.7.2删除目录

rmdir:删除空目录,可以--ignore-fail-on-non-empty删除非空目录

rm -rf:强制递归删除目录

1.8 查看文件内容

1.8.1 查看文件统计信息

status:显示某个文件的所有状态信息

1.8.2 查看文件类型

file:查看文件类型

    文本文件

    可执行文件

    数据文件

1.8.3 查看整个文件

    1.   `cat`:查看整个文件。`-n`添加行号,`-s`压缩空白行

1. more:显示文件的内容,但会在显示每页数据之后停下来

2. less:显示文件内容,功能上更高级

1.8.4 查看部分文件

1. tail:显示文件末尾部分内容

2. head:显示文件开头部分内容

2. 更多的bash shell命令

2.1 检测程序

2.1.1 探查进程

ps:显示运行在当前控制台的当前用户的进程

    -ef:查看系统上运行的所有进程

    -H:把输出的进程组织成层级形式,即树状

    --forest:显示层级结构信息

    1.Unix风格参数

    2.BSD风格参数

    3.GNU全字参数

2.1.2 实时监测进程

top:实时显示进程信息

2.1.3 结束进程

kill PID:结束进程号的进程

killall 进程名:结束相关进程

2.2 检测磁盘空间

2.2.1 挂载存储媒体

mount:显示当前系统挂载的设备列表

umount:卸载挂载的设备

2.2.2 使用df命令

df:挂载已挂载磁盘的使用的情况

-h:以人类可读的形式显示

2.2.3 使用du命令

du:显示某个特定目录的磁盘使用情况

2.3 处理数据文件

2.3.1 排序数据

sort:将文件数据默认按照标准的字符排序。

-n:将数字按照数字排序

-M:按月排序


2.3.2 搜索数据

grep pattern file:搜索数据

-v:反向搜索,搜出不匹配的项目

-n:显示匹配数据所在的行数

-c:只显示所在行数

2.3.3 压缩数据

1. bzip2工具(.bz2)

    bzip2:压缩文件

    bunzip2:解压.bz2文件

    

    bzcat:显示压缩的文本文件内容

    bziprecover:尝试修复损坏的压缩文件

1. gzip工具(.gz)

    gzip:压缩文件

    gunzip:解压文件

    gzcat:查看压缩的文本文件内容

1. zip工具(.zip)

    zip:压缩文件

    unzip:解压文件

    

    zipcloak:创建一个加密压缩文件,包含指定的文件和目录

    zipnote:从zip文件中提取批注

2.3.4 归档数据

tar:归档打包数据,常见加上-zxvf

tar命令选项:

    -A:将一个已有的tar归档文件追加到另一个tar文件

    -c:创建一个新的tar归档文件

    -d:检查归档文件和文件系统的不同之处,或者是从已有的etar归档文件中删除

    -r:追加文件到已有的tar文件末尾

    -t:列出已有tar归档文件的内容

    -u:将比tar归档文件中已有的同名文件新的文件追加到该tar归档文件中

    -x:从已有的tar归档文件中提取文件

    

    -C dir:切换到指定目录

    -f file:输出结果到文件或设备

    -j:将输出重定向给bzip2命令来压缩内容

    -p:保留所有文件权限

    -v:在处理文件时显示文件

    -z:将输出重定向给gzip命令来压缩内容


明天预计完成的事情:到线下报道


遇到的问题:几个不同的压缩方式有什么区别

收获:学习了linux相关的基础命令


返回列表 返回列表
评论

    分享到