古风

游戏入门教程—windows系统,linux系统基础

作者:古风 本文共1张图片 11521个字,阅读需要29分钟 百度已收录

windosw环境安装:

java 下载地址:https://www.qwznb.com/8074.html

安装教程详情见工具帖子;

推荐安装:

腾讯管家 https://guanjia.qq.com/product/soft/?ADTAG=media.buy.baidu.79443

QQ浏览器https://browser.qq.com/?adtag=SEM170314003
g J S _ i [ T Z +狐浏览器

搜狗P * m输入法

百度网盘(文件存储)

格式i i i L m @ ( 2 $化工厂 (视频转换)https://www.qwznb.com/6875.html

apkDB(安~ + 1卓客户端反编译)
改之理

雷电模拟器(用于安装apk,进行游戏测试)

typora (笔记记录)

finalshell (链接linux服务器用)

向日葵(远程桌面链接)

Il + , ) ^ % ~DM (下载文件,视频音乐等方便)

dnSpy (dll反编译)

N12 (数据库链接工具)

VM15(虚拟机,^ W k + y n Q用于本地模拟服务器测试)

1. Linux介绍

1.1 LinuxV - % ) w P j的诞生

1991年,GNk ? d QU计划已经开发出了许多工具软件,最受期盼的GNU C编译器A n r ? K E W $ W已经出现,GNU的操作系统核心HURD一直) | c 处于实验阶段(GNU工程从1984年起就在做这件事),没有任何可用性,实质上也没p 8 $ ] d -能开发出完整的GNU操作系统,但是GNU^ . b M i C p奠定了Linux用户基础和开发环7 * 0 h t 5 + 6境。

游戏入门教程—windows系统,linux系统基础-古风游戏资源网

  • Linux时间线

    • 1991年初,林纳斯托瓦兹开始在一台386sx兼容微机上学习minix操作系统。

    • 1991年4月,林纳斯托瓦兹开始酝酿并着手编制自己的操作系统。

    • 1991_ n b 年4 月13 日在co* ) _mp.os.minix 上发布说自己已经成功L X h , 4 W K x地将 bash 移植到了minix 上,而且已经爱不释f r k g手、不能离开这个b ^ B n ( ishell软件n ] 4 r D了。

    • 1991年的10月5日,林纳斯托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生

    • 199P d 4 A ; ) - 92年Linux与其他GNU软件结合,完全自由的操作系统正式诞生。该操作系统往往被称为“GNU/Linux”

    • 1993年,M k | U w 8 ; b |大约有100余名程序员参与了Linu s Rx内核代码编写/修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有V s } X m - T l f十万行,用户大) _ y 5 5 H约有10万左右。

    • 1994年3月,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议。

  • Linux主要特性

    • Linux中一切都是文件.

      • 在linux中硬件设备也是作为文件来管理的

    • 完全免费

    • 多用户, 多任务

    • 良好的界面

    • 支持多平台

  • 一些名词

    • GNU :Gnu's Not Unix. 可以理解成一种口号,最s J 5 8 S {早由Richard Stallman呼吁并倡导的。算是嘴皮上的功夫。

    • GPL :General Public License. GNU通用公共许可证。书面上的协议。

    • FSF :自由软件基本会,给GNU提供资金支付的,毕竟没钱难成事啊。

    • 自由软件:GNU项目下的所有软件都基于GPL许可证(非GNU项目也可使用GPL),都是自由软件。

    • 开源软件:是美国Ox + a + } 1 Fpen Source Initiative协会定义。

      自由软件与开源软件都允许用户任意获取,且使用、修改、再发行都不受限制,相似度极高。

      两者除了所谓的思想理念不同之外,按我们的话讲就是东家不一样

1.2 Linux发行版

  • ubuntu版本 -> 18.04

    • 主版本

      • 双数 -> 稳定版

      • 单数 -> 测试版

    • 副版本

      • 04 -> 相对稳定

      • 10 -> 测试版

    • 长期支持版: -> 官方最少支持5年

      • 双数.04

