欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Linux,操作系统常见操作及命令

程序员文章站 2022-03-04 14:58:39
...
Linux操作系统

1. 操作系统作用

    向下封装硬件,向上提供接口

2. 目录结构

    1)和windows区别

        windows以盘符管理

        linux以文件夹(目录)管理

    2)相同点

        切换到某个目录下,都是以树状方式管理

    3) 常用目录结构

    /: 根目录,所有目录从这里开始

    /home: 专门放用户目录,/home/python, 用户目录也叫宿主目录, 桌面实际上是在/home/python/Desktop

            打开终端,默认进入的目录就是用户目录

    /bin: 只要名字带bin, 专门放命令,工具

3. 命令格式

    1) 命令格式

        ls -a -l -h     命令  选项或参数

    2)帮助文档

        a) ls --help   查看ls的使用手册

        b) man ls      通过回车,方向键移动页面,按q退出

    3)快捷键

        a) tab         补全

        b) clear    清屏, 快捷键, ctrl+l

        c)

        ping 127.0.0.1     

        按ctlr+c, 暂停操作

        d)

        ctrl+a: 光标移动到句首

        ctrl+e: 光标移动到句尾

4. 目录切换

    1)相对路径和绝对路径

        绝对路径:从根目录开始, /home,   找根目录下的home

        相对路径:相对于当前路径, home,  在当前路径下,找home

    2) 切换路径

    cd 路径

    cd home        切换到当前路径下的home文件夹,如果当前路径下,没有home, 报错

    cd home/       和上面等价,home是文件夹,后面加不加/, 都一样

    cd ./home      和上面等价

    cd /home       切换到根目录下的home文件夹

    cd /home/python/workspace

    cd         切换到用户目录

    cd ~    和上面等价

    cd ~/    和上面等价

    cd .    切换到当前路径

    cd ./    和上面等价

    cd ..    切换到上一级路径

    cd ../    和上面等价

    cd -    切换到上一次路径

    3)pwd  查看当前的工作路径,绝对路径

5. 查看目录信息

    1)ls

    查看目录信息,默认查看当前目录的文件(夹)信息,也可以指定路径

    ls /bin   查看根目录下bin,有哪些文件

    ls -a        all, 查看所有的文件,包含隐藏文件,linux隐藏文件以.开头

    ls -l       list, 以列表方式查看

    ls -l -h     显示大小时,根据人性化

    ls -hl      和上面等价

    ls -lah        

    ls 可以配合通配符使用

    ls *.txt     查看后缀为.txt的文件

    ls *.py        查看后缀为.py的文件

    ls *.*        查看中间带.的文件

    2) touch

    如果文件不存在,新建空文件,只能新建普通文件,不能是文件夹

    如果文件存在,把文件时间改为当前时间

    注意:新建或删除,要在用户目录下操作,不要在别的目录操作,往往都是没有权限

    touch 1.py 2.py 3.py a.txt b.txt c.txt

   ln :软链接:软链接不占⽤磁盘空间,源⽂件删除则软链接失效。 硬链接:硬链接只能链接普通⽂件,不能链接⽬录。

使⽤格式:ln : 源⽂件    链接⽂件     ln: -s    源⽂件    链接⽂件

    白色--普通文件    绿色--可执行文件  红色--压缩文件  蓝色--目录  青色--链接文件      黄色--设备文件  灰色--其他文件

    3)tree

    以树状方式查看目录结构,默认查看当前路径,也可以指定路径

    tree -L 2    只显示2层

    4)重定向

    改变显示的方向

    ls /bin     查看/bin目录下的文件信息,这些信息打印在屏幕上

    ls /bin > cmd.txt

    本来显示屏幕的内容,显示到一个文件中,如果文件不存在新建,存在覆盖保存

    ls /bin >> cmd.txt   追加保存

6. 软链接和硬链接

    1) 软链接

    ln -s 源文件 快捷方式(软链接)名字

       s, soft

        a) 软链接就是windows的快捷方式

        b)软链接指向源文件

        c) 打开软链接实际上是打开源文件

        d) 删除软链接不会影响到源文件

        e) 删除源文件,软链接就会失效

        f) 普通文件或文件夹都可以创建软链接

    2)硬链接

        a) 只有普通文件才能创建硬链接,文件夹不可以

        b) 硬链接原理和python变量引用是一样的

    ln 源文件 硬链接名字

    3)mkdir

    创建文件夹,只能是文件夹,不能是普通文件

    mkdir a            新建一个文件夹,名字叫a

    mkdir 1/2/3  -p 递归创建文件夹,需要-p选项

    4) rm

    rm 默认只能删除普通文件

    rm 文件夹 -r          如果删除文件夹,需要-r参数

    -i     有提示

    -f    没有提示,强制删除

