linux运维之道基础命令,Linux运维之道(7)——Linux管理类命令

@(Linux)[系统管理]

1. 目录管理类命令

1.1 cd命令

格式:cd [-L|[-P [-e]] [-@]] [dir]

被你忽略的小知识:

在这里科普一个小小的知识点,就是关于cd -为什么可以自由的在当前目录和之前目录相互切换?

其实,在我们的 Shell 的环境变量当中保存了两个相关的环境变量,即为PWD和OLDPWD。顾名思义,我们很容易会想到当我们执行命令时,实际上就是在这个两个环境变量之间切换。我们可以使用echo $PWD、echo $OLDPWD或者env命令来查看环境变量信息。

实例演示:

[root@localhost ~]# cd /home/ #切换到home目录

[root@localhost home]# cd - #返回切换到home前的目录

/root

[root@localhost ~]# cd ../ #切换到上一级目录

[root@localhost /]# cd ~ #切换当前用户的home目录

1.2 pwd命令

pwd - print name of current/working directory

格式:pwd [OPTION]...

实例演示:

[root@rudder home]# pwd #显示当前目录

/home

[root@web mail]# pwd -P #目录是软连接,显示实际物理地址

/var/spool/mail

[root@web mail]# pwd -L #-L显示,逻辑地址

/var/mail

1.3 mkdir命令

mkdir - make directories

格式:mkdir [OPTION]... DIRECTORY...

参数选项:

-m, --mode=模式

设置权限模式(类似chmod),而不是rwxrwxrwx 减umask

-p, --parents

需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理

-v, --verbose

每次创建新目录都显示信息

实例演示:

[root@localhost ~]# mkdir aaa #创建目录

[root@localhost ~]# mkdir -m a=rw bbb #创建指定属性的目录

[root@localhost ~]# mkdir -p 111/abc #创建目录,父目录存在,建之

练习测试:

(1) 如何创建/tmp/x/y1, /tmp/x/y2, /tmp/x/y1/a, /tmp/x/y1/b, /tmp/x/y2/a, /tmp/x/y2/b

mkdir /tmp/x/{y1,y2}/{a,b}

(2) 如何创建x_m, y_m, x_n, y_n

mkdir {x,y}_{m,n}

(3) 如何创建/tmp/bin, /tmp/sbin, /tmp/usr, /tmp/usr/bin, /tmp/usr/sbin

mkdir -p /tmp/{bin,sbin,usr/{bin,sbin}}

1.4 rmdir命令

rmdir - remove empty directories

格式:rmdir [OPTION]... DIRECTORY...

参数选项:

--ignore-fail-on-non-empty

忽略仅由目录非空产生的所有错误

-p, --parents

删除指定目录及其上级文件夹,例如"rmdir -p a/b/c"与"rmdir a/b/c a/b a" 基本相同

-v, --verbose

输出处理的目录详情

--help

显示此帮助信息并退出

--version

显示版本信息并退出

实例演示:

[root@localhost ~]# rmdir test #删除test目录,注意必须是空目录

[root@localhost ~]# rmdir -p a/b/c #删除指定目录及其上级文件夹

1.5 tree命令

tree - list contents of directories in a tree-like format

格式:tree [OPTION] [PATH]

参数选项:

-a

显示所有文件和目录,全部深度

-A

使用ASNI绘图字符显示树状图而非以ASCII字符组合

-C

在文件和目录清单加上色彩,便于区分各种类型

-d

显示目录名称而非内容,常用选项

-D

列出文件或目录的更改时间

-f

在每个文件或目录之前,显示完整的相对路径名称

-F

在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号

-g

列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码

-i

不以阶梯状列出文件或目录名称

-I

不显示符合范本样式的文件或目录名称

-l

如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录

-L level

指定显示的层级数目,常用选项

-n

不在文件和目录清单加上色彩

-N

直接列出文件和目录名称,包括控制字符

-p

列出权限标示

-P

只显示符合范本样式的文件或目录名称

-q

用"?"号取代控制字符,列出文件和目录名称

-s

列出文件或目录大小

-t

用文件和目录的更改时间排序

-u

列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码

-x

将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目予以排除在寻找范围外

实例演示:

[root@localhost ~]# tree -L 2 #-L n 只显示 n 层目录 (n 为数字)

[root@localhost ~]# tree -t #-t 用文件和目录的更改时间排序

[root@localhost ~]# tree -r #-r 以相反次序排列

[root@localhost ~]# tree -F #-F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号

[root@localhost ~]# tree -f #在每个文件或目录之前,显示完整的相对路径名称

[root@localhost ~]# tree -d #只显示目录