1.3 命令S n Z Y Y =解析d { ` - 8 $

  • 命令解析器

    # 运行在终端上= n T j X % x -的一个程序, 阻塞终端等待用户输入, -> 回车, 命名解析器解析用户输入的命令:
        - 可以解析: 输出对应的结果
        - 不能解析: 提示无法解析
    # 为什么有些命令可以解析, 有些不行?
        - 命令解析器的工9 a  0作原理:
            - 命令解析器名字: bash/shell
                - shell! $ D S ] _ # O在unix上使用的 -> 伯恩
                - bash -> 在shell基础上进行改进
            - 如何工作?
                - 接收用户的终端输入
                - 命令解析器会取PATH环境变量的值, 里边是很多路径, 命令解析器会一次搜索这些路径, 
                  在路径下检测有没有当前用户输入的命令
                   - 检测到了: 执行这个命令
                   - 没检测到: 提示命令找不到
  • s $ c K令提. k &示符

    robR H 2 z J X . |in@OS:~/Linux/10Day$ 
        - robin: 当前用户的用户名
        - @: at
        - OS: 主机名, 在安装操作系统的时候指定的
        - : 就是冒号, 理解为分隔符
        - ~/Lin3 X @ R Q A Z - Iux/10D] % & v F S b Eay9 - P k: 当前K ] S用户所在的目录
            - ~: 当前用户的家目7 V L P . D A录, 当前用户名为robin
                - /home/robin
        - $: 代表当前用户是普通用户
        - #: 当前用户是管路员

2. Linux目录

2.1 Linux目录结构

  • 根目录: /

  • 根目录下z + A - ; g p i的子目录: -> 这些目录在安装好操作系统之后就是存在的, 不同的目录有不同的功能& b U

    • bin: binary, 存储了二进制的可执行程序, 常用的linux命令都在在目录中

      • ls

      • cp

      • mv

      • .....

    • dev: device, 设备目录, 存储了电脑硬件6 ] u对应的文件

      • 鼠标

      • V k

      • 终端

      • 磁盘

    • home: 存储用户目录的

      • 在liunx中只要创建一新I . k B A用户, 这个用户需要有一个用户目录

    • boot: 存储了系统的启! w z 6 + h动文件

    • etc: 存储配置文件

      • 操作系统的配置文件

    • 安装的软件的配置文件

    • lib: library, 存储了一些系统或者软件运j V J ! : I k行需要的库文件

      • 动态库

      • 静态库

    • lost+J b o E m % m 4found: 给系统使用的, 普通用户是没有权限操作的

      • 电脑突然断电

      • 系统突然崩溃

      • 存储0 [ i C V e b系统的一些碎片, 方便系统还原

    • media: 挂载X 9 0 ` n外设

      • 光驱

      • 扫描仪

    • mnt: 挂载外设, 存储介质

      • U/ m R c

      • 移动硬盘

    • opt: 安装第三方软件的目录

    • procp c f & h v D: 给操作系统使用的, 存储内存数据

    • root: 管理员用户的家目录

    • tmp: 临时目录, 当前重启电脑, 该目录会被清空

    • usr: unix system rZ 5 & ; oesource, 系统资源目录

      • /usr/bin: 存储可执行程序j r E w X ) v

      • /usr/inQ K f 7 g 8 C g tclude: 库的头文件目录

      • /usr/lib: 存储库(静态/动态)文件

    • /usr/local: 安装第三方软件的目录

2.2 路径

2.2.1 绝对路径

  • 从根目录开始表示的路径

    • /home/robin/backup/J 0 y Wcjson

    • 好处: 在什么7 9 p z情况下都可以使用

    • 缺点: 长

2.2.2 相对路径

  • 从某一个非根目录开x C p q #始表示的路径

    • 好处: 短

    • 缺点: 用户所在的目录发送变化, 相对路径也就变了

    robin@OS:~/backup/cjson$ pwd
    /home/robin/backup/cjson H + ) I : _ q e
    ro: P ? ] 0 c t bin@OS:~/backup/cj, # N qson$ tree
    .
    ├── cfg.c
    ├── cfg.hR Y v
    ├── cJSON.c
    ├── cJSON.h
    ├── conf
    │ └── cfg.5 f V Q S [ 5 T ljsonB | . n - W 2 ^
    ├── register
    ├── test.c
    └── test.jse | s k G $ E Ton
    
    1 directory, 8 files
    robin@l 1 C mOS:~/backup/cjson$ cd conf/   # cjson的子目录conf
    robin@OS:~/backup/cjson/conf$i 7 Y tree
    .
    └── cfg.json
    
    0 directories, 1 file
    robin@OS:g & [~/backup/cjso% e F 9 R N )n/conf$ cd conf   # conf的子目录conf

3. 文件管理命令

3.1 ls命令

# 查看文件属性信息
# 参数 -aJ 4 t ==> 显示所有的文件 all
# 在linZ c x / =ux2 1 B C ( A = q _下文件名前加 . 代表该文件是隐D { ^ 2 8 3藏文件
robin@o 5 1 0 } . }OS:~$ ls -a
.     backup     core         .lesshst     packy Y T I ` Q cage       shm      .viminfy.tmp
..    .bash_history  docker-compose.yml  Linux      .profile      test.cpp    .viminfz.tmp
1.c    .bash_logout  echo         .local      projects      ubt_etc    .vimrc
a     .bashrc     english.txt     luffy      .pytT P ~ $ 5 x Qhon_history   .vim % J . @ x R O `m      .ycm_extra_conf.py
abh N x , / _ u Zc    .cache     fastdfs       .mysql_history  .rediscl= D v y d $ f bi_history  .viminfo

