目录
(8)vi/vim +文件名 +行号 -以vi编辑器方式打开文件,若文件不存在则创建,加行号可以指定光标到指定行(vim编辑器属于GNU工具的一种,属于软件更为恰当)
(9)man +页数 +命令/函数名 -打开man手册查看指定命令或函数的用法
(1)touch +文件名 -创建普通文件,如图5(touch后面可以添加多个文件,以空格隔开,创建多个文件)
(3)cp +原文件 +目标文件 -把原文件的内容粘贴到目标文件(目标文件不存在则创建)
(4)mv +原文件(目录) +路径 -移动原文件或目录到目标路径下
(10)ln +文件名 +硬链接名 -创建硬链接文件(硬链接文件保存原文件所在inode号)
(11)gzip +文件名 -压缩文件(由gzip方式压缩)
(12)gunzip +文件名(后缀名为.gz) -解压文件
(13)tar -cf 目标文件名 原文件名 -创建归档文件(归档指将文件和目录一起打包在一个文件)
(1)dpkg -用于离线情况下已经下载的软件包进行处理(用于Deb软件包)
(2)su +用户名 -切换到指定用户(无用户名,默认切换到超级用户)
(2)top -动态监视进程的状态 (能够实时更新进程情况)
(2)netstat -r -打开路由表 (可以查看操作系统有那些网络)
(3)nslookup +域名 -查域名解析后的id(第二排和第三排是DSN服务器的网络,DNS服务器的配置文件在/etc/resolv.conf)
一、shell命令
shell是liunx内核的一个外层保护工具并负责用户与内核的交互
shell的本质是命令解释器
shell命令包括指令、选项和参数。这三要素之间要用空格隔开。多命令在一行,用分号隔开
1、shell基本命令
(1)ls -打印当前路径的内容
ls -a 打印当前路径的内容并包含隐藏文件
ls -l 以列表形式打印当前路径所有内容
![图一](https://i-blog.csdnimg.cn/blog_migrate/9533f8f198c775e2fd3bb71761668959.png)
liunx下ubuntu版本中文件分为七大文件类型,l指软链接文件,s指套接字文件(与网络编程有关),p指管道文件,-指普通文件(如.c文件.txt文件),b指块设备文件,c指字符设备文件,d指目录文件
ls -la(al)(选项顺序不影响)以列表形式打印当前路径所有内容并包含隐藏文件
(2)pwd -打印当前的绝对路径
![图2](https://i-blog.csdnimg.cn/blog_migrate/3b72cac4f5ae945d958ccf11541e62e9.png)
(3)cd +路径 -跳转到指定路径
(4)wc -统计文件中的单词数、字符数、行数
wc -l -统计行数
wc -w -统计单词数
wc -c -统计字符数
![](https://i-blog.csdnimg.cn/blog_migrate/71a73a5749c401c5ce8887e93470457e.png)
(5)echo -显示文本
echo +字符串 -将指定的字符串显示到终端
![](https://i-blog.csdnimg.cn/blog_migrate/bc5cb769dc740d5f839ef73597ac3e77.png)
(6)date -显示时间
![图5](https://i-blog.csdnimg.cn/blog_migrate/c1a7f3d1578a19bfcc8092164ecb9bd7.png)
(7)shutdown -关机重启命令
shutdown -h -关机
shutdown -h +n -n分钟之后关机
shutdown -h now -立马关机
shutdown -r +n -n分钟之后重启
(8)vi/vim +文件名 +行号 -以vi编辑器方式打开文件,若文件不存在则创建,加行号可以指定光标到指定行(vim编辑器属于GNU工具的一种,属于软件更为恰当)
命令行模式(打开编辑器最开始就是命令模式):
-j -光标向下移动
-k -光标向上移动
-h -光标向左移动
-l -光标向右移动
yy -复制当前行
nyy -复制当前n行
dd -剪切当前行
ndd -剪切当前n行
p -粘贴
gg -光标到到第一行
G -光标到最后一行
u -撤销上次操作
Ctrl + r -反撤销
gg=G -代码对齐
i -进入插入模式
s -删除光标所在字符并进入插入模式(编辑模式,可以在光标处编写代码)
S -删除光标所在行并进入插入模式
a -光标跳转到后一个字符并进入插入模式
A -光标跳转到行末并进入插入模式
: -进入末行模式(可在:后输入指令)
![](https://i-blog.csdnimg.cn/blog_migrate/8e057cef145f10fb3f5144035adb50ae.jpeg)
:%/old/new/g -替换文件中的字符
:/string -查找字符串,n查找下一个字符串
:split +文件名 -垂直打开另一个文件(通过Ctrl + w 切换窗口)
:vsp +文件名 -水平打开另一个文件
:wq -退出编辑器并保存文件,其中w为保存,q为退出可单独使用
:q! -强制退出文件,不改变文件内容
(9)man +页数 +命令/函数名 -打开man手册查看指定命令或函数的用法
第一页:shell 命令
第二页:系统调用函数
第三页:库函数
2、文件管理命令
(1)touch +文件名 -创建普通文件,如图5(touch后面可以添加多个文件,以空格隔开,创建多个文件)
![](https://i-blog.csdnimg.cn/blog_migrate/a993763e67a507fad61e567d5ad3e6a7.png)
(2)file +文件名 -打印文件的类型
(3)cp +原文件 +目标文件 -把原文件的内容粘贴到目标文件(目标文件不存在则创建)
cp -r +原目录 +目标目录 -把原目录包括其中的文件一起粘贴到目标目录(目标目录不存在则创建)
(4)mv +原文件(目录) +路径 -移动原文件或目录到目标路径下
mv +原文件(目录) +目标文件(目录) -重命名原文件或目录
(5)rm +目标文件 -删除目标文件
rm -r +目录 -删除目录
(6)mkdir +目录名 -创建目录
(7)rmdir +目录名 -删除目录
(8)cat +文件名 -将文件内容打印到终端
(9)grep +字符串 +文件名 -在文件中查找字符串
grep -n -显示行号
(10)ln +文件名 +硬链接名 -创建硬链接文件(硬链接文件保存原文件所在inode号)
ln -s +文件名 +软链接名 -创建软链接文件(软链接文件保存原文件所在路径)
(11)gzip +文件名 -压缩文件(由gzip方式压缩)
gzip -d -解压文件
gzip -num -指定压缩比率(1-9个等级),9压缩比率最大
(12)gunzip +文件名(后缀名为.gz) -解压文件
(13)tar -cf 目标文件名 原文件名 -创建归档文件(归档指将文件和目录一起打包在一个文件)
tar -xf 归档文件名(后缀名为.tar) -释放归档文件(还原被归档文件后,归档文件不会消失)
tar -c(create)-创建一个新的归档文件
tar -f -给归档文件命名(f选项放最后与归档文件名相邻)
tar -j -由tar生成归档,然后用bzip2压缩
tar -z - 由tar生成归档,然后用gzip压缩
tar -czf 目标文件名 -创建归档文件并压缩
(14)df -查看文件系统的使用情况
df -a -显示所有物理文件系统的使用情况,包括虚拟文件系统
df -h -以兆字节(G)为单位显示
(15)du -查看磁盘空间使用情况
du -k -列出磁盘的使用情况(数据大小以KB为单位)
dui -s -列出总的空闲空间(KB)
3、软件包管理命令
liux下流行的软件包有两种分别为Deb,Rpm。
(1)dpkg -用于离线情况下已经下载的软件包进行处理(用于Deb软件包)
dpkg -i(install) +软件包名 -安装软件
dpkg -r(remove)+软件名 -卸载软件(移除时用软件名代替软件包名)
dpkg -L -列出已安装的软件包清单
dpkg -S +软件名 -显示出软件包的安装状态
(2)apt-get -在线从互联网下载软件包并处理
apt-get update -更新镜像源 (更新镜像源的目的在于能随时更新软件包所在的服务器,便于于需要下载时建立好需求时间最短的索引路径)
apt-get install +软件名 -在线下载安装软件
apt-get install -d -只下载不安装(只下载软件包)
apt-get --reinstall install +软件名 -如果文件损害,则修复文件
apt-get clean -删除/var/cache/apt/archives(ubuntu 20.04下软件包默认存放位置)路径下所有软件包
(3)apt-cache -查询搜索软件包的相关信息
apt-cache search +软件包完整名或关键字 -在线搜索相关的软件包
apt-cache policy +软件名 查询软件包的安装状态
apt-cache depends +软件名 -查询软件包的依赖关系,如软件包包括的其他的软件包
4、用户管理命令(一般都需要加上sudo,赋予管理员权限)
(1)psswd +用户名 -修改指定用户的密码
(2)su +用户名 -切换到指定用户(无用户名,默认切换到超级用户)
(3)exit -退出当前用户
(4)adduser +用户名 -添加用户
(5)deluser +用户名 -删除用户
deluser --remove-home +用户 -删除用户的同时删除用户的工作目录(此时只删除了用户在/home下的目录,要彻底删除需要在/etc/passwd文件(存放用户信息),/etc/group文件(存放用户组信息)删除用户相关内容)
(6)usermod -修改用户属性
usermod -d /home/name -m -在/home下添加新用户目录
usermod -l newname oldname 更改旧用户名字(与上一条命令联合使用,完整更改用户名字)
usermod -d /home/name -m -l newname oldname(在登录另一个用户的情况下使用,最好拥有管理员权限,并且此时被修改名字的用户需要退出登录)
5、进程管理命
(1)ps -显示进程的状态
ps -aux 显示所有包含其他使用者的行程(其中START表示进程的状态,R表示正在执行,T表示暂停执行,S表示阻塞状态,<表示高优先级的进程。PID为进程号)
![](https://i-blog.csdnimg.cn/blog_migrate/a29c223ccda0def4658884687794781f.png)
(2)top -动态监视进程的状态 (能够实时更新进程情况)
![](https://i-blog.csdnimg.cn/blog_migrate/87ca796cc0a1803cafd04c69458b5569.png)
(3)pstree -以树状图的形式显示进程
pstree -p -同时显示进程PID号
![](https://i-blog.csdnimg.cn/blog_migrate/154ee9dc7aa315d72885977d6d094269.png)
(4)kill -杀死进程
kill -信号 +进程号
kil -9 +进程号 -强制杀死进程
6、网络配置命令
(1)ifconfig -查看当前系统的所有网络配置情况
ifconfig ens33(这是有线网卡的名字,无限网卡为wlan) -指定查看ens33的网络配置
ifconfig ens33 +ip地址 netmask +子网掩码 -修改有线网卡ens33的ip地址
![](https://i-blog.csdnimg.cn/blog_migrate/00c1721a06169c4d13e9548695826036.png)
(2)netstat -r -打开路由表 (可以查看操作系统有那些网络)
![](https://i-blog.csdnimg.cn/blog_migrate/80553bb796bd75de8366ca930c7d9d9e.png)
(3)nslookup +域名 -查域名解析后的id(第二排和第三排是DSN服务器的网络,DNS服务器的配置文件在/etc/resolv.conf)
![](https://i-blog.csdnimg.cn/blog_migrate/5c477b9ad6e18e4c5cd61b15f84fb81e.png)