你真的了解Linux系统吗?

前言

现在很多公司项目部署都使用的是 Linux 服务器,互联网公司更是如此。对于大一些的互联网公司,系统可能会非常复杂,本地无法启动,一般都会采用专门的开发机给开发人员开发测试使用。而这些操作,都需要对基本的 Linux 命令熟悉。

今天总结下 Linux 的相关概念和基本操作,如果想了解更多,可以去看看《鸟哥的私房菜》。同时希望大家多动手实践,这样理解得更深刻。

Linux 常见概念

Linux 严格区分大小写

Linux 中所有内容以文件形式保存,包括硬件。一切内容皆文件。

Linux 不靠扩展名区分文件类型,靠权限区分文件类型。带后缀的文件名是约定俗成,方便管理

Windows下的程序不能在Linux中安装和运行

Linux 采用字符界面有什么优势

字符界面占用的系统资源更少

字符界面减少了出错、被攻击的可能性

常见目录的作用

/ 根目录

/bin 命令保存目录(普通用户就可以读取的命令)

/boot 启动目录,启动相关文件

/dev 设备文件保存目录

/etc 配置文件保存目录

/home 普通用户的家目录

/lib 系统库保存目录

/mnt 系统挂载目录

/media 挂载目录

/root 超级用户的家目录

/tmp 临时目录

/sbin 命令保存目录(超级用户才能使用的目录)

/proc 直接写入内存的

/sys

/usr 系统软件资源目录

/usr/bin/ 系统命令(普通用户)

/usr/sbin/ 系统命令(超级用户)

/var 系统相关文档内容

根目录下的 bin 和 sbin,usr 目录下的bin 和 sbin,这四个目录都是用来保存系统命令的。

proc 和 sys 目录不能直接操作,这两个目录保存的是内存的过载点。

Linux 常用命令

命令基本格式

命令 [选项] [参数]

查询目录中内容

ls [选项] [文件或目录]

选项:

-a:显示所有文件,包括隐藏文件

-l:显示详细信息

-d:查看目录属性

-h:人性化显示文件大小

-i:显示 inode

目录处理命令

mkdir -p [目录名]

-p 递归创建

命令英文原意:make directories

cd [目录]

命令英文原意:change directory

cd ~ 进入当前用户的家目录

cd

cd - 进入上次目录

cd .. 进入上一级目录

cd . 进入当前目录

查询所在目录位置:pwd

删除文件或目录

rm -rf [文件或目录]

选项:

-r:删除目录

-f:强制

复制命令

cp [选项] [源文件或目录] [目标目录]

选项:

-r:复制目录

-p:连带文件属性复制

-d:若源文件是链接文件,则复制链接属性

-a:相当于 -pdr

剪切或改名命令

mv [原文件或目录] [目标目录]

链接命令

ln -s [原文件] [目标文件]

生成链接文件

选项:-s 创建软链接

硬链接特征:

拥有相同的i节点和存储block块,可以看做是同一个文件

可通过i节点识别

不能跨分区

不能针对目录使用

软链接特征:

类似 Windows 快捷方式

软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据

lrwxrwxrwx表示软链接,软链接文件权限都为rwxrwxrwx

修改任意文件,另一个都改变

删除原文件,软链接不能使用

软链接如果目标文件和源文件不在同一目录下,源文件必须写绝对路径

文件搜索命令

locate 文件名:在后台数据库中按文件名搜索,搜索速度更快

/var/lib/mlocate:locate 命令所搜索的后台数据库

updatedb:更新数据库。默认一天一更新。快。缺点:只能按文件名来搜索

find [搜索范围] [搜索条件]:搜索文件

find / -name install.log:避免大范围搜索,会非常耗费系统资源

find 是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配。

* 匹配任意内容

? 匹配任意一个字符

[] 匹配任意一个中括号内的字符

find /root -iname install.log:不区分大小写

find /root -user root:按照所有者搜索

find /root -nouser:查找没有所有者的文件

find /var/log -mtime +10:查找10天前修改的文件

find . -size 25k:查找文件大小是 25KB 的文件

find . -inum 262422:查找i结点是 262422 的文件

搜索命令的命令

whereis 命令名

搜索命令所在路径及帮助文档所在位置

选项:

-b:只查找可执行文件

-m:只查找帮助文件

which 命令能看到目录和别名

搜索字符串命令

grep [选项] 字符串 文件名

在文件当中匹配符合条件的字符串

选项:

-i:忽略大小写

-v:排除指定字符串

帮助命令

man 命令

命令 –help

help shell内部命令

info 命令

Linux系统很强大,今天暂时整理出来部分Linux命令,明天接着更。

原文发布于微信公众号 - 轮子工厂(Programmer-ing)

原文发表时间:2018-05-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏文武兼修ing——机器学习与IC设计

Windows平台下Python使用swig调用C++

步骤0:swig简介 swig是一种可以将C++代码转换为多种脚本语言封装的工具,可以在swig官网www.swig.org下载,解压后将swig.exe的路径...

5479
来自专栏编程

python接口测试之token&session处理

在做接口的自动化测试中,无法绕过cookie,某些时候我们需要处理,那么怎么处理?另外一个方面,什么是cookie?cookie它的工作机制是用户识别以及状态管...

3095
来自专栏程序员互动联盟

【专业技术】如何在Linux中添加新的系统调用

系统调用是应用程序和操作系统内核之间的功能接口。其主要目的是使得用户可以使用操作系统提供的有关设备管理、输入/输入系统、文件系统和进程控制、通信以及存储管理等方...

2604
来自专栏大闲人柴毛毛

Java并发编程的艺术(四)——线程的状态

线程的状态 初始态:NEW 创建一个Thread对象,但还未调用start()启动线程时,线程处于初始态。 运行态:RUNNABLE 在Java中,运行态包括...

43411
来自专栏Golang语言社区

Golang语言--select

Golang语言--select golang的select与channel配合使用。它用于等待一个或者多个channel的输出。 应用场景:主goroutin...

3527
来自专栏wannshan(javaer,RPC)

dubbo路由机制分析2(路由设置存储)

接上次 https://cloud.tencent.com/developer/article/1109552 目前dubbo支持的路由类型分三种condito...

3564
来自专栏大内老A

[WCF 4.0新特性] 默认绑定和行为配置

对于传统的WCF配置系统,无论是绑定的配置还是行为(服务行为和终结点行为)都必须具有一个名称。而正是通过整个配置名称,它们才能被应用到目标对象(终结点或者服务)...

18710
来自专栏上善若水

007互联网相关之http文件下载及断点续传

所谓断点续传,也就是要从文件已经下载的地方开始继续下载。在以前版本的 HTTP 协议是不支持断点的,HTTP/1.1 开始就支持了。一般断点下载时才用到 Ran...

1362
来自专栏Java帮帮-微信公众号-技术文章全总结

Redis实现参数的集中式管理【面试+工作】

分布式缓存Redis也提供了类似的发布订阅功能,并且Redis本身提供了缓存和持久化的功能,本文将介绍通过Redis实现简单的参数集中式管理。

1122
来自专栏抠抠空间

Linux文件操作相关命令

1650

扫码关注云+社区

领取腾讯云代金券