Linux常用指令汇总

一、Linux简述

1、概述

  • Linux是目前应用最广泛的服务器操作系统;
  • 基于Unix,开源免费;
  • 由于系统的稳定性和安全性,市场占有率很高,几乎成为程序代码运行的最佳系统环境;
  • linux不仅可以长时间的运行我们编写的程序代码,还可以安装在各种计算机硬件设备中,如手机、路由器等,Android程序最底层就是运行在linux系统上的。

2、目录结构

在这里插入图片描述

  • bin (binaries)存放二进制可执行文件
  • sbin (super user binaries)存放二进制可执行文件,只有root才能访问
  • etc (etcetera)存放系统配置文件
  • usr (unix shared resources)用于存放共享的系统资源
  • home 存放用户文件的根目录
  • root 超级用户目录
  • dev (devices)用于存放设备文件
  • lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
  • mnt (mount)系统管理员安装临时文件系统的安装点
  • boot 存放用于系统引导时使用的各种文件
  • tmp (temporary)用于存放各种临时文件
  • var (variable)用于存放运行时需要改变数据的文件

二、常用指令

命令格式:命令 - 选项 参数【命令和参数可以为空】

1、操作文件及目录

指令 参数 示例 描述
cat cat 1.txt 显示文本文件内容
more more 1.txt 分页显示文本文件内容,可以前后翻页,空格向后,b向前
less less 1.txt 分页显示文本文件内容,可以前后翻页,空格向后,b向前,支持底行模式
head head 1.txt 查看文本开头部分;默认十行
head -[num] head -20 1.txt 查看文本开头部分指定行数
tall tall 1.txt 查看文本结尾部分;默认十行
tall -f tall -f 1.txt 循环滚动读取文件并动态显示在屏幕上;根据文件属性追踪
tall -F tall -F 1.txt 循环滚动读取文件并动态显示在屏幕上;文件文件名追踪
wc wc 1.txt 统计文本的行数、字数、字符数
wc -m wc -m 1.txt 字符数
wc -w wc -w 1.txt 文本字数
wc -l wc -l 1.txt 文本行数

2、系统常用指令

指令 参数 示例 描述
top top 显示当前系统中耗费资源最多的进程
data data 显示系统当前时间
ps -e/-A ps -e 显示所有进程;环境变量
ps -f ps -ef 全格式显示
ps -a ps -a 显示所有用户的所有进程(包括其他用户)
ps -u ps -au 按用户名和启动时间顺序显示进程
ps -x ps -aux 显示无控制终端的进程
kill -9 kill -9 pid 强制杀死一个进程

3、压缩解压缩

指令 参数 示例 描述
gzip gzip 1.txt 压缩后面的文件或者文件夹
gzip -d gzip -d 1.txt gz 解压后面的压缩文件
tar -c tar -cvf 1.tar 1.txt 建立一个压缩文件的参数指令;例如将1.txt压缩为1.tar,也可指定多个文件或者文件夹
tar -x tar -cvf 1.tar 1.txt 解开一个压缩文件的参数指令
tar -z tar -zcvf[zxvf] 1.tar 1.txt 是否需要用gzip,使用gzip压缩或者解压
tar -v 压缩的过程中显示文件
tar -f 使用档名,在f之后要立即接档名

4、文件权限操作

Linux文件权限的描述格式解读
在这里插入图片描述

  • r 可读权限,w可写权限,x可执行权限(也可以用二进制表示 111 110 100 --> 764)
  • 第1位:文件类型(d 目录,- 普通文件,l 链接文件)
  • 第2-4位:所属用户权限,用u(user)表示
  • 第5-7位:所属组权限,用g(group)表示
  • 第8-10位:其他用户权限,用o(other)表示
  • 第2-10位:表示所有的权限,用a(all)表示
指令 参数 示例 描述
chmod chmod u+r 1.txt 修改文件或目录的权限;u表示当前用户;g表示同组用户;o表示其他用户;a表示所有用户;r表示可读;w表示可写;x表示可执行
chmod -R chmod -R u+r dir1 修改指定目录及其子目录的所有文件的权限
chmod 三位数字 chmod 746 1.sh 直接指定文件的权限。7:表示可读可写可执行,4+2+1;6:表示可读可写,4+2;…

5、常用快捷键及符号命令

指令 参数 示例 描述
Ctrl+C 停止进程
Ctrl+L 清屏
Ctrl+r 搜索历史命令
Ctrl+q 退出
tap 自动补全
> echo “haha” >> 1.txt 将前一条命令的输出,写入到后面的文本中;将文本清空,然后写入
>> echo “haha” >> 1.txt 将前一条命令的输出,写入到后面的文本中;不清空文本,追加到文本最后
* 速配符,指所有

6、系统信息

指令 描述
arch 显示机器的处理器架构
uname -m 显示机器的处理器架构
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2007 显示2007年的日历表
clock -w 将时间修改保存到 BIOS

7、关机、重启、登出

指令 描述
shutdown -h now 关闭系统
init 0 关闭系统
telinit 0 关闭系统
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启
reboot 重启
logout 注销

8、文件和目录

