Linux
GNU&GPL 是Richard Stallman在1984年创建的。
Linux 的体系结构
- Linux内核
- Shell
- 文件系统
- 实用程序
软件包管理
将应用程序的二进制文件、配置文档、man/info帮助页面等文件合并打包在一个文件中,用户使用软件包管理器直接操作软件包,完成获取、安装、卸载、查询等操作。
主要分为:Deb软件包、Rpm软件包
软件包的命名:
dpkg相关命令:适用于没有网络或者网络较慢的环境,但可能会遇到依赖关系的问题。
相关命令如下:
dpkg -i <package> #安装一个在本地文件系统上存在的Debian软件包
dpkg -r <package> #移除一个已经安装的软件包
dpkg -P <package> #移除已安装软件包及其配置文件
dpkg -L <package> #列出安装的软件包清单
dpkg -s <package> #先出软件包的安装状态
apt相关命令:
在ubuntu中,使用软件源配置文件 /etc/apt/sources.list 列出最合适访问的镜像站点地址
相关命令如下:
apt-get subcommands [-d | -f | -m| -q| ] pkg
- apt-get remove:删除一个软件包时,将会连带删除与该软件包邮依赖关系的软件包。
- apt-get --purge remove:卸载软件包文件的同时,还删除软件包所使用的配置文件。
Shell命令
$:表示普通用户
#:表示超级用户
Shell 命令格式
- 命令三要素之间要有空格
- 多个命令在一行,要用分号分隔开
- 若一条命令不能在一行写完,在行尾使用反斜杠标明该条命令未结
Shell 特殊字符
Shell通配符
当需要用命令处理一批文件时,使用通配符使得操作更高效
例子:
Shell管道
管道可以把一系列命令连接起来,意味着第一个命令的输出作为第二个命令的输入,通过管道传递给第二个 命令,第二个命令的输出又作为第三个命令的输入,以此类推。
管道符号:"|"
**举例:**查看当前Linux有多少条命令
1、wc -w :计算有多少个单词(以空格结束即代表一个单词)
2、命令存放在/usr/bin中
Shell输入/输出重定向
输入/输出重定向是改变Shell命令或程序默认的标准输入/输出目标,重新定位到新的目标。
Linux中默认的标准输入定义为键盘,标准输出定义为终端窗口。
举例:
- 保存/usr下的文件名字
继续将/lib文件名保存到test.c
Shell命令置换
命令置换是讲一个命令的输出作为另一个命令的参数。
格式:
cammand1 `cammand2`
举例:
Shell 常用命令
关机命令:
sudo shutdown -h now #系统立即关机
sudo shutdown -h +45 "That is all" #45分钟后关机
sudo shutdown -r now #系统立即重启
sudo reboot now #系统立即重启
man命令:
查看命令的相关帮助
man commandname
passwd命令:
Linux每个账号必须同时具备用户名和密码。可以使用passwd命令,为已有账号重新修改用户口令。
passwd username
passwd #修改当前用户密码
sudo passwd #修改管理员密码
sudo passwd u1 #修改u1用户的密码
su命令:
用于临时改变用户身份,普通用户使用su命令可临时获得超级用户的权限。当要放弃当前用户身份,可以使用exit命令切换回来。
su [-c | -m -] usernamm
#选项"-c"表示执行一个命令后就结束,"-m"表示仍保留环境变量不变(默认); -表示转换用户身份时,同时使用该用户的环境
举例:
su -c date u1 #以u1用户执行date命令
echo命令:
用于在标准输出—显示器上显示一段文字,一般起到提示作用。
echo [-n] information
举例:
echo "hello world!" #显示 hello world!
echo hello world! #显示hello world!
#两者区别是:双引号会使字符原样输出,不带双引号只保留一个空格
df命令:
查看磁盘的空间使用情况
df [-a|-T|-h|-k] Filesystem
du命令:
列出目录和文件所使用的磁盘块数,没块占512个字节
du [-a|-h|-s]
# -a:仅列出空闲的文件数
# -h:列出磁盘的使用情况
# -s:列出总的空闲空间
用户管理相关
adduser命令:添加用户命令
deluser命令:删除用户同时删除用户的工作目录