[root@localhost ~]# tree -a #显示所有文件和目录

1.6 ls命令

ls - list directory contents

格式:

ls [OPTION]... [DIR]...

显示指定路径下的文件列表

参数选项:

-a, --all:

显示所有文件,包括隐藏文件

-l

长格式显示

-h, --human-readable

单位化显示

-d

显示目录自身的相关属性;通常要与-l一起使用

-r, --reverse

逆序显示

-R, --recursive

递归

实例演示:

[root@localhost dev]# ls -d */

block/ bus/ cpu/ fd/ input/ net/ raw/ snd/

[root@localhost ~]# ll -Z -d /var/www/html/

drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/

[root@localhost ~]# ls -l

总用量 8

drwxr-xr-x 2 root root 4096 4月 27 12:34 bak

drwxr-xr-x 4 tnak tnak 4096 4月 28 14:25 tank

2. 文本文件查看类命令

2.1 more命令

more - file perusal filter for crt viewing

格式:more [options] file...

参数选项:

-d

显示翻页及退出提示

实例演示:

[root@localhost ~]# more test.php #查看文件

[root@localhost ~]# netstat -tpnl |more #常用方式,分页显示

2.2 less命令

less - opposite of more

格式:less [OPTIONS...] FILE...

实例演示:

[root@localhost ~]# less test.php #查看文件

[root@localhost ~]# netstat -tpnl |less #常用方式,分页显示

2.3 head命令

head - output the first part of files

格式:head [OPTION]... [FILE]...

参数选项:

-c, --bytes=[-]K

指定获取前#字节

-n, --lines=[-]K

指定获取前#行

-q, --quiet, --silent

不显示包含给定文件名的文件头

实例演示:

[root@localhost ~]# head /etc/passwd #默认,显示开头前10行

[root@localhost ~]# head -k /etc/passwd #显示开头前k行

[root@localhost ~]# head -q -n k file1 file2 file3 #显示多文件开头前k行,并且不显示文件名的文件头

[root@localhost ~]# head -n -k /etc/passwd #除最后k行外,显示剩余全部内容

2.4 tail命令

tail - output the last part of files

格式:tail [OPTION]... [FILE]...

参数选项:tail [OPTION]... [FILE]...

-c #

指定获取后#字节

-n #

指定获取后#行

-f

跟踪显示文件新追加的内容;

实例演示:

[root@localhost ~]# tail /etc/passwd #默认,显示最后10 行。

[root@localhost ~]# tail -n 2 /etc/passwd #显示最后2行

[root@localhost ~]# tail -q -n k file1 file2 file3 #显示多文件最后k行,并且不显示文件名的文件头

[root@localhost ~]# tail -n +k /etc/passwd #从开头第k字节处开始输出。

[root@localhost ~]# tail -f /var/log/messages #参数-f使tail不停地去读最新的内容,因此有实时监视的效果,用Ctrl+c来终止

[root@localhost ~]# tail -n+10 file.txt | head -1 #显示file.txt的第10行

3. 文件的时间戳管理工具

3.1 touch命令

touch - change file timestamps

被你忽略的小知识:

三个时间戳:

access time:访问时间,简写为atime,读取文件内容

modify time: 修改时间, mtime,改变文件内容(数据)

change time: 改变时间, ctime,元数据发生改变

格式:touch [OPTION]... FILE...

参数选项:

-a

只更改访问时间

-d, --date=字符串

使用指定字符串表示时间替代当前时间

-m

只更改修改时间

-r, --reference=文件

使用指定文件的时间属性替代当前时间

-t STAMP

使用[[CC]YY]MMDDhhmm[.ss] 格式的时间替代当前时间

--time=WORD

使用WORD 指定的时间:access、atime、use 都等于-a选项的效果,而modify、mtime 等于-m 选项的效果

--help

显示此帮助信息并退出

--version

显示版本信息并退出

请注意:-d 和-t 选项可接受不同的时间/日期格式

实例演示:

[root@localhost ~]# touch test.php #将test.php的档案时间改为,当前时间,文件不存在建之

[root@localhost ~]# touch -c -t 05061803 test.php #将档案时间改为,5月6日18点3分

[root@localhost ~]# touch -r abc.php test.php #将test.php档案改成根abc.php一样

4. 文件管理类命令

4.1 cp命令

cp - copy files and directories

格式:

cp [OPTION]... [-T] SOURCE DEST

cp [OPTION]... SOURCE... DIRECTORY

cp [OPTION]... -t DIRECTORY SOURCE...

参数选项:

-i

交互式

-r, -R

递归复制目录及内部的所有内容;

-a

