您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux

这些 Linux 指令你都掌握了吗

时间:2019-06-12 09:29:26  来源:  作者:

文件 & 目录操作(16 个)

ls

● ls -a 查看所有文件,包含隐藏文件

● ls -l 简写 ll,查看详细信息

● ls -h 文件大小以易读的方式显示

cd

● cd ../ 返回上级目录

● cd ~ 前往家目录

● cd - 返回上一次所在目录

cp

● cp -r 复制目录及目录下文件

find

● find / -name 'target' 查询根目录下面文件名为 target 的文件

mkdir

● mkdir -p /tmp/test 递归创建目录

mv

● mv -f source destination 强制

pwd

● pwd 显示当前路径

rm

● rm -rf / 强制删除根目录及目录下的文件,就是我们通常所说的删库跑路

touch

● touch target 创建 target 文件,若文件存在则改变文件时间戳

tree

● tree 功能是以树形结构显示目录下的内容

basename

● basename /tmp/1 显示文件名

dirname

● dirname /tmp/1 显示路径

chattr

● chattr +i /tmp/1 加 i 属性,防止文件被修改

lsattr

● lsattr /tmp/1 查看文件的扩展属性

file

● file /tmp/1 显示文件类型

md5

● md5 /tmp/1 显示文件 MD5 值

查看文件 & 内容处理(18 个)

cat

● cat -n 显示行号

● cat file1 file2 打开文件 1 和 2

more

● more file1 逐页显示

less

● less file1 也是逐页显示,与 more 方向相反

head

● head -n file 显示文件头 n 行

tail

● tail -n file 显示文件尾 n 行

● tailf file 实时显示文件尾 10 行,常用于跟踪日志信息

cut

● who|cut -b 1-3,5 输出每行的 1 至 3 个字节和第 5 个字节

● who|cut -c -3 输出每行的 1 至 3 个字符

● who|cut -c 3- 输出每行的第 3 个字符到行尾

● who|cut -d ' ' -f 1 以空格为分隔符,输出第一个域

split

● split -b 10k date.file 将文件分割为 10k 的多个子文件

● split -b 10k date.file split_file 指定子文件前缀为 split_file

paste

● psate file1 file2 file3 将 3 个文件按列合并

sort

● sort -n 按照数值大小排序

● sort -r 倒序排序

● sort -t 指定分隔符

● sort -u 忽略相同行

uniq

● uniq -c 显示出现次数,只有相邻的才算重复

● uniq -d 只显示重复的行

● unqi -u 只显示不重复的行

wc

● wc -l 显示列数

diff

● diff file1 file2 比较两个文件差异

rev

● rev file 反向输出文件内容

grep

● grep 'target' file 过滤输出文件中包含 target 的行

● grep -v 'target' file 过滤输出文件中不包含 target 的行

● grep -c 'target' file 过滤输出文件中包含 target 的行数

● grep -i 'target' file 忽略大小写

● egrep '[1-9]|a' file 过滤输出正则匹配到的行

● seq 10 | grep "5" -A 3 显示匹配某个结果之后的 3 行

● seq 10 | grep "5" -B 3 显示匹配某个结果之前的 3 行

● seq 10 | grep "5" -C 3 显示匹配某个结果的前三行和后三行

join

● join file1 file2 将两个文件中,指定栏位内容相同的行连接起来

tr

● cat text | tr ' ' ' ' 将制表符替换成空格

vim

三种模式:

● 编辑模式(命令模式)

● 输入模式

● 末行模式

模式的转换

编辑 -> 输入

i: 在当前光标所在字符的前面,转为输入模式;

a: 在当前光标所在字符的后面,转为输入模式;

o: 在当前光标所在行的下方,新建一行,并转为输入模式;

I:在当前光标所在行的行首,转换为输入模式

A:在当前光标所在行的行尾,转换为输入模式

O:在当前光标所在行的上方,新建一行,并转为输入模式;

