Linux操作系统

Linux操作系统

一、命令格式

1.1打开终端的方式

1. ctrl alt+t

2.鼠标右键选择打开终端

1.2终端提示符

Ubuntu@Ubuntu:~$

例如:hjq@Ubuntu:~$

其中第一个hjq是指用户名(是普通用户还是超级用户root),即登录Linux系统的的用户

第二个Ubuntu是指主机名,就是这台Linux虚拟机的名字

波浪号表示:当前用户的家目录,即/home/hjq/

如果是/,则表示的是根目录

$表示普通用户权限

#表示管理员权限

1.3命令格式

命令 选项 参数

1.4命令帮助信息

命令 --help

注意:并不是所有的命令都有帮助信息,例如pwd就没有,pwd表示查看当前路径位置

1.5man命令

man是Linux中提供的一个手册,分为多个章节

第一章:命令相关的帮助信息

第二章:操作系统调用,内核提供的函数

第三章:库函数的帮助信息

用法:

man 章节 查找的信息

man 1 ls           --------第一章中查找ls命令
man 2 open           -----第二章中查找open命令
man 3 printf          ----第三章中查找printf库函数

注意:

  1. 如果命令或者系统调用或者库函数名相同的话,会在各个章节中去寻找
  2. 如果命令之间的章节号不写,那么默认会从第一章开始去寻找,直到找到为止

1.6 Linux常用技巧

  1. 自动补全:写一部分文件名或者目录名,如果该路径下只有唯一和该文件名匹配的文件或者目录,那么会自动补全;如果有多个的话,可以连续按两下tab键,会自动列出以输入的字符开头的文件或者目录

  2. **历史命令:**可以按方向键的上下键,来查看之前的命令,方便使用

  3. ctrl +c可以结束运行中的程序

  4. 重定向:

命令 > 目的文件:将原本文件中的内容清空,然后将本来输出在终端屏幕上的信息输出到指定的文件中

命令 >> 目的文件: 以追加的方式将原本输出在终端中的信息,输入到指定文件中

  1. **管道:**就是 | ,将一个程序的输出作为另外一个程序的输入。例如 :

    ls --help | more, 该命令按空格可以一页一页的显示信息,按回车可以一行一行的显示,按q可以退出,用于内容较多的文件查看

    ls /etc | wc -w命令可以用于显示/etc目录下的文件上,因为文件都是一个个单词隔开的,而wc -w则统计单词个数

二、Linux命令

ls命令

显示文件类型、文件权限、链接文件的个数、用户名、用户组名、文件大小、文件创建时间、文件名

ls -a            //显示所有文件,包括以..或者.开头的隐藏文件
ls -l            //显示当前目录下的除了隐藏文件外的所有文件
ls -h         //人性化显示文件信息,主要体现在文件大小可以通过带单位的字节数表示,例如某个文件大小为3.4k,表示3.2k的字节大小
    
    //如果想查看指定位置的目录信息,只需要在之后加上目录路径即可
    //这几个命令可以其一用,例如   
ls -al        //显示包括以..或者.开头的隐藏文件在内的所有文件的详细信息
ls -hl        //
    
ls 目录名    //查看指定目录下的文件信息
    
ls  -A        //显示除了.和 ..以外的所有文件
    
ls -            //

文件类型

注意:Linux中不会以文件的后缀名作为文件类型的区分;Linux中一共有bcd-lsp这么几种类型的文件

  1. b-----------块设备文件
  2. c-----------字符设备文件
  3. d--------目录文件
  4. -表示普通文件
  5. l----------符号连接文件(快捷方式)
  6. s----套接字文件
  7. p-----管道文件

文件权限

分为三组------------创建文件的用户主、用户组、其他用户对文件的操作权限

r代表读权限,w代表写权限,x代表执行权限,-表示没有相关权限

对于目录文件而言:

  1. 读表示查看目录下的文件
  2. 写权限表表示可以在目录中创建、删除、修改目录
  3. 执行权限表示能够访问、进入目录

链接文件的个数(硬链接)

硬链接表示目录中有子目录的个数---------------对于目录而言

用户名

文件或者目录的创建者

用户组名

创建者所在的组

文件大小

默认以字节为单位

创建时间或者最后的修改时间

文件名

修改文件权限

chmod (a、u、g、o)(+、-)(r、w、x) 文件名

a:表示三组同时修改

u:用户

g:用户组

o:其他用户

+:添加权限

-:删除权限

修改文件创建者

chown 用户名1 文件名 ------改变文件的创建者为用户名1

注意:只有管理员权限可以操作