归档,相当于-dR --preserv=all

-d , --no-dereference --preserv=links , --preserv[=ATTR_LIST]

mode: 权限

ownership: 属主属组

timestamp

links

xattr

context

all

-p , --preserv=mode,ownership,timestamp

-v , --verbose

-f , --force

实例演示:

[root@localhost ~]# cp -p test.rb /home/test #将test.rb copy到test目录,并且保留原文件的属性

[root@localhost ~]# cp -r Dir/ /home/test #将Dir目录copy到test目录下

[root@localhost ~]# cp -fr Dir/* /home/test #将Dir下面的所有文件强制copy到test目录下

[root@localhost ~]# cp test.rb{,.bak} #备份test.rb,并在尾部加上.bak后缀

4.2 mv命令

mv - move (rename) files

格式:

mv [OPTION]... [-T] SOURCE DEST

mv [OPTION]... SOURCE... DIRECTORY

mv [OPTION]... -t DIRECTORY SOURCE...

参数选项:

-i

交互式

-f

强制

实例演示:

[root@localhost ~]# mv abc abc.php #将abc移动成abc.php

[root@localhost ~]# mv test.php{,.sh} #将test.php增加后辍

[root@localhost ~]$ mv -t ./database 1.sql #将1.sql移动到database目录下

[root@localhost ~]$ mv aaa bbb #将目录或者文件重命名,如果存在bbb目录,则是将aaa移到bbb目录下

4.3 rm命令

rm - remove files or directories

格式:rm [OPTION]... FILE...

参数选项:

-i

交互式

-f

强制删除

-r

递归

实例演示:

[root@localhost ~]# rm test.php #删除文件需要确认

[root@localhost ~]# rm -f test.php #强制删除文件不确认

[root@localhost ~]# rm -rfv ./test #强制删除当前的test目录,并显示删除的详细过程

5. 系统管理类命令

5.1 shotdown命令

5.2 reboot命令

5.3 poweroff命令

5.4 halt命令

5.5 w命令

5.6 who命令

思维导图

8d19860960a6

Linux中你不得不知道管理类命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/534156.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

html画图代码_python之matplotlib画图教程(2)

各位小表贝,你们的画图小老弟又来咯~上一次我们聊到了如何画离散图,这一次我们来点复杂的,准备好了么,系好安全带,准备发车咯~滴滴~我们先来点比较简单,那种易于上手的。如果现在我知道了两个点的坐标&…

python图像识别代码_用Python进行简单图像识别(验证码)

这是一个最简单的图像识别,将图片加载后直接利用Python的一个识别引擎进行识别 将图片中的数字通过 pytesseract.image_to_string(image)识别后将结果存入到本地的txt文件中 #-*-encoding:utf-8-*- import pytesseract from PIL import Image class GetImageDate(ob…

c++ map初始化_Go学习每日一问(18)-map元素查找