输入 -> 编辑

ESC

编辑 -> 末行:

:

末行 -> 编辑:

ESC,ESC

打开文件

vim +# :打开文件,并定位于第#行

vim +:打开文件,定位至最后一行

vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首

关闭文件

:q 退出

:wq 保存并退出

:q! 不保存并退出

:w 保存

:w! 强行保存

移动光标(编辑模式)

  • 逐字符移动

h: 左

l: 右

j: 下

k: 上

#h: 移动#个字符

  • 以单词为单位移动

w: 移至下一个单词的词首

e: 跳至当前或下一个单词的词尾

b: 跳至当前或前一个单词的词首

#w: 移动#个单词

  • 行内跳转

0: 绝对行首

^: 行首的第一个非空白字符

$: 绝对行尾

  • 行间跳转

#G:跳转至第#行

gg: 第一行

G:最后一行

翻屏

Ctrl+f: 向下翻一屏

Ctrl+b: 向上翻一屏

Ctrl+d: 向下翻半屏

Ctrl+u: 向上翻半屏

删除单个字符

x: 删除光标所在处的单个字符

#x: 删除光标所在处及向后的共#个字符

删除命令: d

dd: 删除当前光标所在行

#dd: 删除包括当前光标所在行在内的#行;

撤消编辑操作

u:撤消前一次的编辑操作

#u: 直接撤消最近#次编辑操作

连续u命令可撤消此前的n次编辑操作

撤消最近一次撤消操作:Ctrl+r

查找

/PATTERN

?PATTERN

n 下一个

N 上一个

文件压缩 & 解压缩(3 个)

tar

● tar zxvf FileName.tar.gz 解压

● tar zcvf FileName.tar.gz DirName 压缩

zip

● zip -r html.zip/home/html 递归压缩

unzip

● unzip test.zip -d /tmp 解压到指定目录下

信息显示(11 个)

uname

● uname -a 显示系统全部信息

hostname

● hostname 显示主机名

dmesg

● dmesg 显示开机信息

uptime

● uptime 显示系统运行时间及负载

stat

● stat 显示文件的状态信息

du

● du -sh 显示路径下所有文件大小

● du -sh local 显示路径下 local 目录文件大小

● du -sh * 显示路径下所有目录文件大小

df

● df -h 显示系统磁盘空间的使用情况

top

● top 实时显示系统资源使用情况

free

● free -m 以 M 为单位查看系统内存

date

● date +"%Y-%m-%d" 2019-05-28

● date -d "1 day ago" +"% Y-% m-% d" 输出昨天日期

● date -d "+1 day" +% Y% m% d 显示前一天的日期

● date -d "-1 day" +% Y% m% d 显示后一天的日期

● date -d "-1 month" +% Y% m% d 显示上一月的日期

● date -d "+1 month" +% Y% m% d 显示下一月的日期

● date -d "-1 year" +% Y% m% d 显示前一年的日期

● date -d "+1 year" +% Y% m% d 显示下一年的日期

cal

● cal 日历信息

搜索文件(4 个)

which

● which pwd 显示命令路径

find

● find /-name 'target' 查询根目录下面文件名为 target 的文件

whereis

● whereis php 查找二进制命令

locate

● locate target 从数据库 (/var/lib/mlocate/mlocate.db) 查找目标文件,使用 updatedb 更新库

进程管理(11 个)

jobs

● jobs 查看当前有多少在后台运行的命令

bg

● bg 1 将一个在后台暂停的命令,继续执行,1 为作业号

● (ctrl+z)可以挂起程序,返回作业号

fg

● fg 1 将后台中的命令调至前台继续运行 ,1 为作业号

kill

● kill 进程号 杀进程

● kill -9 进程号 强杀进程

● killall

● killall php 通过进程名字杀进程

● killall -9 php 通过进程名字强杀进程

pkill

● 用法同上

crontab

● crontab -l 查看定时任务

