本篇文章主要介绍一些基础的Linux系统(类unix系统)终端命令的使用
有关Linux的问题可以看这篇文章,本篇文章主要介绍一些比较简单常用的命令,方便入门使用Linux,体验终端的魅力。一般情况下终端快捷键为ctrl+alt+t
Linux系统目录结构
命令行使用
1 | [命令] (选项) (参数) |
man —— 查看帮助手册
- 这个命令主要查看某个命令如何使用,比如 man man,这个命令就是查看 man 命令的使用,当我们输入终端时就会看到输出使用方法和一些参数使用。
- 这时候就可以通过上下方向键或者鼠标滚轮进行翻页,按q即可退出。
cd —— 切换目录
pwd —— 打印当前目录
ls —— 列出目录内容
一般当我们打开终端是,默认目录就是当前用户家目录 ~ 或 /home/xxx/ ,如果是以root账户登录,则是 /root/ 。
1
cd .. # 进入上一层文件夹,'.' 代表当前目录,'..' 代表上一层目录(父目录)。
下图是在终端执行上述命令的演示,还有一些参数的使用可以通过 man 命令查看。
cat 连接多个文件并打印到标准输出
- 显示文件内容,常用作预览文件内容。
cp —— 复制文件(夹)
mv —— 移动文件、文件夹、重命名文件(夹)
rm —— 删除文件(夹)
mkdir —— 新建文件夹
touch —— 新建文件
命令使用
1
2
3
4
5
6cp/mv [文件] [目标文件夹]
cp/mv -r [文件夹] [目标文件夹]
rm [文件]
rm [-r] [文件夹]
mkdir [文件夹]
touch [文件]如果需复制文件夹则需要添加 -r 进行递归操作。
注:我们常常在网上会看到一些大神会给出 rm -rf /* 这一条”神奇“的命令,这是一条删库的命令,非常危险。不过,对于一些企业的服务器,大多会对这些危险的命令会做出限制。以下是对该命令的解析:
1
2
3
4rm # 删除命令
-r # 递归
-f # 强制执行、省去二次确认
/* # 根目录下所有文件tar —— 打包、压缩
tar命令 可以为linux的文件和目录创建档案。利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。首先要弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。为什么要区分这两个概念呢?这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令)。
zip格式
压缩: zip -r [目标文件名].zip [原文件/目录名]
解压: unzip [原文件名].zip
注:-r参数代表递归tar格式(该格式仅仅打包,不压缩)
打包:tar -cvf [目标文件名].tar [原文件名/目录名]
解包:tar -xvf [原文件名].tar
注:c参数代表create(创建),x参数代表extract(解包),v参数代表verbose(详细信息),f参数代表filename(文件名),所以f后必须接文件名。tar.gz格式
方式一:利用前面已经打包好的tar文件,直接用压缩命令。
压缩:gzip [原文件名].tar
解压:gunzip [原文件名].tar.gz方式二:一次性打包并压缩、解压并解包
打包并压缩: tar -zcvf [目标文件名].tar.gz [原文件名/目录名]
解压并解包: tar -zxvf [原文件名].tar.gz
注:z代表用gzip算法来压缩/解压。
tar.bz2格式
方式一:利用已经打包好的tar文件,直接执行压缩命令:
压缩:bzip2 [原文件名].tar
解压:bunzip2 [原文件名].tar.bz2方式二:一次性打包并压缩、解压并解包
打包并压缩: tar -jcvf [目标文件名].tar.bz2 [原文件名/目录名]
解压并解包: tar -jxvf [原文件名].tar.bz2
注:小写j代表用bzip2算法来压缩/解压。
tar.xz格式
方式一:利用已经打包好的tar文件,直接用压缩命令:
压缩:xz [原文件名].tar
解压:unxz [原文件名].tar.xz方式二:一次性打包并压缩、解压并解包
打包并压缩: tar -Jcvf [目标文件名].tar.xz [原文件名/目录名]
解压并解包: tar -Jxvf [原文件名].tar.xz
注:大写J代表用xz算法来压缩/解压。
clear —— 清屏
- 清除当前屏幕终端上所有信息
cal —— 显示当前日历或指定日期的日历
通过终端就可以查看日期
1
cal [-mj] [月] [年]
uname —— 显示Linux系统信息
uname命令 用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。
top —— 显示或管理执行中的程序
kill —— 删除执行中的进程或工作
killall —— 使用进程的名称来杀死一组进程
ps —— 报告当前系统的进程状态
free —— 显示内存的使用情况
- top可以实时动态地查看系统的整体运行情况,是一个综合了多方信息监测系统性能和运行信息的实用工具。通过top命令所提供的互动式界面,用热键可以管理。按键q可退出。
- 如果觉得 top 太过单调,也可以使用 htop ,不过需要自己安装。
- 一般 kill/killall 后接需要结束的进程(组)的名称或PID。
tree —— 树状图列出目录的内容
- 以树状图列出目录的内容,方便管理。
1
tree [-L] level # 限制目录显示层级
ifconfig —— 配置和显示Linux系统网卡的网络参数
- ifconfig命令 被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。对于 有些发行版,并未预装,这就需要手动安装 net-tools,也可以使用
1
ip addr
grep —— 强大的文本搜索工具
- grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。
tee —— 从标准输入读取数据并重定向到标准输出和文件。
- 需要同时查看数据内容并输出到文件时使用。
who —— 显示目前登录系统的用户信息
whoami —— 打印当前有效的用户名称
which —— 查找并显示给定命令的绝对路径
sudo —— 以其他身份来执行命令
- sudo命令 用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。
1
2
3sudo -i
sudo -s
sudo su # 获取root权限 - root用户有最高权限,可以任意修改系统文件,随意修改系统文件有可能造成不可逆的破坏,操作需谨慎。
chown —— 用来变更文件或目录的拥有者或所属群组
chown命令 改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。只有文件主和超级用户才可以便用该命。
1
chown -R [文件夹]
chmod —— 用来变更文件或目录的权限
演示如下,如果修改文件夹内所有文件的权限,则需要加 -R 递归参数