每次学习并整理一个Golang的知识点,每天进步一点点。今天学习下go中的一个知识点:map元素查找日省吾身1.下面代码中 A B 两处应该怎么修改才能顺利编译?func main() { var m map[string]int //A m["a"] 1 if v : m["b&q…

-bash: wget: 未找到命令_18个堪称神器的命令行工具,高效运维必备

上期入口:24个 CSS 高级技巧合集提示:因公众号不支持超链接,上图所有项目地址,可在公众号后台回复关键字 “命令行工具” 获取。thefuck命令行打错了以后,打一个fuck就会自动纠正。GitHub:https://github.c…

linux编辑java文本,linux下的文本编辑器VI的使用命令

1、 移动光标H        #移到屏幕的左上角M         #移到屏幕的中间行开头L          #移到屏幕的最后一行[         #移到文件开始位置 (双击)]         #移到文件结束位置(双击):n         #移到文件的第n行Ctrl b     …

python3.8.0安装_Python3.8.0

Python3.8.0是一款广受程序员欢迎的编程语言,也是面向对象的一款设计语言,Python以其语言的灵活和简易性,具有非常简捷而清晰的语法特点,在脚本工具、数据分析、web后端等等领域都有着优良的表现,收到了大家的广泛应用…

cv2.error: opencv(4.4.0)_【从零学习OpenCV 4】轮廓面积与长度

本文首发于“小白学视觉”微信公众号,欢迎关注公众号 本文作者为小白,版权归人民邮电出版社发行所有,禁止转载,侵权必究! 经过几个月的努力,小白终于完成了市面上第一本OpenCV 4入门书籍《OpenCV 4开发详解…

python自定义安装哪些不需要_【1】python模块:自定义模块的3种导入方式

一、定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块。如果不懂可以先看下面这篇博文&#xf…

linux划分root_vg,為Linux添加新硬盤,划分LVM分區

1、為VM添加兩塊SCSI硬盤→→完成后重啟VM→→運行fdisk -l,可以看到系統自動將添加的硬盤識別為/dev/sdb和dev/sdc.2、分區對sdb和sdc進行分區,並調整分區類型為8e(LVM類型),sdb划分為sdb1,sdb2,sdc划分為sdc1,sdc2,sdc3[rootpromote ~]# fdisk /dev/sd…

python文件输入符_python读入文件时加r的作用?

r’xxx’ 的含义 **加 r 会把字符串转变为非转义的原始字符串。**比较常用。 例如:print(D:\\test\\test.txt)print(rD:\\test\\test.txt)print(rD:\test\test.txt)123 结果是:D:\test\test.txt D:\\test\\test.txt D:\test\test.txt123 从结果看来&…

linux kvm切换器,KVM切换器是什么,看懂这一篇就够

原标题:KVM切换器是什么,看懂这一篇就够在服务器机房的机架不便于存放多个显示器和键盘的空间里,KVM切换器起着重要的作用。KVM切换器能从本地或远程监视与控制多个计算机与服务器,由键盘、鼠标和显示屏组成的KVM控制台是最方便和…

linux 信号_Linux信号量(1)-SYSTEM V

​信号量概念信号量本质上是一个计数器(不设置全局变量是因为进程间是相互独立的,而这不一定能看到,看到也不能保证引用计数为原子操作),用于多进程对共享数据对象的读取,它和管道有所不同,它不以传送数据为…

python画图库哪个好_机器学习基础5--python画图库matplotlib(上)

图像是我们最直观的数据表达方式,python的matplotlib库可以用来画图。下面来简单总结下matplotlib的使用方法。上篇讲matplot画图中用到的基础对象,包括图像Figure,平面曲线Line2D,坐标轴Axes,图例Legend, 注解Annotat…

python怎么加图片_python中如何保存图片

一提到数字图像处理,可能大多数人就会想到matlab,但matlab也有自身的缺点: 1、不开源,价格贵 2、软件容量大。一般3G以上,高版本甚至达5G以上。 3、只能做研究,不易转化成软件。python学习网,大…

西门子触摸屏修改ip地址_基于博途V15 西门子S7-1200与触摸屏一个简单的例子

本篇是《基于博途V15 西门子S7-1200 ...》系列的后续篇,看懂本篇文章之前请大家关注我,然后查找相关文章,学习之后再学习此篇。也请专业领域的大神批评指正。感谢大家关注与支持!步骤:1. 创建项目创建名称为PLC_HMI2. …

mac os和linux和安卓,在我的安卓手机里,安装Windows和macOS系统

原标题:在我的安卓手机里,安装Windows和macOS系统不知道各位差友还记不记得,世超前阵子分享过一款无需越狱,就能让 iPhone 和 iPad 运行其它系统的虚拟机软件 UTM。当时世超正是靠着这个软件,才得以让 iPad 成功跑上了…

gc java root_C#技术漫谈之垃圾回收机制(GC)

GC的前世与今生虽然本文是以.NET作为目标来讲述GC,但是GC的概念并非才诞生不久。早在1958年,由鼎鼎大名的图林奖得主John McCarthy所实现的Lisp语言就已经提供了GC的功能,这是GC的第一次出现。Lisp的程序员认为内存管理太重要了,所…

北航软件工程硕士_21考研择校 | 北京航空航天大学软件工程怎么样?

☝☝☝ 软件工程考研独家平台撰稿 | 康康哥编辑 | 丽丽姐本文由懂计算机、软件工程的博士师哥原创01学校名气北京航空航天大学,简称“北航”,是一所把“985”、“211”、“双一流”写进骨子里的学校。为什么这么说呢?这得从源头说起&#xff…

kettle同步数据到hive 巨慢_超详细教程,kettle ETL mysql到hadoop hive数据抽取,值得收藏...

那么如何将mysql数据导入到hive里呢,kettle里有自带方法,可以通过表输入和表输出来实现,不过自带的方法载入数据极其缓慢,不推荐使用这种方法。1、hive建表注意hive表使用“^”作为分隔符,这个可以更具实际情况来。2、…

linux 查看path文件,linux入门之环境变量与文件查找

环境变量分类当前 Shell 进程私有用户自定义变量,如上面我们创建的 temp 变量,只在当前 Shell 中有效。Shell 本身内建的变量。从自定义变量导出的环境变量。declare tmp;tmp"shiyanlou i love y";echo $tmp ; **不要忘记$**实验楼…