0

0

做为一名优秀的php工程师,这些 Linux 指令你都掌握了吗?

步履不停

步履不停

发布时间:2019-06-11 11:50:39

|

6305人浏览过

|

来源于php中文网

原创

php32.png

前言

本文收录了 linux 常用指令,这里面有个小技巧,基本上所有指令后面跟上 --h 可以显示其使用方法。故不必死记硬背,知其意乃通其形。(推荐:Linux视频教程

分类如下:

 ● 文件 & 目录操作(16 个)

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

立即学习PHP免费学习笔记(深入)”;

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

 ● 信息显示(11 个)

 ● 搜索文件(4 个)

 ● 进程管理(11 个)

 ● 用户管理(7 个)

 ● 网络操作(11 个)

 ● 磁盘 & 文件系统(7 个)

 ● 系统权限(3 个)

 ● 关机重启(5 个)

 ● 其他(6 个)

文件 & 目录操作(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 '\t' ' ' 将制表符替换成空格

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 显示后一天的日期

Vondy
Vondy

下一代AI应用平台,汇集了一流的工具/应用程序

下载

 ● 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 条历史命令

扩展阅读:

Linux运维教程 

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2525

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1604

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1496

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

952

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1416

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1234

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1445

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

61

2026.01.14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 8.6万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 7万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号