专栏名称: 马哥Linux运维
马哥linux致力于linux运维培训,连续多年排名第一,订阅者可免费获得学习机会和相关Linux独家实战资料!
目录
相关文章推荐
InfoQ架构头条  ·  Cloudflare在11月发生重大故障,导 ... ·  4 天前  
51好读  ›  专栏  ›  马哥Linux运维

99%运维人都需要的Linux命令大全

马哥Linux运维  · 公众号  · 运维  · 2017-09-13 08:00

正文

1登陆和开关机


关机

halt

poweroff

init 0

重启

reboot

init 6

shutdown

shutdown -r 重启

shutodwn -h 关机

shutdown -c 取消计划关机

shutdown +0 马上关机

+1 一分钟后关机

-X X分钟后关机

20:00 今天20:00关机

whoami 显示当前的登录用户名

who am i 显示当前的登录用户名 终端名 登录时间

who 显示当前所有的登录用户名 终端名 登录时间

w 显示当前所有的登录用户名 终端名 登录时间 登录的来源 当前在做什么


2.切换用户与当前工作目录


su – 用户名 切换用户,并切换至用户家目录

su 用户名 非登陆切换用户

cd 相对或者绝对路径 进入目录

-P 如果目标目录是个软链接目录,则直接进入其源始目录

.. 进入上一级目录

cd 进入家目录

cd ~或直接 cd 进入家目录

cd – 进入上一次的工作目录

pwd 获取当前目录路径


3.基本常用命令


date 获取系统时间

date -s “2018-1-20 13:50:11” 设置系统时间

hwclock 或 clock 获取原子时间

-s 将硬时间写入软时间。

-w 将软时间写入硬时间。

cal 获取日历

history 获取命令的历史记录

hostname 获取主机名

中断命令

ctrl+C 强制中断

ctrl+d 正常中断


4.帮助命令文档查询


type 用来判断命令的类型

enable 管理显示内部命令

enable command 禁用内部命令

enable -n command 激活已禁用的内部命令

help 内部命令

外部命令 –help

查看指定命令的帮助信息

whereis command 查看命令的路径(外部命令)和 帮助文档的路径

which command 查看命令路径

man 检索命令帮助文档

5.文件查询


ls 列出目录的内容

ls 列出目录的内容

-a 列出所有文件(包含隐藏文件)

-A 列出所有文件(包含隐藏文件但不包含.和..)

-l 长列出(即显示属性信息)

-R 递归

-ld 查看指定目录的属性

-1 竖显示

stat 文件名

查看一个文件的详细属性,包括三个时间戳。

file 文件路径 判断文件的类型

-b 只显示辨识结果,不显示文件名

-f 文件路径 根据文件内容,将其中的文件分别辨识

cat 文件名 查看文件内容

vim 文件名 查看并编辑文件


6,新建文件, 移动、复制、删除文件


touch newfile 创建空文件

touch oldfile 更新文件的三个时间戳

touch -a oldfile 更新文件的atime和ctime

touch -m oldfile 更新文件的mtime和ctime

touch -t 201802122021.59 fstab

touch -c newfile 若文件存在则更新时间戳,若不存在不创建

mkdir

-p 一次性创建多级目录,无论父级目录是否存在。

-v 创建时显示信息

-m mode 创建时直接指定权限

rmdir 删除空目

cp src dst 被复制文件路径 新文件或被覆盖文件路径

-i 覆盖时提示

-r 递归,可复制目录

–preserv=mode 权限不变

–preserv=owner 权限及所属关系不变

–preserv=timestamp 时间不变

–preserv=all 以上全变

-p 等于 –preserv=mode,owner,timestamp 复制时保留权限,时间不变

-d 复制软链接

-v 显示复制过程

-a 以上全部

-f 当dst已存在,但当前用户对其没有w权限,导致无法直接覆盖,如果当前用户对所在目录有wx权限,即可创建和删除文件,那么,加上-f后,会先删除文件,再创建新文件,最后再填充内容与src一致。

mv src dst

若dst不存在,则改名。

-i 若dst已存在,则询问是否覆盖

-f 抵消掉-i的作用,直接覆盖,不询问

rm 删除

rm 文件名

-i 询问是否删除

-f 抵消掉-i的作用,直接删除,不询问

-r 递归,删除目录

ls |xargs rm -rf 当删除的文件数量过多,超过了所支持的参数数量上限时可配合管道及xargs来删除。

–no-preserve-root


7.文本处理命令


tr

[set1] [set2 将set1转换成set2,set1的位数多于set2时,多出的位数全转成 set2的最后一位,如tr abcd ef 即a转成e,bcd均转成f

-d [set1] 删除set1的字符

-c [set1] [set2 除了set1以外的剩下其他字符都转换set2(换行符也会被转)

-cd [set1] 删除除set1以外的字符

-s [set1] 将连续重复的字符转为一个

cut -d分隔符(只能是单个字符) -f取哪一列 文件名

-output-delimiter=分隔符 表示输出的分隔符。默认为原文件分隔符

-fn,m 或 -fn-m

-cn,m 或 -cn,m -cn

sort

-t分隔符

-k以分隔符的第几列排序

-n以数字方式排序

-r倒序排列

-u去除重复项

-f忽略大小写

uniq 去重

uniq 去除连续的重复行,仅保留一行

-u 去除连续的重复行,不保留

-d 仅显示重复的行,去除不重复的行

-c 显示的结果前显示重复的次数


8.正则表达式grep 和 sed


grep

–color=auto 关键字高亮显示

-v 反选

-n 显示行号

-c 显示匹配行的数量

-i 忽略大小写

-q 静默

-A n 显示关键字及其下n行

-B n 显示关键字及其上n行

-C n 显示关键字及其上下n行

-e:实现多个选项间的逻辑or关系

-w:匹配整个单词

-E 或 egrep 使用扩展正则

-F 或 fgrep 不使用正则

sed

-i 更改原文件

-i.bak 在更改前将原文件备份为.bak

-n 不打印

-e 多模式

-f sed.txt 指定scripts的文件

-r 指定扩展正则

p打印

d删除

a在指定行后增加

i在指定行前增加

c替换指定行

w将模式空间的行写入指定文件

r将文件中的内容读入模式空间

=: 为模式空间中的行打印行号

!:模式空间中匹配行取反处理

作者:daishitong

来源:http://www.178linux.com/86881




————广告时间————

《马哥Linux云计算及架构师》课程,由知名Linux布道师马哥创立,经历了8年的发展,联合阿里巴巴、唯品会、大众点评、腾讯、陆金所等大型互联网一线公司的马哥课程团队的工程师进行深度定制开发,课程采用 Centos7.2系统教学,加入了大量实战案例,授课案例均来自于一线的技术案例。

开课时间:11月06号

扫描二维码和更多小伙伴组团学习