● crontab -e 编辑定时任务

● crontab -l -u user1 查看 user1 定时任务,只有 root 才有权限

● crontab -e -u user1 编辑 user1 定时任务,只有 root 才有权限

ps

● ps -ef 查看进程,显示 UID,PPIP,C 与 STIME,每个程序所使用的环境变量栏位

● ps -axu 查看所有进程,并显示属于用户

pstree

● pstree -p 显示当前所有进程的进程号和进程 id 树

● pstree -a 显示所有进程的所有详细信息树

nohup

● nohup command & 退出账户时不挂断程序,仍在后台运行

pgrep

● pgrep -l httpd 查找 http 相关的进程号

用户管理(7 个)

useradd

● useradd boy -u 888 建立一个新用户账户,并设置 ID

● useradd –g sales jack –G company,employees

● -g:加入主要组 -G:加入次要组

usermod

● usermod -G staff newuser2 将 newuser2 添加到组 staff 中

● usermod -l newuser1 newuser 修改 newuser 的用户名为 newuser1

● usermod -L newuser1 锁定账号 newuser1

● usermod -U newuser1 解除对 newuser1 的锁定

userdel

● userdel -f user1 强制删除用户

● userdel -r user1 删除用户的同时,删除与用户相关的所有文件

groupadd

● groupadd -g 1000 group1 建立一个新组,并设置组 ID 加入系统

passwd

● passwd user1 修改 user1 密码

● passwd -l user1 锁住密码

● passwd -d user1 删除密码

su

● su root 切换身份

sudo

● sudo command 已管理员身份运行命令

网络操作(11 个)

telnet

● telnet 127.0.0.1 登录远程主机

ssh

● ssh root@127.0.0.1 -p22 登录远程主机

scp

● scp local_file remote_username@remote_ip:remote_folder 本地拷贝到远程

● scp remote_username@remote_ip:remote_folder local_file 远程拷贝到本地

wget

● wget url 下载一个文件

● wget --limit-rate=300k url 限速下载

● wget -c url 断点续传

● wget -b url 后台下载

ping

● ping www.baidu.com -c 2 收到两个包就结束

route

● route 显示当前路由

ifconfig

● ifconfig 查看、配置、启用或禁用网络接口

ifup

● ifup eth0 开启 eth0 网卡

● ifdown

● ifdown eth0 关闭 eth0 网卡

netstat

● netstat -at 列出所有 tcp 端口

● netstat -au 列出所有 udp 端口

● netstat -l 只显示监听端口

ss

● ss -t -a 显示所有 tcp 链接

● ss -l 显示处于监听状态的套接字

磁盘 & 文件系统(7 个)

mount

● mount /dev/hda1 /mnt 将 /dev/hda1 挂载到 /mnt 目录下

● umount

● umount -v /mnt/mymount/ 卸载 /mnt/mymount/

fsck

● fsck -y /dev/hda2 检查并修复 linux 文件系统

dumpe2fs

● dumpe2fs /dev/hda1 查看文件系统信息

dump

● ‍dump -0u -f /tmp/homeback.bak /home

将 /home 目录所有内容备份到 /tmp/homeback.bak 文件中,备份层级为 0 并在 /etc/dumpdates 中记录相关信息

fdisk

● fdisk /dev/sdb

输入 m 列出可以执行的命令

输入 p 列出磁盘目前的分区情况

输入 d 然后选择分区,删除现有分区

输入 print 查看分区情况,确认分区已经删除

输入 n 建立新的磁盘分区

输入 w 最后对分区操作进行保存

mkfs

● mkfs -t ext3 /dev/sda6 将 sda6 分区格式化为 ext3 格式

系统权限(3 个)

chmod

● chmod 777 file1 修改 file1 文件权限为 777

● chmod u+x,g+w file1 为 file1 设置自己可以执行,组员可以写入的权限

chown

