Linux操作系统基础-程序员宅基地

技术标签: Linux  

Linux简介

Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机
这里写图片描述

Linux介绍

Linux出现于1991年,是由芬兰赫尔辛基大学学生Linus Torvalds和后来加入的众多爱好者共同开发完成

Linux特点

多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性,良好的用户界面,出色的速度性能
开源

CentOS

  • 主流:目前的Linux操作系统主要应用于生产环境,主流企业级Linux系统仍旧是RedHat或者CentOS
  • 免费:RedHat 和CentOS差别不大,基于Red Hat Linux 提供的可自由使用源代码的企业CentOS是一个级Linux发行版本
  • 更新方便:CentOS独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!

Linux目录结构

这里写图片描述

  • bin (binaries)存放二进制可执行文件
  • sbin (super user binaries)存放二进制可执行文件,只有root才能访问
  • etc (etcetera)存放系统配置文件
  • usr (unix shared resources)用于存放共享的系统资源
  • home 存放用户文件的根目录
  • root 超级用户目录
  • dev (devices)用于存放设备文件
  • lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块
  • mnt (mount)系统管理员安装临时文件系统的安装点
  • boot 存放用于系统引导时使用的各种文件
  • tmp (temporary)用于存放各种临时文件
  • var (variable)用于存放运行时需要改变数据的文件

Linux常用命令

命令格式:命令 -选项 参数

如:ls  -la  /usr

ls:显示文件和目录列表(list)

常用参数:

-l		(long)
-a	(all)         注意隐藏文件、特殊目录.和..   
-t		(time)

Linux命令的分类

内部命令:属于Shell解析器的一部分

cd 切换目录(change directory)
pwd 显示当前工作目录(print working directory)
help 帮助

外部命令:独立于Shell解析器之外的文件程序

ls 显示文件和目录列表(list)
mkdir 创建目录(make directoriy)
cp 复制文件或目录(copy)

查看帮助文档

内部命令:help + 命令(help cd)
外部命令:man + 命令(man ls)

操作文件或目录常用命令

pwd 显示当前工作目录(print working directory)
touch 创建空文件				                    
mkdir 创建目录(make directoriy)
-p 父目录不存在情况下先生成父目录 (parents)            
cp 复制文件或目录(copy)
-r 递归处理,将指定目录下的文件与子目录一并拷贝(recursive)     
mv 移动文件或目录、文件或目录改名(move)

rm 删除文件(remove)
-r 同时删除该目录下的所有文件(recursive)
-f 强制删除文件或目录(force)
rmdir 删除空目录(remove directoriy)
cat显示文本文件内容 (catenate)
more、less 分页显示文本文件内容
head、tail查看文本中开头或结尾部分的内容
head -n  5  a.log 查看a.log文件的前5行
tail  -F b.log 循环读取(follow)

常用命令

wc 统计文本的行数、字数、字符数(word count)
-m 统计文本字符数
-w 统计文本字数
-l 统计文本行数
find 在文件系统中查找指定的文件
find /etc/ -name "aaa"
grep 在指定的文本文件中查找指定的字符串
ln 建立链接文件(link)
-s 对源文件建立符号连接,而非硬连接(symbolic)

top 显示当前系统中耗费资源最多的进程 
ps 显示瞬间的进程状态
-e /-A 显示所有进程,环境变量
-f 全格式
-a 显示所有用户的所有进程(包括其它用户)
-u 按用户名和启动时间的顺序来显示进程
-x 显示无控制终端的进程
kill 杀死一个进程
kill -9 pid
df 显示文件系统磁盘空间的使用情况

du 显示指定的文件(目录)已使用的磁盘空间的总
-h文件大小以K,M,G为单位显示(human-readable)
-s只显示各档案大小的总合(summarize)
free 显示当前内存和交换空间的使用情况 
netstat 显示网络状态信息
-a 显示所有连接和监听端口
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-p 显示建立相关链接的程序名
ifconfig 网卡网络配置详解 
ping 测试网络的连通性 