指令 描述
cd /home 进入 ‘/ home’ 目录’
cd … 返回上一级目录
cd …/… 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
cd - 返回上次所在的目录
pwd 显示工作路径
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls [0-9] 显示包含数字的文件名和目录名
tree 显示文件和目录由根目录开始的树形结构
lstree 显示文件和目录由根目录开始的树形结构
mkdir dir1 创建一个叫做 ‘dir1’ 的目录’
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除一个叫做 ‘file1’ 的文件’
rmdir dir1 删除一个叫做 ‘dir1’ 的目录’
rm -rf dir1 删除一个叫做 ‘dir1’ 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp dir/* 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
cp -r dir1 dir2 复制一个目录及子目录
ln -s file1 lnk1 创建一个指向文件或目录的软链接
ln file1 lnk1 创建一个指向文件或目录的物理链接
find / -name file1 从 ‘/’ 开始进入根文件系统搜索文件和目录
find / -user user1 搜索属于用户 ‘user1’ 的文件和目录
find /home/user1 -name *.bin 在目录 ‘/ home/user1’ 中搜索带有’.bin’ 结尾的文件
find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
find / -name *.rpm -exec chmod 755 ‘{}’ | 搜索以 ‘.rpm’ 结尾的文件并定义其权限
find / -xdev -name *.rpm 搜索以 ‘.rpm’ 结尾的文件,忽略光驱、捷盘等可移动设备
locate *.ps 寻找以 ‘.ps’ 结尾的文件 - 先运行 ‘updatedb’ 命令
whereis halt 显示一个二进制文件、源码或man的位置
which halt 显示一个二进制文件或可执行文件的完整路径

三、vim编译器

vi / vim是Linux上最常用的文本编辑器而且功能非常强大。只有命令,没有菜单,下图表示vi命令的各种模式的切换图
在这里插入图片描述

1、修改文本

指令 描述
i 在光标前插入
l 在光标当前行开始插入
a 在光标后插入
A 在光标当前行末尾插入
o 在光标当前行的下一行插入新行
O 在光标当前行的上一行插入新行
:wq 保存并退出

2、定位命令

指令 描述
:set nu 显示行号
:set nonu 取消行号
gg 调到首行
G 跳到末行
:n 跳到第n行

3、替换和取消命令

指令 描述
u undo;取消上一步操作
Ctrl+r redo,返回到undo之前
r 替换光标所在处的字符
R 从光标所在处开始替换,按Esc键结束

4、删除命令

指令 描述
x 删除光标所在处字符
nx 删除光标所在处后的n个字符
dd 删除光标所在行,ndd删除n行
dG 删除光标所在行到末尾行的所有内容
D 删除光标所在处到行末尾的内容
5.7d 删除指定范围的行

5、常用快捷键

指令 描述
shift+zz 保存退出
v 进入字符可视模式
V 进入行可视模式
Ctrl+v 进入块可视模式

四、参考资料

1、命令枚举

ls命令:

ls -a 列出目录所有文件,包含以.开始的隐藏文件
ls -A 列出除...的其它文件
ls -r 反序排列
ls -t 以文件修改时间排序
ls -S 以文件大小排序
ls -h 以易读大小显示
ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来

cp命令:

-i 提示
-r 复制目录及目录内所有项目
-a 复制的文件与原文件时间一样

操作命令:

Enter    向下 n 行,需要定义。默认为 1 行
Ctrl+F   向下滚动一屏
空格键  向下滚动一屏
Ctrl+B  返回上一屏
=       输出当前行的行号
:f     输出文件名和当前行的行号
V      调用vi编辑器
!命令   调用Shell,并执行命令
q       退出more

less命令:

-i  忽略搜索时的大小写
-N  显示每行的行号
-o  <文件名> 将less 输出的内容在指定文件中保存起来
-s  显示连续空行为一行
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 /? 有关)
N:反向重复前一个搜索(与 /? 有关)
-x <数字> 将“tab”键显示为规定的数字空格
b  向后翻一页
d  向后翻半页
h  显示帮助界面
Q  退出less 命令
u  向前滚动半页
y  向前滚动一行
空格键 滚动一行
回车键 滚动一页
[pagedown]: 向下翻动一页
[pageup]:   向上翻动一页

which命令:

which     查看可执行文件的位置。
whereis 查看文件的位置。
locate  配合数据库查看文件位置。
find        实际搜寻硬盘查询文件名称。

whereis命令:

-b   定位可执行文件。
-m   定位帮助文件。
-s   定位源代码文件。
-u   搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

locate命令:

-l num(要显示的行数)
-f   将特定的档案系统排除在外,如将proc排除在外
-r   使用正则运算式做为寻找条件

chmod命令:

常用参数:
-c 当发生改变时,报告处理信息
-R 处理指定目录以及其子目录下所有文件
权限范围:
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
权限代号:
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限

df命令:

-a 全部文件系统列表
-h 以方便阅读的方式显示信息
-i 显示inode信息
-k 区块为1024字节
-l 只显示本地磁盘
-T 列出文件系统类型

du命令:

-a 显示目录中所有文件大小
-k 以KB为单位显示文件大小
-m 以MB为单位显示文件大小
-g 以GB为单位显示文件大小
-h 以易读方式显示文件大小
-s 仅显示总计
-c或--total  除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和

ps命令:

-A 显示所有进程
a 显示所有进程
-a 显示同一终端下所有进程
c 显示进程真实名称
e 显示环境变量
f 显示进程间的关系
r 显示当前终端运行的进程
-aux 显示所有包含其它使用的进程

kill命令:

-l  信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a  当处理当前进程时,不限制命令名和进程号的对应关系
-p  指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s  指定发送信号
-u  指定用户

free命令:

-b 以Byte显示内存使用情况
-k 以kb为单位显示内存使用情况
-m 以mb为单位显示内存使用情况
-g 以gb为单位显示内存使用情况
-s<间隔秒数> 持续显示内存
-t 显示内存使用总合

2、参考资料

Linux 最常用命令
Linux常用命令大全

Guess you like

Origin blog.csdn.net/QWERTYzxw/article/details/121617835