ls --help 查看帮助文档

    cp:命令的功能是将给出的⽂件或⽬录复制到另⼀个⽂件或⽬录中

1. cp   copy, 复制

    cp 源文件     目标文件

    cp 源文件夹 目标文件夹 -r  拷贝文件夹需要-r

2. mv, move, 移动

    mv 源文件    或文件夹 目标文件或文件夹

    如果是同级目录,mv作用为改名

3. 显示文件内容

    a) gedit 1.txt

    b) subl 1.txt

    前2个图形界面显示

    c) cat 1.txt

           将⽂件内容⼀次性输出到终端。 一次性显示所有,内容太多,显示效果不好

       cat /usr/include/stdio.h

    d) more或者less 1.txt

        命令将⽂件内容分⻚显示到终端。分页显示,按回车移动分页,按q退出

4. find : 在指定的路径下找某个文件命令功能⾮常强⼤,通常⽤来在特定的⽬录下搜索符合条件的⽂件, find ./ -name "mike.txt"

    在当前路径下,找名字为"mike.txt"的所有文件

    find ./ -name "*.txt"

    在当前路径下,找后缀为".txt"的所有文件

5. grep:命令是⼀种强⼤的⽂本搜索⼯具,grep允许对⽂本⽂件进⾏模式查找。如果找到匹配 模式,grep打印包含模式的所有⾏。在一个文件内容中查关键信息,过滤

    grep "hello" mike.txt

    在mike.txt文件中,找包含"hello"关键字的内容

    -n:    显示行号

    -v:    取反

    -i:    忽略大小写

6. 管道 |

    左边放内容,右边取内容

    ls /bin

    原来的内容显示在终端,放在终端

    ls /bin | grep "echo"

    原来放终端的内容,放在管道的一端,右边取内容,grep 过滤取, 包含"echo"关键字内容

7. 压缩包管理

    1) .tar.gz

    a) 压缩

    tar -czvf xxx.tar.gz 需要压缩的文件或文件夹

        -可有可无

        c: 创建压缩包的意思,必须

        z: 调用gzip工具进行压缩

        v: 进度

        f: 一定是放最后,前3个选项顺序无所谓, f后面跟着的是压缩包的名字

    tar -czvf /home/python/xxx.tar.gz 需要压缩的文件或文件夹

    b) 解压

    tar -xvf xxx.tar.gz

        x: 解压

    默认将xxx.tar.gz解压到当前目录

    tar -xvf xxx.tar.gz -C(大写) 指定的目录

    2) .tar.bz2

    a) 压缩

    tar -cjvf xxx.tar.bz2 需要压缩的文件或文件夹

        -可有可无

        c: 创建压缩包的意思,必须

        j: 调用bzip2工具进行压缩

        v: 进度

        f: 一定是放最后,前3个选项顺序无所谓, f后面跟着的是压缩包的名字

    tar -cjvf /home/python/xxx.tar.bz2 需要压缩的文件或文件夹

    b) 解压

    tar -xvf xxx.tar.bz2

        x: 解压

    默认将xxx.tar.bz2解压到当前目录

    tar -xvf xxx.tar.bz2 -C(大写) 指定的目录

    3) .zip

    a)压缩

    zip -r xxx.zip 需要压缩的文件或文件夹

    -r: 压缩需要的参数,后面跟着的是压缩包名字

    b) 解压

    unzip xxx.zip 默认解压到当前路径

    unzip xxx.zip -d 指定的路径

8. 文件权限

-rw-rw-r-- 1 python python 0 5月  10 16:38 1.txt

rw-rw-r--

每3个字符为一组,有3组,有3组身份

第一组:文件所有者(user),谁创建的文件,谁就是所有者

        朋友圈发状态,仅可以自己观看

第二组:用户组, group

        朋友圈发状态, 指定的朋友可以看,这些朋友成为一组,QQ群

第三组:其它用户, other

        朋友圈发状态,陌生人可以看10个状态

python python

第一个:用户名字

第二个:用户组名字

r: 只读

w: 只写

x: 可执行

-: 无

字母法:

    chmod u+x 1.txt

    +: 增加一个权限

    -:减去一个权限

    =:只有这个权限

数字法:

r:   4

w:   2

x:   1

7:   rwx

6:   rw-

5:   r-x

4:   r--

3:   -wx

2:   -w-

1:   --x

0:   ---

chmod 764 1.tx

    rwxrw-r--

chmod 777 1.txt

9. vi 核心操作

    a) 新建或打开文件

    vi/vim a.txt  

    文件不存在新建,文件存在打开

    b) 编辑文件

    按i, 切换编辑模式,才能编辑

    c) 保存文件

    Esc, 再写:wq

exit : 如果是图形界⾯,退出当前终端; 如果是使⽤ssh远程登录,退出登陆账户; 如果是切换后的登陆⽤户,退出则返回上⼀个登陆账号.