备份压缩命令

gzip 压缩(解压)文件或目录,压缩文件后缀为gz 
bzip2 压缩(解压)文件或目录,压缩文件后缀为bz2 
tar 文件、目录打(解)包

gzip命令

命令格式:gzip [选项] 压缩(解压缩)的文件名
-d将压缩文件解压(decompress)
-l显示压缩文件的大小,未压缩文件的大小,压缩比(list)
-v显示文件名和压缩比(verbose)
-num用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6

bzip2命令

命令格式:bzip2 [-cdz] 文档名
-c将压缩的过程产生的数据输出到屏幕上
-d解压缩的参数(decompress)
-z压缩的参数(compress)
-num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6

tar命令

-c 建立一个压缩文件的参数指令(create)
-x 解开一个压缩文件的参数指令(extract)
-z 是否需要用 gzip 压缩
-j 是否需要用 bzip2 压缩
-v 压缩的过程中显示文件(verbose)
-f 使用档名,在 f 之后要立即接档名(file)

关机/重启命令

shutdown系统关机 
-r 关机后立即重启
-h 关机后不重新启动
halt 关机后关闭电源 shutdown -h
reboot 重新启动 shutdown -r

学习Linux的好习惯

  • 善于查看man page(manual)等帮助文档

  • 利用好Tab键

  • 掌握好一些快捷键

     ctrl + c(停止当前进程)
     ctrl + r(查看命令历史)
     ctrl + l(清屏,与clear命令作用相同)
    
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/cckevincyh/article/details/80468296

智能推荐

iar环境下,ucosii移植到stm32f103ze上_iar stm32f103ze-sk-程序员宅基地

文章浏览阅读3.1k次。Ucosii移植到STM32上1.使用的开发环境是IAR 5.4 STM32芯片为STM32F103ZET6使用ST官方提供的标准固件库,建立工程,我下载的标准库版本为STM32F10x_StdPeriph_Lib_V3.5.0,里面的文件分布为:其中,Libraries文件夹里面放的是标准库文件,Project文件夹里面放的是STM32_iar stm32f103ze-sk

jdk1.8.0_131卸载装上jdk1.8.0_151,更改项目的java版本后eclipse报Project facet Java 1.8 is not supported by target r_jre1.8.0_131 完全卸载-程序员宅基地