# 查看文件详细信息 -l  list
robin@OS:~$ ls -l
total 79500
-rw-rw-r-- 1 robin robin   195 Jul 29 17:~ M & i a 5 % f 110 1.c
-rw-rw-r-- 1 robin robin 81068032 Jul 29 11:~ k / @ i24 a
prw-rw-r-- 1 robV Y i ` R h u sin robin    0 Aug 9 15:23 abc
-rw-rw-r--z % [ Y @ f C r J 1 robin robinY q R v : L   212 Jul 29 11:18 alarm.c
-rwxrwn 6 &xr-x 1 robin robin  14456 Sep 6 19:41 a.out: t B ^ i Z
drwxrwxr-x 4 robin robin   4096 Jul 20 11:29 backup|  r O u t l C
drwxrwxr-x 2 robin robin   4096 Aug 4 18:09 config
-rw------- 1 robin robin  249856 Jul 29 10:26 core
-rw-r--r-- 1 robin robin   780 Aug 7 02:01 docker-compose.yml
-rwxn d ~rwxr-x 1 robin robin   9r n S N 4 m &024 Aug 12 08:44 echo& F Q j I
-rw-^ L k 2 s V  +r--r-- 1 robin robin  128867 Jul 21 15:29 english.txt
drwxrwxr-x 5 robin robin   4096 Oct 14 2018 fastdfs
drwxrwxr-x 3 robin robin   4096 Nov 26 2018 hyperledger-fabric
drwx% B O d 9 7 , 3 Mrwxr-x 17 robin; g L a l t robin   4{ x r096 Jul 22 23:04 Linux
drwxrwxr-x 7 robin robin   4096 Aug 13 08:13 luffyn n ? r A F Y
-rw-rw-r-- 1 robin robin   2075 Aug 1 10:05 mytesttime.txt
drwxrwxr-x 3 robin robW z 8 h ; sin   4096 Sep 6 19:41 oradiag_robiz t 8 e ` Fn
drwxrwxr9 ? w V . X # ^-x 11 robin r9 i s 0 N pobin   4096 Sep 1 10:51 package
drwxrwxr-x 12 robin robin   4096 Sep 6 20:00 proj z c Y :ects
-rw-r--r-- 1 robin robin   1532 Aug 4 19i E ? - $ 1 c:54 serveMaWen.tar.gz
drwD c zxrq @ $ ^ r = 9 x Cwxr-x 2 robin robin   4096 Aug 4 19:59 servep T | pSock
drwj F 2 I f ,xrwxr-x 2 robin robin   4096 Aug 28 16:47 shm
-rG x % T ? -w-r--r-- 1 robin ro$ 3  2  jbin   1847 Sep 5 16S e o 5 l V z:55 test.cpp
drwxr-xr-x 2 root  r6 M * c d f Foot   4096 Aug 7 01:54 ubt_etc

第1个字符: 文件类型
    - 普通文件, 符号: -
    - 目录, 符号: d          dir
    - 软连接(快捷方式), 符号: l        link
    - 字符设备(键盘), 符号: c      char
    - 块设备(硬盘), 符号: b            block
    - 管道, 符号: p                   pipe
    - 套接字, 符号: s          socket
第2-10个字符: 文件权限, 每三个为一组
    2,3,4: 文件所有者对文件的访问权限 -> user
    5,6,7: 文件所属组对文件的访问权限 -> group
    8,9,10: 其他人对文件的访问权限   -> other
    权限的划分:
        读(r), 写(w), 执行(x), 没权限: -
