APT软件包管理工具
APT工具功能:
获取、安装、编译、卸载和查询deb包,检查软件包依赖关系
Ubuntu采用集中式的软件仓库机制
1.配置文件描述镜像服务器站点
/etc/apt/sources.list
2.配置文件存放每个站点有哪些应用程序
索引文件所在位置
/var/lib/apt/lists
3.apt工具
常用APT命令
①apt-get:用于管理软件包,包括安装卸载升级等操作
②apt-cache:用于查询软件包信息
命令格式:
①apt-get 子命令【选项】 操作对象
子命令:
update:下载最新软件包列表信息
install:下载所需要的软件包并进行安装
下载的软件包位置
remove:卸载软件包
--purge 与remove子命令一起使用,完全卸载软件包
===================
了解:
clean:删除缓存区所有已下载的包文件
upgrade
autoremove
check
====================
选项:
-d 仅下载软件包,而不安装或解压
-f 修复系统中存在的软件包依赖性问题
-m 当发现缺少关联软件包时,仍试图继续执行
-q 将输出作为日志保留,不获取命令执行进度
--reinstall 与install子命令一起使用,重新安装软件包
-b 在下载完源码包后,编译生成相应的软件包
-s 不做实际操作,只是模拟命令执行结果
-y 对所有询问都作肯定的回答,apt-get不再进行任何提示
-u 获取已升级的软件包列表
-h 获取帮助信息
-v 获取apt-get版本号
======================
②apt -cache
格式:子命令 【选项】 操作对象
show :获取二进制软件包详细信息
policy 获取软件包当前的安装状态
depends 获取该软件包的依赖信息
rdepends 获取所有依赖于该软件包的软件包
======================================================
了解:
showpkg 获取二进制软件包的常规描述信息
showsrc 获取源码包的详细描述信息
stats 获取软件源的基本统计信息
dump 获取软件源中所有软件包的简要信息
dumpavail 获取当前中已安装的所有软件包的描述信息
unmet 获取所有未满足的依赖关系
search 根据正则表达式检索软件包
pkgnames 列出所有已安装软件包的名字
====================
shell命令
1.shell是什么
本质:命令行解析器
2.shell有什么作用
解析shell命令 用户和内核进行交互
英文翻译 贝壳 保护的作用
保护内核
shell是一个应用程序存放在/bin目录下
/bin/bash
3.shell的种类:
1. sh
2.csh
3.ksh
4.bash
特点:
能够提供环境变量以配置用户shell环境,支持历史纪录,内置算术,支持通配符表达式,将常用命令内置简化。
4.shell命令行格式
命令行提示符:
当前登录用户用户名@主机名:当前路径$代表普通用户#代表root用户
linux @Ubuntu:/bin$
shell格式:
命令 【选项】 。。。【操作对象】。。
5.shell执行过程:
用户在命令行提示符键入命令文本,开始于shell进行交互接着,shell将用户命令和按键转化为内核所能理解的指令控制系统做出相应,知道控制相关硬件设备shell将输出结果通过shell提交给用户。
6.命令体验
shutdown -h +45 " aaaaa" //45分钟后关机并显示aaaaa
shutdown -r //重启
reboot
7.查看历史记录
:history
!编号 执行对应命令
!a 从后向前找到第一个a开头的命令
vi .bashrc文件 加.的是隐藏的配置文件
修改这个文件可以修改history显示的行数
8.shell的特殊字符:
Ⅰ.通配符
可以匹配多个文件
* 匹配任意长度字符串
? 匹配一个长度的字符
【。。。】匹配其中指定的一个字符
【a-z】匹配指定范围
【^…】除了制定的都能匹配
Ⅱ.管道
| 管道的符号
第一个命令的输出作为第二个命令的输入
Ⅲ.输入输出重定向
标准输入:
鼠标键盘
标准输出:
终端
输出重定向:
>file 将file文件重定向为输出源 新建模式
ls /usr > lsoutput.txt,将ls /usr写道txt文件中,如有同名文件删除 覆盖之前文件里的内容
>>file 不覆盖或者叫追加模式
输入重定向:
<file 将file文件重定向为输入源
wc < file1,统计file1中的内容
错误重定向:
2>或&> 将由命令产生的错误作为输入源
Ⅳ.命令置换
command1`command2` //将命令2的输出作为命令1的参数
举例:ls`pwd`
将一个命令的输出作为另一个命令的参数
命令必须是有输出的命令
9.shell常用命令
man:
1 shell命令或应用程序
2 系统调用函数
3 库函数
passwd:
修改登录密码
格式:passwd 选项 登录名
-l lock 锁定用户
-u unlock
--stdin:可以通过管道输出的数据作为用户的密码
用法:echo”123“ | passwd --stdin user1
su:切换用户
sudo su 切换超级用户
echo:显示一行内容
-n 不换行
clear:清屏 ==ctrl + l
df:查看文件系统磁盘空间使用情况
-a 查看所有
-h 用更易懂的方式显示磁盘空间
-T 打印文件系统的的类型
du:列出文件和目录所使用的磁盘块(512字节/块)
-a 仅列出空闲文件数
-k 列出磁盘使用情况(kb)
-s 列出总的空闲空间(kb)
10.用户管理
多任务,多用户
1./etc/passwd 用户信息配置文件
linux : x :1000 :1000: linux,,, :/home/linux:/bin/bash
用户名:密码占位符:用户id:组id:用户信息,,,:用户家目录:解析器用的是/bin/bash下的
2./etc/group/ 组信息配置文件
3./etc/shadow passwd镜像文件
root : ! :15605 : 0 : 99999 : 7 : : :
用户名:密码:创建时间:密码修改间隔:密码有效期:警告时间:(不重要)
4.添加用户:
adduser
tail -1从后向前显示1行
tail -1/etc/passwd
添加用户规则的配置文件:etc/adduser.conf
SKEL==/etc/skel 模板 所有新建用户从模板中复制添加到家目录下
5.删除用户
deluser
--remove-home和家目录一起删掉
6.usermod:修改用户属性
-u uid
-G 修改组id将用户添加到linux修改的是附加组的id
11.进程管理
进程是什么?
程序的一次执行就是一个进程
ps
ps aux :查看当前操作系统所有进程信息
pid:进程id号
top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。
top显示系统当前的进程和其他状况,是一个动态显示过程
kill:发信号给进程
kill -l //查询kill可以发送的所有信号
9) sigkill
kill -9 PID //杀死进程
===============================================================================
shell命令(了解)
1、less/more:分屏显示文件
less:分屏显示文件,可以往前查看,也可以往后查看文件内容,可以搜索字符串(/string)
shift + > (pagedown) 向后查看,shift+ < (pageup)想前查看
q:退出
more:分屏显示文件,只能按空格键往后查看
2、rmdir: 删除目录
3、grep: 查找字符串
grep "myopen" ./* -nR
4、head: 显示文件开头
head -number filename
5、tail: 显示文件结尾
tail -number filename
6、sort: 按次序显示文件
将文件进行排序,并将排序结果标准输出
-r:以相反的顺序来排序;
-b:忽略每行前面开始出的空格字符;
-c:检查文件是否已经按照顺序排序;
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
-f:排序时,将小写字母视为大写字母;
-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;
-m:将几个排序号的文件进行合并;
-M:将前面3个字母依照月份的缩写进行排序;
-n:依照数值的大小排序;
-o<输出文件>:将排序后的结果存入制定的文件;
-t<分隔字符>:指定排序时所用的栏位分隔字符;
eg:sort -u filename 去掉相同的行
7、uniq: 去掉文件中相邻重复的行,然后输出到标准输出
8、diff: 比较两个文件
diff 命令能比较单个文件或者目录内容。如果指定比较的是文件,则只有当输入为文本文件时才
有效。以逐行的方式,比较文本文件的异同处。如果指定比较的是目录的 的时候, diff 命令会
比较两个目录下名字相同的文本文件。 列出不同的二进制文件、公共子目录和只在一个目录出现
的文件。
-b或--ignore-space-change 不检查空格字符的不同。
-c 显示全部内文,并标出不同之处。
-B或--ignore-blank-lines 不检查空白行。
-i或--ignore-case 不检查大小写的不同。
9、file: 查看文件类型
该命令用来识别文件类型,也可用来辨别一些文件的编码格式。它是通过查看文件的头部信息来
获取文件类型,而不是像Windows通过扩展名来确定文件类型的。
10、date: 显示时间和日期
指定格式显示时间:
linux@ubuntu:~/yuwei/test$ date "+now time : %Y-%m-%D %H:%M:%S%nmin:%s%n"
now time : 2017-41-07/03/17 01:41:02
min:1499013662
linux@ubuntu:~/yuwei/test$
设置时间:
date -s "2017-7-3 9:00:00"
%n : 下一行
%t : 跳格
%H : 小时(00-23)
%I : 小时(01-12)
%k : 小时(0-23)
%l : 小时(1-12)
%M : 分钟(00-59)
%p : 显示本地 AM 或 PM
%r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数
%S : 秒(00-60)
%T : 直接显示时间 (24 小时制)
%X : 相当于 %H:%M:%S
%Z : 显示时区
%a : 星期几 (Sun-Sat)
%A : 星期几 (Sunday-Saturday)
%b : 月份 (Jan-Dec)
%B : 月份 (January-December)
%c : 直接显示日期与时间
%d : 日 (01-31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001-366)
%m : 月份 (01-12)
%U : 一年中的第几周 (00-53) (以 Sunday 为一周的第一天的情形)
%w : 一周中的第几天 (0-6)
%W : 一年中的第几周 (00-53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00.99)
%Y : 完整年份 (0000-9999)
11、whereis: 查找命令
whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性
应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、 指定备用搜
索路径和搜索不寻常项的能力。
-b 定位可执行文件。
-m 定位帮助文件。
-s 定位源代码文件。
-u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
-B 指定搜索可执行文件的路径。
-M 指定搜索帮助文件的路径。
-S 指定搜索源代码文件的路径。
eg:whereis ls
(export PATH=$PATH:/home/linux/yuwei/test/app 修改路径)
12、which: 查找应用程序的位置
which ls
13、df : 检查linux服务器的文件系统的磁盘空间占用情况
-h 方便阅读方式显示
-i 显示inode信息
inode:文件索引节点。
-T 文件系统类型
14、du: 显示磁盘空间的使用情况
-h:以人类可读的方式显示
-s:显示目录占用的磁盘空间大小,不要显示其目录下的子目录和文件占用的磁盘空间大小
-c:显示几个目录或文件占用的磁盘空间大小,还要统计它们的总和
-l :统计硬链接占用磁盘空间的大小
-a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小
15、chown: 改变文件或目录的属主
chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名
或者组ID; 文件是以空格分开的要改变权限的文件列表, 支持通配符。 系统管理员经常使用
chown命令,在将文件拷贝到另一个用户的名录下之后,让用户拥有使用该文件的权限。
-c 显示更改的部分的信息
-f 忽略错误信息
-R 处理指定目录以及其子目录下的所有文件
-v 显示详细的处理信息
16、chgrp: 改变文件或目录所属的组
chgrp命令用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中,
组名可以是用户组的id,也可以是用户组的组名。 文件名可以是由空格分开的要改变属组的
文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),
则不能改变该文件的组。
-v或——verbose:显示指令执行过程;
-c或——changes:效果类似“-v”参数,但仅回报更改的部分;
-f或--quiet或——silent:不显示错误信息;
-h或--no-dereference:只对符号连接的文件作修改,而不是该其他任何相关文件;
-R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理;
--reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的
所属群组相同;
17、info: 获得帮助
就内容来说,info页面比man page编写得要更好、更容易理解,也更友好,但man page使用起来
确实要更容易得多。一个man page只有一页,而info页面几乎总是将它们的内容组织成多个区段
(称为节点),每个区段也可能包含子区段(称为子节点)。理解这个命令的窍门就是不仅要学
习如何在单独的Info页面中浏览导航,还要学习如何在节点和子节点之间切换。可能刚开始会一
时很难在info页面的节点之间移动和找到你要的东西,真是具有讽刺意味:原本以为对于新手来
说,某个东西比man命令会更好些,但实际上学习和使用起来更困难。
-d:添加包含info格式帮助文档的目录;
-f:指定要读取的info格式的帮助文档;
-n:指定首先访问的info帮助文件的节点;
-o:输出被选择的节点内容到指定文件。
?键:它就会显示info的常用快捷键。
N键:显示(相对于本节点的)下一节点的文档内容。
P键:显示(相对于本节点的)前一节点的文档内容。
U键:进入当前命令所在的主题。
M键:敲M键后输入命令的名称就可以查看该命令的帮助文档了。
G键:敲G键后输入主题名称,进入该主题。
L键:回到上一个访问的页面。 SPACE键:向前滚动一页。
BACKUP或DEL键:向后滚动一页。
Q:退出info。
18、who: 列出系统上的用户名单
whoami:列出当前登录的用户
19、write: 发送消息
write命令用于向指定登录用户终端上发送信息。通过write命令可传递信息给另一位登入系统的
用户,当输入完毕后,键入EOF表示信息结束,write命令就会将信息传给对方。如果接收信息的
用户不只登入本地主机一次,你可以指定接收信息的终端机编号。
write(参数)
参数:
用户:指定要接受信息的登录用户;
登陆终端:指定接收信息的用户的登录终端。
20、man: 获取帮助
NAME:命令的名称
SYNOPSIS:命令的常用参数
DESCRIPTION:命令的一般描述以及用途
OPTIONS:描述命令所有的参数或选项
SEE ALSO:列出联机帮助页中与该命令直接相关或功能相近的其他命令
BUGS:解释命令或其输出中存在的任何已知的问题或缺陷
EXAMPLES:普通的用法示例
AUTHORS:联机帮助页以及命令的作者
21、wc 命令
作用:测试文件的行数、字符数、字节数
-l 测试行数
-w 测试单词的个数
-m 测试的是字符数
-c 测试的是字节数
===========================================================================================