文章浏览阅读1.5k次。jdk1.8.0_131卸载装上jdk1.8.0_151,更改eclipse的installed JREs后eclipse报Project facet Java 1.8 is not supported by target runtime Apache Tomcat v8.0.我的eclipse4.7版本的报这错的前提是已经更改完了eclipse的installed JREs(点击_jre1.8.0_131 完全卸载

anaconda创建新环境_创建一个新的环境anaconda-程序员宅基地

文章浏览阅读3.6w次,点赞9次,收藏122次。为什么要创建新环境? 在运行项目的时候,可能某一个项目需要python3,另一个项目需要Python2,这时候我们就需要两个环境。 2. 如何创建新环境? conda create -n 文件夹 python=3.6(指定python的版本) 当弹出 :Proceed ([y]/n)? 输入y回车 完成..._创建一个新的环境anaconda

找到的,希望能对新学asp.net的人有帮助-程序员宅基地

文章浏览阅读54次。三层架构分别是数据访问层 database access layer,业务逻辑层business logic layer,用户表现层(用户接口层) user interface layer.简称分别为DAL,BLL,UIL.数据访问层主要是提供一些通用的对数据库进行操作的函数。业务逻辑层则调用这些函数完成某些功能,而用户表现层则又调用业务逻辑层的函数来使用这些功能。 ...

EXSI实现MPIO多路径-程序员宅基地

文章浏览阅读1.6k次。开始学习点高端的虚拟化,本文转载自:https://blog.51cto.com/robert283/1553913 一、文档解释MPIO:多路径IO管理;确保已建立好iscsi的连接,且能发现设备二、操作步骤1、建立虚拟标准交换机在虚拟机控制台à配置à网络;点击“添加网络” ;选择“虚拟机”,点击“下一步”选择“创建vSphere标准交换机”,点击“下一步”;在“连..._esxi mpio

Java 学习笔记之 Synchronized锁对象-程序员宅基地

文章浏览阅读92次。Synchronized锁对象:Synchronized取得的锁都是对象锁,而不是把一段代码或方法当作锁,哪个线程执行带synchronized关键字的方法,哪个线程就持有该方法所属对象的锁,那么其他线程只能等待,前提是多个线程访问的是同一个对象。实验得出以下结论:A线程先持有object对象的Lock锁,B线程可以以异步的方式调用object对象中的非synchr..._java synchronized 锁对象

随便推点

FZU 2082 过路费 树链剖分水题-程序员宅基地

文章浏览阅读596次。题目大意:就是现在有一棵树, 每条边都有自己的边权, 然后接下来会询问两点间路径的边权和, 或者修改某条边的权值大致思路:树链剖分水题= =剖分之后线段树维护即可代码如下:Result : Accepted Memory : 5952 KB Time : 184 ms/* * Author: Gatevin * Creat

需要知道的几类npm依赖包管理_包管理依赖-程序员宅基地

文章浏览阅读254次。你需要知道的几类npm依赖包管理在一个Node.js项目中,package.json几乎是一个必须的文件,它的主要作用就是管理项目中所使用到的外部依赖包,同时它也是npm命令的入口文件。npm 目前支持以下几类依赖包管理:dependenciesdevDependenciespeerDependenciesoptionalDependenciesbundledDependencies / bundleDependencies如果你想使用哪种依赖管理,那么你可以将它放在package.j_包管理依赖

【Kubernetes 系列四】Kubernetes 实战:管理 Hello World 集群-程序员宅基地

文章浏览阅读449次。目录 1. 创建集群 1.1. 安装 kubectl 1.1.1. 安装 kubectl 到 Linux 1.1.2. 安装 kubectl 到 macOS 1.1.3. 安装 kubectl 到 Windows 1.1.4. 添加命令自动补全支持 ..._a hypervisor has been detected

百度地图 遍历marker并增加窗口 只显示最后一个窗口信息的问题_动态marker click 最后一个-程序员宅基地

文章浏览阅读2.6k次。使用地图从数据库加载marker,遇到一个问题,每次点击窗体都只出现遍历中最后一个的结果。 经过思考,得出结论是遍历的时候,虽然给每个marker加上了打开窗体的方法,但是会被后面的遍历替代,所以应该把方法单独拿出来opts = { width : 200, // 信息窗口宽度 height: 80,_动态marker click 最后一个

消息队列相关面试题整理_c# 基础面试 消息队列-程序员宅基地

文章浏览阅读638次。1,什么是消息队列我们可以把消息队列看作是一个存放消息的容器,当我们需要使用消息的时候,直接从容器中取出消息供自己使用即可。消息队列是分布式系统中重要的组件之一。使用消息队列主要是为了通过异步处理提高系统性能和削峰、降低系统耦合性。我们知道队列 Queue 是一种先进先出的数据结构,所以消费消息时也是按照顺序来消费的。2,为什么要用消息队列通过异步处理提高系统性能(减少响应所需时间)。削峰/限流.降低系统耦合性。3.削峰/限流先将短时间高并发产生的事务消息存储在消息队列中,然后后端服务再慢_c# 基础面试 消息队列

Poj1001小木棍-程序员宅基地

文章浏览阅读148次。试题描述乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,已知每段的长都不超过 50 。现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度。给出每段小木棍的长度,编程帮他找出原始木棍的最小可能长度。输入第一行为一个单独的整数N表示砍过以后的小木棍的总数。其中N≤60。第二行为..._poj小木棍

推荐文章

热门文章

相关标签