第11个字符  一个整形数 => 硬链接计数
    -> 相? N 9 ~ ` V Q f当于c++中的引用
    有多个文件名, 对应是磁盘上的同一个位置的文件
    作用:
        - 节省空间
        - 同步速度快
第一个robin: 文件所有者
第二个robin: 文件所属组
整形数: 文件大小
Jul 29 17:10: 日期, 修改日期
最后一个字符串: 文件名
% T U M c : 4 Q
# 如果文件是目录q 2 y U / Y W ;,文件名后加B G { | D/
# ls -laF => ll

3.2 cd命令

  • 进入指定目录

    cd 相对路径
    cd 绝对路径
  • 进入家目录

    cd ~
    cd
    cd /home/xxx
  • 在临近的两个目录之间切换

    当前目录: /home/a/b/c/Z n ] ( m b od/e/f
    切换目录: /! * ` K F B u Petc/conf/a/b/test -> 变成当前
    
    # 目录切换之后
    /home/a/b/c/d/e/f -&g[ j d L x s it; 变成上当前的上一个
    /etc~ # a z a 1 Y / `/conf/a/b/test -> 当前目录
    
    cd -

3.3 创建删除目录

  • 创建目录

    # 创建单( # i
    mkdir 目录名
    # 创建多层目录
    mkdir 父目录/子目录/孙子目录 -p
  • 删除Z , C =目录

    # 删除空目录D 4 D  -> 一般不用
    rmdirE ; f ; n录名
    #H g % g + 删除文件
    # 如果删除的是目录 需要添加参数 -r
    rm 目录名 -r

3.4 cp命令

# 拷贝文件或目录
# 语法: cp 要拷贝的文件  最终拷贝得到的文件
# 目录被复制了一份
# 拷贝目录需要递归操作, 参数: -r
# 新的名字-> 这个名字在拷贝之前不存在
cp 存在的目录  新的名字 -r
# 前边的目录被拷贝到后边的目录中
cp 存在的} Q g目录  存在的目录 -r

# 文件的拷贝
cp 文件1u O : x  f = ) ) 文件2
# 文件1存在, 文件2不存在
cp 文件1 文件2 # 文件2被创建

# 文件1存在, 文件2存在
cp 文件1 文件2 #d m i | ; 文件2中原来的内容被文件1覆盖

3.5 mv命令 -> move

# [ d 文件有可能是目录或非目录
# 语法: mv 文件1 文件2
  • 文件移动

    # 参数1: 目录或非目录
    # 参数# : | 22: 是一个目录, 而且必须存在
    # mv 文件  已经8  b X a存在的目录
  • 文件改名

    mv 已经存在的文件 不存在的名字
  • 文件覆盖

    # 文件1覆盖文件2, 删除了文件1
    mv 已经存在的文件1 已经存在的文件2