修改文件用户组

chgrp 用户组 文件名 -------修改文件的用户组

注意:只有管理员权限才可以操作

tree命令

以树状结构显示当前目录下的文件

tree -L 层数:表示只显示3层树状结构

清屏命令

  1. clear
  2. Ctrl+l

切换路径

cd 目录名

cd / 回到根目录

cd ~ 和cd 这这两个命令都是回到用户家目录,也就是/home/Ubunt

注意,如果是管理员使用cd 命令,会回到/root

cd … 进入当前目录的上一级目录

cd . 进入当前目录

注意:只要是目录文件,那么就一定有 .和…这样两个隐藏目录文件;他们分别表示当前目录和上一级目录

cd - 可以回档上一次的目录

查看命令

cat 文件/文件所在路径

cat -n 文件/文件所在路径 ----------------行号显示查看

查看文件前十行

head -num 文件名1 文件名2 ---------------当显示多个文集的前num行(默认是10行),而且时候会在每个文件的开头显示文件名

tail:显示文件后x行,默认是10行

tail -num 文件名 -----------查看文件的指定后num行

file :查看文件的类型

file 文件名

diff 文件1 文件2 ---------比较文件1和文件2的不同
在这里插入图片描述

删除命令

rm 文件名1 文件2 文件3

注意如果没有写权限,那么会提示,只需要在提示后面输入yes即可删除

rm -r 文件夹名 ----------------删除目录

rm -rf 文件名/文件夹名 ---------------强制删除,即使要删除的文件或者文件夹不存在也不会报错

rm -r 文件名/文件夹名 -i --------每次删除会提示是否删除

rmdir -p a/b/c ----------表示递归删除目录,结果表现为a/b/c都删除了

复制命令

cp 文件 目录2---------------------表示将文件复制到指定的目录2

cp 目录1 目录2 -a -----------------将目录1及其内容复制到目录2中(注意默认cp是不能复制目录的,需要加上-a才行)

移动命令

mv 指定路径下的文件/目录1 指定路径下的目录2 -----------------移动文件或者目录1到目录2中(不加路径,默认是当前路径)

mv 文件1 文件2 ----------------表示将文件重命名为文件2

mv 目录1 目录2 ------将目录1重命名为目录2

文件、文件夹创建

mkdir 指定路径下的文件夹 -------------创建一个指定路径下的文件夹

mkdir 指定路径下的文件夹1 文件夹2 ------------可以在指定的路径下创建多个文件夹

mkdir -p 指定路径下的额文件夹1/文件夹2/文件夹3 ---------这种递归创建文件夹必须加上-p

注意不可以创建已经存在的文件夹

touch 指定路径下的文件名 ------------创建指定路径下的文件

注意:可以创建同名的文件,这样的话会更改原来的文件的创建时间,其余的都不变

注意创建文件的时候路径必须存在,不然创建不了

查找命令

find 路径 -name 目录名或者文件名 -----------在指定的路径或者子目录中寻找规定的目录名或者文件名

find 路径 -name ‘*.txt’ -------------------在指定的路径或者子目录中寻找以.txt为后缀名的所有文件

查看文件指定信息

grep 信息 文件名 -n ----------在指定文件中寻找指定的信息,输出格式是,,显示行号,将自指定信息所在行的所有信息都输出,并将指定信息标红显示