● chown -R root /usr/meng 修改将目录 /usr/meng 及其下面的所有文件、子目录的文件主改成 root

chgrp

● chgrp -R mengxin /usr/meng 将 /usr/meng 及其子目录下的所有文件的用户组改为 mengxin

关机重启(5 个)

shutdown

● shutdown -h now 立即关机

● shutdown +5 "System will shutdown after 5 minutes" 指定 5 分钟后关机,同时送出警告信息给登入用户

halt

● halt -p 关闭系统后关闭电源

● halt -d 关闭系统,但不留下纪录

poweroff

● poweroff -f 强制关闭操作系统

logout

● logout 退出当前登录的 Shell

exit

● exit 退出当前登录的 Shell

其他(6 个)

echo

● echo 'hello' 打印字符串、变量

print

● printf 'hell0' 格式化输出字符串

rpm

● rpm -ivh your-package.rpm 安装 rpm 包

● rpm -Uvh your-package.rpm 升级 rpm 包

● rpm -e package 卸载

● rpm -qa 列出所有安装过的包

● rpm -ql 包名 rpm 包中的文件安装到那里去

yum

● yum install php 安装 php

● yum remove php 卸载 php

clear

● clear 清屏

history

● history 10 最近使用的 10 条历史命令
 



Tags:Linux   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
作用显示文件或目录所占用的磁盘空间使用命令格式du [option] 文件/目录命令功能显示文件或目录所占用的磁盘空间一些写法的区别du -sh xxx 显示总目录的大小,但是不会列出...【详细内容】
2021-12-23  Tags: Linux  点击:(12)  评论:(0)  加入收藏
以下是服务器安全加固的步骤,本文以腾讯云的CentOS7.7版本为例来介绍,如果你使用的是秘钥登录服务器1-5步骤可以跳过。1、设置复杂密码服务器设置大写、小写、特殊字符、数字...【详细内容】
2021-12-20  Tags: Linux  点击:(7)  评论:(0)  加入收藏
大数据技术AI Flink/Spark/Hadoop/数仓,数据分析、面试,源码解读等干货学习资料 98篇原创内容 -->公众号 Linux sed 命令是利用脚本来处理文本文件。sed 可依照脚本的指令来处...【详细内容】
2021-12-17  Tags: Linux  点击:(22)  评论:(0)  加入收藏
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行net...【详细内容】
2021-12-13  Tags: Linux  点击:(28)  评论:(0)  加入收藏
今天,我们来了解下 Linux 系统的革命性通用执行引擎-eBPF,之所以聊着玩意,因为它确实牛逼,作为一项底层技术,在现在的云原生生态领域中起着举足轻重的作用。截至目前,业界使用范...【详细内容】
2021-12-10  Tags: Linux  点击:(29)  评论:(0)  加入收藏
近日,外媒 ZDNet 评选了适合专业人士使用的 Linux 桌面版操作系统,并排出了前五名。这里的专业人士主要指从事开发、运维、网络安全等行业的人员。开发者首选:Fedora 来自 Red...【详细内容】
2021-12-09  Tags: Linux  点击:(27)  评论:(0)  加入收藏
su和sudo这两个命令是Linux运维必须要会的,通常在生产环境中都是使用普通帐号来登录,再使用su或sudo来执行一些管理命令。su命令su:run a shell with substitute user and grou...【详细内容】
2021-12-07  Tags: Linux  点击:(23)  评论:(0)  加入收藏
0|无效端口,通常用于分析操作系统 1|传输控制协议端口服务多路开关选择器 2|管理实用程序 3|压缩进程 5|远程作业登录 7|回显 9|丢弃 11|在线用户 13|时间 17|每日引用 18|...【详细内容】
2021-12-07  Tags: Linux  点击:(32)  评论:(0)  加入收藏
虽然技术在进步,Linux各发行版本已经更新迭代的很多了,目前Centos、Redhat已经出到8了,Ubuntu已经到21.04了,但我相信一定有很多朋友跟我一样因为各种各样的问题还在使用老久的2...【详细内容】
2021-11-30  Tags: Linux  点击:(41)  评论:(0)  加入收藏
1. 前言本文主要介绍Rocky Linux 8.5的新特性以及如何把当前版本升级至最新版本。Rocky Linux在RHEL 8.5发布不到48小时的时间里,Rocky Linux开发团队成功地对iso镜像进行了...【详细内容】
2021-11-26  Tags: Linux  点击:(76)  评论:(0)  加入收藏
▌简易百科推荐
作用显示文件或目录所占用的磁盘空间使用命令格式du [option] 文件/目录命令功能显示文件或目录所占用的磁盘空间一些写法的区别du -sh xxx 显示总目录的大小,但是不会列出...【详细内容】
2021-12-23  mitsuhide1992    Tags:du命令   点击:(12)  评论:(0)  加入收藏
什么是linux内核linux就像是一个哲学的最佳实践。如果非要对它评价,我真的不知道该怎么赞叹,我只能自豪地说着:“linux的美丽简直让人沉醉。”我只能说是我处在linux学习的修炼...【详细内容】
2021-12-23  linux上的码农    Tags:linux内核   点击:(15)  评论:(0)  加入收藏
本文将比较 Linux 中 service 和 systemctl 命令,先分别简单介绍这两个命令的基础用法,然后进行比较。从 CentOS 7.x 开始,CentOS 开始使用 systemd 服务来代替 service服务(dae...【详细内容】
2021-12-23  软件架构    Tags:systemctl   点击:(14)  评论:(0)  加入收藏
mv是move的缩写,可以用来移动文件或者重命名文件名,经常用来备份文件或者目录。命令格式mv [选项] 源文件或者目录 目标文件或者目录命令功能mv命令中第二个参数类型的不同(...【详细内容】
2021-12-17  入门小站    Tags:mv命令   点击:(23)  评论:(0)  加入收藏
大数据技术AI Flink/Spark/Hadoop/数仓,数据分析、面试,源码解读等干货学习资料 98篇原创内容 -->公众号 Linux sed 命令是利用脚本来处理文本文件。sed 可依照脚本的指令来处...【详细内容】
2021-12-17  仙风道骨的宝石骑士    Tags:sed命令   点击:(22)  评论:(0)  加入收藏
Node是个啥?  写个东西还是尽量面面俱到吧,所以有关基本概念的东西我也从网上选择性地拿了下来,有些地方针对自己的理解有所改动,对这些概念性的东西有过了解的可选择跳过这段...【详细内容】
2021-12-15  linux上的码农    Tags:node   点击:(25)  评论:(0)  加入收藏
难道只有我一个人觉得Ubuntu的unity桌面非常好用吗?最近把台式机上面的Ubuntu 16.04格式化了,装了黑苹果用了一周,不得不说,MacOS确实很精美,软件生态比Linux丰富很多,比Windows简...【详细内容】
2021-12-14  地球末日村    Tags:ubuntu   点击:(41)  评论:(0)  加入收藏
简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行net...【详细内容】
2021-12-13  窥镜天    Tags:Linux netstat   点击:(28)  评论:(0)  加入收藏
对于较多数量的文件描述符的监听无论是select还是poll系统调用都显得捉襟见肘,poll每次都需要将所有的文件描述符复制到内核,内核本身不会对这些文件描述符加以保存,这样的设计...【详细内容】
2021-12-13  深度Linux    Tags:Linux   点击:(19)  评论:(0)  加入收藏
今天,我们来了解下 Linux 系统的革命性通用执行引擎-eBPF,之所以聊着玩意,因为它确实牛逼,作为一项底层技术,在现在的云原生生态领域中起着举足轻重的作用。截至目前,业界使用范...【详细内容】
2021-12-10  架构驿站    Tags:eBPF   点击:(29)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条