3.6 查看文件内容

  • cat

    $ cat f .件名
    # 将文件中的所有内容输入到终端
    # 适合查看比较小的文件
  • more

    $ more* M R L ( 文件名
    回车: 向下滚动一行
    空格: 向下翻页
    退出: q
  • less

    $ less 文件名
    回车/ctrl+n: 向下滚动一行
    ctrl+p: 向上滚动一行
    空格/pagedown: 向下翻页
    pageuh & 8  _ U Ap: 向上翻页
    退Z _ H y O I出: q
  • head

    # 默认显示文件头部的10行
    $ head 文件% v ( X V l # Z T
    $ head -行数 文件名
  • tail

    # 默认显示文件尾部的10行
    $ tail 文件名
    $ tail -行数 文件名

3.7 其他命令

tree命令

# 以树状结构显示目录内容
# 需要额外安装
# 在线安装apt==atp-get(从16.04版本开始)
ping www.baidu.com
sudo apt update  # 更新软件的下载列表
sudo apt install tree

# 使用
# 不使用参数-L表示显示所有的目录内容
tree -L 层数  目录(h Y } A # [ 0不写代表当前目录)

pwd命令

# 显示当前用户所在的目录
# 得到一个绝对路径

touch命令

# 语法:
touch 文件名

# 1. 文件不存在d M t W u -> 创建一个空的新文件
# 2. 文件存在  -&gtE 0 q ( & h ` W ;;  更新文件的日期(修+ c N改日期)

which命令

# 查看二进制程! 1 ( # ; Q v s序所在的系统目录, (需要命令解析器bash解析的命令)
$ which ls
/bin/ls
robin@OS:~/backup$ date
Tue Sep 10 14:52:55 CST 2019
robin@OS:~/backup$ whichp A j date
/bin/dax L P Z T z Hte

# which cd
# 因为cd是系统的内建命令, 因此找不到cd对应的路径
robin@OS:~/backup$ which cd
robin@OS:~/backup$ 

重定向命令 >

# 使用这个操作符写文件
    - 如果文件不存在 -> 创建, 并且将数据写入
    - 如果文件存在 -&gu J 7 & Pt; 清空原q - / r A数据, 将新数据写入
# 使用, 将前边命令的输入写入到对应指定的文件中
Y j t出的命令 > 文件名
举例: 
date > a.txt

# 如果想追加
date >> a.txt

管道 |

# 语法
# 将命令A的输出作为命令A的输入
命令A | 命令B

4. 用户~ b ] ` -管理命令

4.1 切换b ) [ b a k &用户

# - 代表切换用户的环境变量
su 用户名
su - 用户名

# 当前用户的robiJ n d J Xn
su luffy    # -> 切Q Y l K x X A C s换到了luffy用户, 环境变量一部分使用的是robin的(当前的工作路径是robin的)N w # k n
su - luffy  # -@ ^ * B B> 切换到了luffy用户, 当前工作目录切换到luffy的家目录下

# 退出当前用户
exit

4.2 添加删除用户

# 如何证明添加了一个新用户?
    打开文E i k w % =件: /etc/passwd 里边有对应的用户信息, 证明这个用户是存在的
        zoro:x:1003:1003:,,,:/home/zoro:/bin/bash 
# 如何证明这个组是存在的?
    打开文件: /etc/group 里边有对应的组信息, 证明这个用户组是存在的
         zoro:x:1003:
         
# 添加用户
sudo adduser 新的用户名

$ sudo ad` g n 5 I ! T & Iduser zoro
[sudo* | / j ; Y |] passwh j # 1ord for robin: 
Adde v ? Z R d zing user `zoro' ...
Adding new grouX  T q W , f 9p `zoro' (1003) ...
Adding new user `zoro' (H - C G1003) w# F aith group `zoro' ...
Creating home direct/ d V l 3ory `/home/zoro' ...
Co_ 5 & ] upying files from `/etc/skel' ...
Enter neJ ! - } R F Z )w UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
Changing the user information for zoro
Ente ` M O Pr the new value, or press ENTER for the default
     Full Name []: 
     RooS j K ^ O E 0m Number []: 
     Work Phone []: 
     Home Phone []: 
     Other []: 
Is the information correct? [Y/n]E E E 1 ^ 9 2 4 W y

# 删除用户
sudo deluser 要删除的用户名
最后需要将/home目录下的用户目录删除

4.3 添加删除用户组

# 添加新的组
sudo addgroup 新的组的名字

# 删除组
sudo delgroup 要删除的组的名字

4.4 设置/修改密码

# 修改当前用户的密码
$ passwd
# 修改其他用户
sudo passwd3 M l | e P Q % q 用户名
sudo passwd luffy/root

4.5 文件属性

修改文件权限 -> 最重要的

  • 文字设定法

    chmod who[+|-|=]mod 文件名
     - who: 哪一类/基类人
        - 文件所有者 -> user -> u
        - 文件所属组 -> group -C B o $ ] 2 m 9> g
        -> 其他人 -> oV | ~ M p n fther -> o
        -> 所有的人 -> all -> a
     - mod: 操作权限
        - 读: read -> r
        - 写: write -> w
        - 执行: ? -> x
        
        
    # 示例
    $ ll
    total 12
    drwxrwx) [ 6 V C . I sr-x 2 robin robin 4D s o096 Feb 13 2019 ./
    drwG M i U l 5 ? Rxrwxr-x 4 robin robin 4096 Jul 20 11:30 ../
    -rw-r--r-- 1 robin robin  74 Feb 13 2019 cfg.json
    robin@OS:~/backup/test/ m : U  # b $conf$ chmod a=rwx cX E , %   - Mfg.json 
    robin@OS:~/backup/test/conf$ ll
    total 12
    drwxrwxr-x 2 robin robin 4096 Feb 13 2019 ./
    drwxrwxr-x 4 robin robin 4096 Jul 20 11:30 ../
    -rwxrwxrwx 1 robin robin  74 Feb 13 2019 cfg.json*
    robin@OS:~/backup/test/conf$J o 5 chmod uL p v t Y i x 7 M-rw cfg.jt $ ! O 3 A 5 }son 
    robin@OS:~/backup/test/conf$ ll
    total 12
    drwxrwxr-x 2 robin robin 409G o { } w 76 Feb 13 201Q { ] 09 ./
    drwxrwxr-x 4 robin robin 4096 Jul 20 11:30 ../
    ---xrwxrwx 1 robin robin  74 Feb 13 2019 cfg.json*
    robin@OS:~/backup/test/conf$ chmodQ a c r 3 F go-x cfg.json 
    robin@OS:~/backup/test/conf$ ll
    total 12
    drwxrwxr-x 2 robin robin 4096 Feb 13 2019 ./
    drwxrwx, ! !r-x 4 robin robin 4096 Jul 20 11:30 ../
    ---xrw-rE }  v ww- 1 robin robt 4 = l 9 K o c _in  74 Feb 13 2019 cfg.jso1 _ N V 7 I - H jn*
  • 数字设定法 -> 使用频率比较高

    # 语法:
    chmod [+|-]mod 文件名
        - mod: 使用数字表示文件的权限
            - 读:j H c ) 5 O % R P 4
            - 写: 2
            - 执行A + k @ 1 7 @ C v: 1
    # 举例:
    chmod 0765 a.txt
        - 0     7       6       5
        八进制  所有者  所属组   其他人
    # 举例
    robin@OS m # n:~/backuJ ( G z 8  =p/test/conf$ ll cfg.json 
    ---xrw-rw- 1 robin robin 74 Feb 13 2019 cfg.json*
    robin@OS:~/backup/test/conf$ chh A ^ O / xmod 777 cfg.json 
    robin@OS:~/backup/test/conf$ ll cfg.json 
    -rwxrwxrwx 1 robin robin 74 Feb 13 2019 cfP W 2 s a Z # qg.json*
    # 去掉其他人和所属组的读, 所有者的执行
    # 读: 4  执行: 1
    robin@OS:~/backup/test/conf$ chmod -144 cfg.q ~ Ljson 
    robig D P I ! 7 Nn@OS:~/backup/test/conf$ ll cfg.json 
    -rw--wx-wx 1 robin robin 74 Feb 13 2019 cf8 ! Q K ; 7 ag.json*

修改文件所有者

# 普通用户没有权限, 必须使用管理员权限
sudo chown 所有者的名字 文件名
# 可以同时修改所有者和所属组
sudo chowZ { 1 f t ` _ _n 所有者的名字:所属组的名字 文件名

