Linux

是由unix衍生而来(小知识:mac也是使用unix核心),由全世界的程序员一起开发的开源系统。如今基于linux已经有了很多版本,我们后面使用的就是衍生版本之一的Ubuntu。

Ubuntu

安装:https://cn.ubuntu.com/download/server/step1

VMware虚拟机

安装:https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html

安装完后需要输入注册码才能使用,网上随便找找

在虚拟机上安装Linux系统的时候,记得打× OpenSSH 意思是安装openssh。

(如果没安装openssh,就安装完Linux执行该命令:sudo apt install openssh-server

Xshell Xftp

安装:需要去网上下载破解版

xshell:用于连接并操作虚拟机(直接操作虚拟机比较麻烦,在window用xshell操作方便点)

xftp:用于将window中的文件传给linux

(两者都是直接新建一个项目,然后输入路由器分配给该虚拟机的ip地址即可连接)

补充:Linux查看ip地址的方法:ifconfig


用户和用户组

介绍:Linux系统需要创建用户才可以操作,创建的每个用户都有相应的数据存放文件(如conan用户在home/conan)。但默认有一个root用户(权限最高,一般不切换到该用户,危!),其的root文件与home同一目录。

因为root权限太高了,所以一般是普通用户使用sudo命令暂时得到root权限执行某个语句

状态信息介绍:格式为:用户名@服务器名称:当前所处的目录$,~代表用户目录,如果不是用户目录,会显示当前的绝对路径地址。

conan@ubuntu-server:~$

用户指令:

查看当前文件所在目录:pwd

切换到root用户:sudo -s

切换用户:su conan

退出当前用户:exit

添加新用户:sudo useradd study -m -s /bin/bash

【在用户创建时顺便创建用户的文件夹,并指定shell(任意一种命令解释程序,用于处理我们输入的命令)为bash】

为用户添加密码:sudo passwd study

删除用户:sudo userdel study

查看当前登录账号(不是正在操作文件的账号):who

查看当前用户所在的用户组:groups

查看当前用户所属的用户组的相关信息:id

查看指定用户的所属用户组的相关信息: id test

为用户添加sudo权限:sudo usermod study -G sudo

(在创建新用户的时候,是没有sudo权限的,需要通过sudo去添加权限)

查询文件夹中的一般文件:ls

查询文件夹中的隐藏文件:la

查询文件夹中all文件的详细信息:ll

(也可以在其后面加文件名,表示查看指定文件的详细信息)

. ..分别代表当前文件夹,以及上一级文件夹。 可以中间加空格配合以上几个一起使用 如:ls .. 显示上一级的一般文件

切换到某文件夹:cd xx/xx

切换到当前用户下的文件夹:cd ~


文件

文件详细信息介绍

test@ubuntu-server:~$ ls -al
total 44
drwxr-xr-x 4 test test 4096 Jan 24 08:55 .
drwxr-xr-x 4 root root 4096 Jan 24 04:24 ..
-rw------- 1 test test 2124 Jan 24 04:29 .bash_history
-rw-r--r-- 1 test test 220 Feb 25 2020 .bash_logout
-rw-r--r-- 1 test test 3771 Feb 25 2020 .bashrc
drwx------ 2 test test 4096 Jan 21 15:48 .cache
drwx------ 3 test test 4096 Jan 23 14:49 .config
-rw-r--r-- 1 test test 807 Feb 25 2020 .profile
-rw------- 1 test test 34 Jan 24 04:17 .python_history
-rw-r--r-- 1 test test 0 Jan 21 15:52 .sudo_as_admin_successful
-rw------- 1 test test 7201 Jan 24 08:55 .viminfo

第一列:

第一个字符表示:文件类型(-表示普通文件,l为链接文件,d表示目录(文件夹)c表示字符设备、b表示块设备,还有p有名管道、f堆栈文件、s套接字等,这些一般都是用于进程之间通信使用的)

第2-4个字符表示(U):文件的拥有者(User)对该文件的权限

第5-7个字符表示(G):文件所属同一用户组(Group)内用户对该文件的权限

第8-10个字符表示(O):其他用户(Other)对该文件的权限

第二列:文件创建的链接文件(快捷方式)数量,一般只有1表示只有当前文件

第三列:该文件或是目录的拥有者。

第四列:文件所属的组。

第五列:文件大小,以字节为单位。(8位一字节)

第六列:文件的最后一次修改时间

最后一列:文件名(前面有.的是隐藏文件,其余为普通文件)

文件指令:

  1. 创建一个链接文件(就是某文件的快捷方式):ln .bash_logout kk

(创建后,会生成一个名为kk的文件,我们对此文件的操作相当于直接操作.bash_logout)

  1. 创建一个普通文件:touch test01 test02 test 03

  2. 创建一个文件夹:mkdir xxx

  3. 修改文件权限:

    • 方法一:chmod (u/g/o/a)(+/-)(r/w/x) 文件名称 从ugo中选择或是直接a表示所有,+和-表示添加和删除权限

      举例:chmod a-w test 意思是test的all权限都减少w的权限

    • 方法二:chmod 三个数子 文件名称 约定:r=4,w=2,x=1,需要什么权限就让对应权限的数字相加,一个数字表示一个rwx的权限状态

      举例:chmod 664 test是指定该文件的权限为 -rw-rw-r--

  4. 修改文件拥有者:sudo chown root test :将test文件拥有者修改为root

  5. 修改文件所属组:sudo chgrp root test:将test文件所属组修改为root

  6. 复制文件:cp ../test study :将上一级目录中下的test文件夹中的study文件负责到当前目录

    (复制的时候要用与当前目录的相对路径去找需要复制的文件)

  7. 复制文件夹:cp -r ../test (-r代表循环文件夹内容)

  8. 移动文件(夹):mv test study :移动test文件到study文件夹中

    此操作必须在两个目录的公共父目录中才可操作

  9. 重命名文件:mv test test02:当检测没有test02这个文件,就会将test文件名更改为test02

  10. 删除文件:rm -r test:删除test文件 (-r是指递归删除文件夹中的内容)

  11. 批量删除同后缀的文件:rm *.txt:批量删除当前文件夹内以txt结尾的文件

  12. 搜索文件:sudo find /etc -name passwd :搜索/etc目录下名为passwd的文件

  13. 批量搜索:sudo find /etc -name p*:搜索/etc目录下名字p开头的文件


系统管理

挂载:指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件。

(比如我们的主硬盘,挂载点就被设定为/根目录,而我们所有保存的文件都会存储在硬盘中,如果你有U盘,最好将U盘的文件格式改为ExFat,可以直接在Windows中进行格式化)

找u盘设备名称:①根据内存容量找到u盘的位置(我的为:/dev/sdb ②在去招u盘位置下面Device中是 /dev/sdb1还是/dev/sdb 。最后找u盘的位置需要根据Device显示路径的去找

挂载:是将u盘内的东西挂在指定的文件夹里(相当于该文件夹是u盘的快捷键

系统指令:

  1. 打开任务管理器:top (按q退出) 此时按1可以查看CPU核心的使用情况 输入free可以查看系统内存使用情况

  2. 查看所有块设备的信息:lsblk

  3. 查看硬盘实体情况:sudo fdisk -l

  4. 挂载u盘:sudo mount /dev/sda1 u-test/:将/dev/sda1的u盘挂载在 u-test/文件下

  5. 取消挂载:sudo umount /dev/sda1

    (取消挂载需要先退出来u盘挂载的文件夹)

  6. 查看当前磁盘的使用情况:df

  7. 查看所有的进程:ps -ef

  8. 终止进程:kill 信号 PID 如: kill -9 11438

    信号:1 (HUP):重新加载进程;9 (KILL):杀死一个进程;15 (TERM):正常停止一个进程;

    PID通过查看进程可以得到进程的PID

  9. 关机:sudo shutdown 立即关机:sudo shutdown now

    (正常关机,只需要输入shutdown即可,系统会创建一个关机计划,并在指定时间关机,或是添加now表示立即关机)


压缩解压

使用tar命令来完成文件压缩和解压操作,在Linux中比较常用的是gzip格式,后缀名一般为.gz,tar命令的参数-c表示对文件进行压缩,创建新的压缩文件,-x表示进行解压操作,-z表示以gzip格式进行操作,-v可以在处理过程中输出一些日志信息,-f表示对普通文件进行操作

压缩解压指令:

  1. 压缩文件:tar -zcvf test.tar.gz *.txt :压缩当前文件夹内以txt结尾的文件,压缩包名为 test.tar.gz
  2. 压缩文件夹:tar -zcvf test.tar.gz test/ :压缩test文件夹,压缩包名为test.tar.gz
  3. 解压到当前文件夹:tar -zxvf test.tar.gz

Vim

xim test01,若test01文件不存在则就会创建一个新的文件并进入vim编辑。若有该文件,则进入该文件的编辑状态

这时我们直接输入内容是无法完成的,因为默认进入之后为命令模式,Vim编辑器默认有三种模式:

  • 命令模式:此模式下可以输入任意的命令进行操作,所有的输入都被看做是命令输入,而不是文本编辑输入。
  • 编辑模式:此模式下输入的任何内容都会以文本编辑方式写入到文件中,就像我们直接在Windows的记事本中写内容一样。
  • 末行模式:此模式下用于输入一些复杂命令,会在最后一行进行复杂命令的输入。

vim默认界面为命令模式,输入命令后就进入编辑模式;ESC可以退出编辑模式

进入末行模式: 退出末行模式:: 或者/

vim指令(进入到vim编辑界面)

命令模式——插入模式:

  1. i在光标前开始插入
  2. a光标后移一位,开始插入
  3. o直接跳到下一行,然后插入
  4. A在当前行的最后继续写入
  5. I在当前行的最前面继续写入

末行模式:

  1. :set number 开启行号

  2. :w 保存

  3. :wq:x 保存并关闭

  4. :q 关闭

  5. :q! 强制关闭 (一般是不让文件保存时使用)

  6. /it ?it 都可以开启搜索功能

  7. :[addr]s/源字符串/目的字符串/[option] 替换功能 举例::s/it/he/g :将当前行中的it全部替换为he

    addr表示第几行或是一个范围,option表示操作类型:

    • g: globe,表示全局替换
    • c: confirm,表示进行确认
    • p: 表示替代结果逐行显示(Ctrl + L恢复屏幕)
    • i: ignore,不区分大小写

可视化模式:

在vim界面 按下键盘上的v即可进入,它能够支持选取一段文本,选取后,我们可以对指定段落的文本内容快速进行复制、剪切、删除、插入等操作,非常方便。在此模式下,我们可以通过上下左右键进行选取,以进入可视化模式时的位置作为基本位置,通过移动另一端来进行选取。

对选中的区域操作:

  • y 复制选中区域
  • d/x 剪切(删除)选中区域
  • p 粘贴
  • u 撤销上一步

Linux入门操作介绍的更多相关文章

  1. Windows环境下安装配置Mosquitto服务及入门操作介绍

    关键字:在windows安装mosquitto,在mosquitto中配置日志,在mosquitto中配置用户账号密码 关于Mosquitto配置的资料网上还是有几篇的,但是看来看去,基本上都是基于L ...

  2. Linux入门基础介绍

    概述: 1. linux是一个开源.免费的操作系统,其稳定性.安全性.处理多并发已经得到业界的认可,目前很多企业级的项目        都会部署到Linux/unix系统上. 2. 常见的操作系统(w ...

  3. 01 Linux入门介绍

    一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以及游戏支持度不足 L ...

  4. Linux入门介绍

    Linux入门介绍 一.Linux 初步介绍 Linux的优点 免费的,开源的 支持多线程,多用户 安全性好 对内存和文件管理优越 系统稳定 消耗资源少 Linux的缺点 操作相对困难 一些专业软件以 ...

  5. 2)Linux程序设计入门--进程介绍

    )Linux程序设计入门--进程介绍 Linux下进程的创建 前言: 这篇文章是用来介绍在Linux下和进程相关的各个概念.我们将会学到: 进程的概念 进程的身份 进程的创建 守护进程的创建 .进程的 ...

  6. linux入门系列2--CentOs图形界面操作及目录结构

    上一篇文章"linux入门系列1--环境准备及linux安装"直观演示了虚拟机软件VMware和Centos操作系统的安装,按照文章一步一步操作,一定都可以安装成功.装好系统之后, ...

  7. (转)私有代码存放仓库 BitBucket介绍及入门操作

    转自:http://blog.csdn.net/lhb_0531/article/details/8602139 私有代码存放仓库 BitBucket介绍及入门操作 分类: 研发管理2013-02-2 ...

  8. Linux入门(用户操作及权限)

    Linux入门之 用户操作及权限   在一个公司里,老板与员工有上下级之分,员工与员工间也有上下级或同级之分.每个级别在公司的职责不同,权限也不同.在Linux操作系统中也一样,不同的用户身份拥有着不 ...

  9. Linux入门之基本的概念、安装和操作

    目录 Linux基本概念 Linux的安装 虚拟机安装CentOS7 CentOS设置网络 Linux基本操作命令 文件目录操作命令 进程操作命令 文本操作命令 Linux权限操作 用户和组操作命令 ...

随机推荐

  1. 关于我学git这档子事(5)

    对于错误: fatal: refusing to merge unrelated histories 解决之道: git pull origin main --allow-unrelated-hist ...

  2. BZOJ4713 迷失的字符串 解题报告

    BZOJ4713 题目大意:有 \(n\) 个点 \(n-1\) 条边,每条边有一个字符.给你 \(m\) 个字符串 \(s_i\),问每个字符串是否可以通过树上的一条简单路径表示. \(n,m\le ...

  3. Java概论——JavaSE基础

    Java概论 Java特性和优势 简单性 面向对象 可移植性 高性能:即时编译 分布式:可处理TCP/IP协议的一些东西 动态性:通过反射机制使其具有动态性 多线程:良好的交互性和实时性 安全性:防病 ...

  4. 深入C++05:运算符重载

    运算符重载 1.复数类 运算符重载目的:使对象运算表现得和编译器内置类型一样: 复数类例子 #include<iostream> using namespace std; class CC ...

  5. 一个全新的Vue拖拽特性实现:“移动”部分

    关于拖拽 CabloyJS提供了完备的拖拽特性,可以实现移动和调整尺寸两大类功能,这里对移动的开发进行阐述 关于调整尺寸的开发,请参见:拖拽:调整尺寸 演示 开发步骤 下面以模块test-party为 ...

  6. JS:表达式

    js代码的形式: 1.直接量 2.表达式 3.语句 1; "a"; true; null; var a; function fn(){}; b; var c = 20; var f ...

  7. 02 RESTFul接口和HTTP的幂等性分析

    RESTFul接口和HTTP的幂等性分析 REST全称是Representational State Transfer,中文为表述性状态转移,REST指的是一组架构约束条件和原则 RESTful表述的 ...

  8. SpringCloudAlibaba学习(解决SpringBoot初始化以及Nginx启动出错问题)

    微服务强调每个服务都是单独的数据库 在不使用微服务的情况下可以采用分布式架构,通过Template来调用远程的Rest接口 但这种方式维护起来很麻烦,而且有很多弊端. 一.环境搭建 1.首先搭建Spr ...

  9. 我熬夜开发了一款简约实用、支持多平台的Markdown在线编辑器(开源)

    前言 之前,一直想开发一款属于自己的Markdown编辑器,主要是自己平常写文章可以更加灵活操作,另外扩宽自己的视野也是非常不错的选择啊!所以在周末就决定玩耍一番.首先我调研了很多线上热门的md编辑器 ...

  10. SAP 定义用户组

    SUGR,可进行创建.查看.删除等维护性操作,并可指定本组的用户