grep 信息 目录1/目录2/* -R -n 递归的找到目录中所有的相关信息

创建连接文件

软连接(符号连接)

ln -s 源文件的名字 快捷方式的名字(连接文件的名字) ---------------连接文件就是源文件的快捷方式

操作软连接就是操作原文件,当原文件被删除后,软连接就失效了,但是该软连接还在,只不过里面内容没了。

硬链接

创建一份与原文件完全一样的文件,此时原文件和硬链接文件的连接数都一样,但是修改其中任意一个文件,其他文件也会跟着修改。

如果删除了原文件,硬链接文件不受影响

ln 原文件 硬链接文件

压缩文件

文件归档:并不会将文件的大小进行改变,反而归档文件会变大。 -----文件名变为 文件名.tar

gzip格式压缩
打包和解压

tar -zcvf 压缩包名.tar.gz 文件1,文件2,文件3… ---------将文件1,文件2,文件3打包到压缩包中

tar -zxvf 需要解压的压缩包.tar.gz --------------------将压缩包解压

c:表示创建归档

x:表示释放归档

v:表示多个文件

f:

bzp2格式

tar jcvf 压缩包名.tar.bz2 文件1,文件2,文件3… ---------将文件1,文件2,文件3打包到压缩包中

tar jxvf 需要解压的压缩包.tar.bz2 -C 路径 --------------------将压缩包解压解压到指定路径

查看内存命令

  1. df 命令(Disk Free):
    • df 命令用于显示文件系统的磁盘空间使用情况,包括磁盘总容量、已用空间、可用空间和文件系统的挂载点等信息。
    • 常用选项:
      • -h:以人类可读的方式显示磁盘空间大小,例如 GB、MB 等。
      • -T:显示文件系统类型。
      • -i:显示 inode 使用情况。
    • 示例:df -h 将以人类可读的方式显示磁盘空间信息。
  2. du 命令(Disk Usage):
    • du 命令用于显示文件或目录的磁盘空间使用情况,可以查看特定文件或目录所占用的空间大小。
    • 常用选项:
      • -h:以人类可读的方式显示磁盘空间大小。
      • -s:显示汇总信息,即只显示目录的总大小而不显示子目录的大小。
      • -c:显示总计大小。
    • 示例:du -h 将以人类可读的方式显示当前目录及其子目录的空间使用情况。

因此,df 用于查看整个文件系统的磁盘空间使用情况,而 du 则用于查看指定文件或目录的磁盘空间使用情况。在管理磁盘空间时,这两个命令通常结合使用,以全面了解磁盘空间的分配情况。

用户管理

修改普通用户密码
  1. 进入管理员用户后,再改指定普通用户密码

    su root -------------输入管理员密码,进入管理员登录

    passwd 指定普通用户---------------此时可以直接修改指定普通用户的密码,此时密码长度不受限制

  2. 普通用户提升权限后直接修改

    sudo passwd 指定普通用户名

    此时普通密码过短会修改不成功

修改管理员密码

passwd root --------------修改root密码

切换用户
  1. su -----------默认进入管理员用户

  2. su root --------进入root 用户

  3. su 用户名 ---------进入到指定用户

    注意每次切换用户,都需要输入用户的密码,该密码是要登录的用户密码

  4. 退出root 用户:输入exit

添加新用户

sudo adduser 新用户名

或者在root登录下进行 : addusr 新用户名

注意只有管理员可以添加用户

给新用户添加权限

在管理员权限下,进入/etc/sudoers,然后再vi编译器中添加
在这里插入图片描述

删除用户

管理员权限才可以删除用户

sudo userdel -r 用户名 ---------------删除该用户的所用信息

注意:用户中没有的文件,就会提示没有找到改文件

用户组管理

在/etc/group目录下查看所有组信息, :q退出

查看用户所在的用户组:groups 需要查看的用户名

添加用户组

sudo groupadd 需要添加的用户组名

删除用户组

sudo groupdel 需要删除的用户组名

往用户组中添加用户

sudo gpasswd/usermod -a -G 用户组 用户名
这里的-a表示追加的方式添加新用户到用户组

从用户组中删除用户

sudo gpasswd -d 用户名 用户组

ping +网络地址/ip

查看网络连接状况

ifconfig -----------查看本机网络信息

第一次使用需要安装net-tools

命令:sudo apt install net-tools

Shell脚本

Shell脚本是指利用shell命令编写的,可执行文件。运行该文件就是按照逻辑顺序执行shell命令

使用shell脚本

shell脚本的后缀名是.sh

  1. shell脚本是一个可执行文件

    chmod a+x shell脚本名.sh

  2. 使用shell解释器

    解释器 xxx.sh

    添加注释,解释shell文件使用的是哪个解释器

    #!/bin/bash

shell脚本语法
定义变量

变量名=值

如果值为路径需要用""括起来

变量引用

$表示变量值使用,如果不加的话就会认为后面是字符串

echo 打印字符串

变量值都是字符串:""和’’

" " :会解析字符串变量

echo “$a” ========== echo $a

’ ’ :不会解析字符串的内容

(反引号):把引号中的内容解析,同时得到执行结果。用途是,将结果给一个变量

**注意:" " 如果不加,默认也是加上一个双引号。被单引号括起来的变量和普通字符一样,直接原样输出 **

运算指令expr

乘法需要写成 *

运算符和变量之间要空开

输入、输出

echo 字符串:

read 变量名1

位置变量

磁盘分区

U盘默认挂载路径

/media/hjq/udisk/

U盘挂载指令(重新挂载U盘)

sudo mount sdc1 /media/hjq/udisk

卸载U盘

指令
fdisk  /dev/sdc     ()

网络连接(桥接模式)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

以上内容均来自主机的内容,其中DNS域名和网关一样即可

在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值