修改文件所属组

# /etc/group
# 普通用户没有权限, 必须q / g 0 C d D使用管理员权限
sudo chj Y V , T 0 8 # Wgrp 新的组名 文件名

5. 压缩和解压缩

出现频率比较高的压缩文件的格式:

  • .tar.gz

  • .tu J C * 0 { m @ar.bz2

    • tar

  • .zip

    • zip

  • .rar

    • rar

5.1 tar

# 严格意义上tar命令只能打包, 压缩是借助) z 1 B }  X别的压缩工具来完成的
#   - gzip  bzip2
# 压缩  a.tar.gz 
$G - L tar 参数 压缩包的名字 压缩Z J @ z [的原材料(被压缩的文件)
    - 参数:
        - z: 使用gzip的方式进行压缩, 压缩包的后缀一般指定为 gz
        - j: 使用bzip2的方式进行压缩} | y v, 压缩包的后缀一般指定为 bz2
        - c: 创建压缩包
        - v: 压缩的时候显示log信息 -> 可以忽略
        - f: 指定压缩包b & % W r # ) i的名字
    - 压缩包的名字: 随便起名, 需要和& D xz/j参数有对应关系
        -z :  xxx.tar.gz
        -j:  xxx.tar.bz2
    - 被压缩的文件:
        - 目录, 压缩目录不需要添加额外参数
        - 非目录

解压缩:
$ tar 参数 要解压的压缩包的名字 [-C 解压目录]
    - 参数:
        - z: 使用gzip的方式进行k z L @ U s *解压6 ) ]缩, 压缩包的后缀一般指定为 gz
        - j: 使用bziY $ v t k W g A Zp2的方式进行解压缩, 压缩包的后缀一般指定为l @ 5 V i P bz2
        - x: 解压缩
        - v: 解压缩的时候显示log信息 -> 可以忽略
        - f$ - & ~ Y G f n: 指定压缩包的G T R ) s名字
    - 压缩包的名字:现有的压缩文件
        -U 2 K : ` 5 xxx.tar.Q W 3 E - 0 9 wgz
        - x& N nxx.tar.bz2
    - 解压目录:
        -S = { u $ 8 3 m 相对目录/绝对路径都可以

5.2 zip

# 这个工具有可能需要安装
sudo apt install zip
sudo apt install unzip

# 压缩
# 被压缩的文件中如果有目录需要额外加参数 -r
zip 压缩包的名字 被压缩的文件
    - 一般情况下压缩包的名字使用 zip 为后缀
    
# 解压缩
unzip 要解压的文件 [-d 解压目录]

5.3 rar

# 默认y t p h b这个工具l w ? [ z  ]是需要安装的
sudo apt install rar
## _ i L I 3 h 压缩
# 要压缩的文件, 如果有目录添加参数 -r
# 生成压缩包的名字, 建议后缀使用.rar
rar a 生成压缩包的名字 要压缩的文件

# 解压缩
rar x 要解压的压缩包名 [解压路径]
# 规律
命令 参数 生成的压缩包的名字 要压缩的文S Q e a l ]件 [-r]
    命令: 
        tar
            zcvf    xxx.tar.gz
            jcvf    xxx.tp } 4 ~ _ar.l # sbz2$  F e 6 ` M 0
        zip
            没参数     xxx.zip 如果要压缩目录需要 -r
        rar
            a   xxx.rar 如果要压缩目录需要 -r
# 压缩
命令 参数 要解压的文件 [参数 解压目录]
    命令:
        tar
            zxvf  xxx.tar.gz  [-C 解压目录]
            jxvf    xxxx.tar.bz2 [-C 解压目录]
        unzip
            没有参数  xx.zip [-d 解压目录]
        rar
            x   xx.rar [解压2 5 # : K | d目录]

6. 查找和检索

6.1 find

根据文件的属性, 查找对应的磁盘文件

  • 根据文件名查找

  • 根据文件类型d y x = - b 8 { ,查找

  • 根据文件大小查找

  • 根据目录的层级查找

# 语法:
find 搜索的路径 参数 属性值
# 根据文件名查找, 参数: -name
# 如果s @  $ . g搜索的文~ d s件名中有通配符, 需要使用双引号/单引号包含起J p m
    - *: 匹配0个或多个
    - ?: 匹配一个s i % 4 x
find / -name hello.F  etxt
# 根据文件类型搜索, 使用的参数: -type
# linua P = [x中7, W c 1 Y ) c种文件类型
    - 普通文件: f
    - 目录:   d
    - 软连接:  l
    - 字符设备: c
    - 块设备:  b
    - 管道:   p
    - 套接字:  s
    
# 搜索管道文件
find ./ -type} 8 C p
# 根据文件大小查找, 使用参数 -size
# +J K D - 9 l : 大于, -: 小于
# 单位: M-大小, k-小写
# 搜索范围 -size +5M -$ s ~ G 0 6size -6M  /   -size +5k -size -6k
find ./ -size +3k -size -100k

#P  7 | a $ M F 搜索大小 == 1M的文件
find ./ -sz 8 { ! q S Rize 1M
# 根据目录的层级查找, 这是一个附件属性, 需要和上边的三个属性中的某一个一起时候用
# 参数: o f 3 e y 7 3 k 
    -maxdepth: 最多搜索多少层
    -mindepth: 最少从第多少层开始向下搜索
    
find ./ -m$ 6 c P Hindepth 3 -name "*.txt"

6.2 grep

根据用户指定的关键字, 搜索文件内容, 得到对应p q v ! @的文件名

# 如果搜索的是目录需要-r参数f K b D |
# 如 w p @ 9 ] U _果想3  A知道关键字出现在文件的哪一行: -n
$j ^ ` G _ - V ~ grep [-r] "搜索的关键字" 搜索的目录/文件
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,请不要用于商业用途!
3. 如果你也有好源码或者教程,可以到审核区发布,分享有金币奖励和额外收入!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.qwznb.com",如遇到无法解压的请联系管理员!
古风游戏资源网 » 游戏入门教程—windows系统,linux系统基础

Leave a Reply


赞助 VIP 海量资源随便下
仅开放社交账号登录