Linux常用命令

linux目录结构:

  bin:存储普通命令

  sbin:存储超级命令

  home:存储普通用户

  root:存储超级用户

  /usr/local:下存储数据或软件

  tmp:临时目录 迎来存放临时数据

常用命令:

        ifconfig:查看网络
	service network restart:重启网络
	hostname:查看主机名
	hostnamectl set-hostname 主机名:永久修改主机名
	systemctl status firewalld.service:查看防火墙状态
	systemctl stop firewalld.service:关闭防火墙状态(重启后自动打开)
	systemctl disable firewalld.service:关闭防火墙开机自启        

man命令帮组命令查询当前命令的使用方式(打开当前命令的帮组手册)

   格式:  man 命令 

例:man cd

 

cd命令:切换目录

  格式:cd 目录名称(单极目录或多级目录(目录全路径或当前目录下开始的全路径))

  注意:

    / :linux根目录

    ~ :当前用户的家目录

    . :当前命令

    .. :上一级目录

    tab :一次补全 两次搜索

 

 

pwd 列出当前目录路径

stat 文件名 查看文件信息

ls:查看

  格式:ls [选项] [文件名]

  选项:

    -l:查看详细信息 可以简写为ll

    -a:查看所有

    -la:查看所有详细信息

    -help 查看ls用法

mkdir:创建目录

  格式:

    mkdir [选项] [目录名称....]

  选项:

  -p:迭代创建

 

rmdir:删除目录

  格式:

    mkdir [选项] [目录名称....]

  选项:

    -p:迭代删除

  注意:

    只能删除空目录

    多级目录只能删除最后一个

touch:创建空白文件

  格式:

    touch 文件名

  注意:

    只能创建空白文件

    如果文件已存在,不创建

  

rm:删除

  格式:

    rm [选项] [文件或目录]

  选项:

    -f:跳过提示信息

    -r:强制删除

    -rf:跳过提示信息强制删除

  注意:

    使用-rf注意注意注意再注意,特别是rm -rf /* 代表的是删除整个跟目录文件

 

vim:文本编辑器

  格式:

    vim 文件名

  注意:

    文件存在直接打开

    文件不存在也直接打开,保存就是创建 不保存就是不创建

 

  如何进入编辑模式:

    i:在当前光标,进入插入模式

    o:下一行进入插入模式

  如何保存和退出

    :q :退出

    :w :保存

    :wq :保存并退出

    :q! :强制退出 不保存

    :w! :强制保存

    :wq!   :强制保存并退出

  注意:

    vim因为意外终止,会产生交换文件(隐藏的),和源文件在同一级

   如何进行阅读模式行首行尾,开头末尾切换

    行首:home/0

    行尾:end/$

    开头:gg

    结尾:G

 

cp:复制

  格式:

    cp [选项] [源文件或目录路径] [新文件或目录路径]

  选项:

    -r:复制目录

  注意:

    复制过程中可以对名称做修改没有特殊需求不要修改

 

ssh免密设置

 

 

 

远程复制

scp命令用于在网络中不同主机之间复制文件。scp是有Security的文 件copy,基于ssh登录。

如果没有配置免key登陆,需要输入主机密码。

 

常见用法

提示:显示进度在scp后添加-v;复制目录在scp后添加-r

从本地复制到远程

  scp /home/test/*.sh root@172.19.2.75:/home/root

 

 

 

 

从远程复制到本地

  scp root@/172.19.2.75:/home/root/*.txt /home/test

 

 

 

从远程到远程

   scp root@192.168.21.1:/root/test/*.sh root@192.168.31.1:/root/test

 

 

 

 

mv:剪切 移动

  格式:

    mv [选项] [源文件或目录路径] [新文件或目录路径]

  注意:

    剪切过程中可以对名称做修改,没有特殊需求不要修改

用户和用户组:

  用户在/etc/passwd中

  用户组在/etc/group/中

  注意: 

    在创建用户时,系统默认生成一个用户组(组名和用户名一致)

  useradd:添加用户

    格式:

      useradd 用户名

  passwd:修改密码

    格式:

      passwd 用户名

    注意:输入密码时,密码默认不显示

  su:切换用户

    格式:

      su 用户

    注意:root切换普通用户时,不需要输入密码。其他用户相互切换都需要密码

  userdel:删除用户

    格式:

      userdel [选项] 用户名

    选项:

      -f:删除登录用户

      -r:删除用户和用户相关文件和目录

      -rf:删除登录用户和登录用户相关文件和目录

    注意:用户主目录在/home,通信文件在/var/spool/mail/

    使用-f,用户相关文件和目录不会进行删除

 

 

 查看用户时(vim /etc/passwd):cy:x:1000:1000:cy:/home/cy:/bin/bash

  cy:用户名

  x:加密的密码

  1000:用户编号

  1000:组编号

  cy:用户全名称

  /home/cy:所在位置

  /bin/bash:可执行命令

  groupadd:创建组(普通组,由系统默认生成的叫做主组)

    格式:

      groupadd 组名

    注意:

    创建普通组不会生成用户

  groupdel:删除组(普通组,不能删除主组)

    格式:

      groupdel 组名

    注意:

    不能删除主组,主组随着用户的消失而消失

    区分:主组是创建用户时系统默认生成的,依赖于用户的存在而存在

       手动创建的普通组用于管理多个普通用户

 

 gpasswd:管理用户和组

    格式:

      gpasswd [选项] 用户 组

    选项:

      -a:添加

      -d:删除

    注意:组默认是没有任何用户的

    添加一个用户到组的时候,可以添加到普通组,别的主组和本身的主组

    如果是普通组,无论组下是否有用户都可以直接删除

    如果是主组并且主组下面有用户,删除用户时主组不会删除(主组变成普通组)

删除前:

 

 删除后:(删除user1用户,user主组变成普通组,在可以直接删除user普通组)

权限:

文件的类型:

1、- 普通文件

2、d 目录

3、l 软链接

4、c 字符设备【键盘,鼠标】

5、块文件,硬盘

r:读   4

w:写    2

x:执行  1

 

u:当前用户

g:当前组

o:其他

a:所有

 

权限分配

  chmod:修改权限

    格式1:(使用相加减表达权限)

      chmod [选项] [权限修改] [文件]

    格式2:(使用数字表达权限)

      chmod [选项] [权限修改] [文件]

    4:读

    2:写

    1:执行

    7:全部

  注意:如果只给一个数字表示修改o,两个表示修改go

    选项:

    -R:迭代修改

  注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组

  如果不存在就显示编号,存在显示名称

 

 

 

 

 

chgrp:修改用户组

  格式:

    chgrp [选项] [组名] [文件或目录]

  选项:

    -R:表达迭代修改

  注意:文件或目录的所有用户或所有组,都是以编号来查询所有用户或所有组

  如果不存在就显示编号,存在显示名称

 

 

chown:修改所属用户

  格式:

    chown [选项] [组名] [文件或目录]

  选项:

    -R:表达迭代修改

 

 

 

 

 

 

 

 

 

 

 

 创建组:

 

 

 创建用户并且移动到所在组

 

 

 jack创建文件,修改权限

 

 

 修改成其他组可读,本组可以读写

 

 

 xh投靠警察

 

 

 jack设置检查组权限至少有个可执行

 

 

 xh进入jack修改文件

 

 

 

sudo:越权执行

  格式:

    sudo 命令

  注意:sudo实际上去借root权限执行命令(root对普通用户分配了权限)

    sudo -l:查看当前权限

 

 

 

 

visudo:修改配置文件进行权限分配(文件所在位置/etc/sudoers)

  例如:普通用户拥有root所有权限

    用户名 ALL=(ALL) ALL

    用户名 ALL=(root) ALL

  例如:普通用户只能执行一个命令

    用户名 ALL=(root)/bin/rm

可以同过vim /etc/sudoers修改权限分配

 

 

 

 

 

 查看命令:

查找:find

  格式:

    find 开始查找路径 [选项] [条件]

  选项:

    -name  按名称

    *表示匹配所有

    ?表示匹配一个

 

 

 

  例如:从/开始查找后缀为.txt

    find / -name "*.txt"

        -type 按类型

    d:表示目录

    f:表示文件

  例如:从/开始查找文件

    find / -type f

       -size  文件大小

    ll --block-size=单位

    例如:大小以k为单位进行显示

    ll --block-size=k

  注意:条件需要给上单位

    +表示大于

    -表示小于

    不给就是等于

  例如:从/开始查找文件大小大于2k

    find / -size +2k

 

查看文件:cat 查看文件中的所有内容

  格式: cat [选项] 文件的全路径或文件名称

  选项

    -n:加行号进行显示

more 分页查看(只

能加载一部分)

  格式:more 文件的全路径或文件名称

  操作

    回车:显示下一行

    s或者空格:显示下一页

    q:直接退出

less 分页查看(加载完毕,只显示一部分)

  格式:

    less 文件的全路径或文件名称

  注意:可以在查看文件下,最后一行输入行号,向下显示多少行

    :q 退出

head 查看文件头部

  格式

    head [选项] 文件的全路径或文件名称

  选项

    -数字:从头开始显示多少行

    默认显示10行

tail 查看文件尾部(管道,能实时检测输入信息 “)

  格式

    tail [选项] 文件的全路径或文件名称

  选项

    -数字:从尾开始显示多少行

    默认显示10行

实时监测:

 

 

 

 

 

 

 

 

 

|:管道,把前面一部分的内容交给后面去处理

  例如:

  cat -n /etc/profile | head

 

grep:筛选

  格式:

    grep 筛选条件

 

>>:追加,把命令1的结果写入到命令2

  格式:

    命令1 >> 命令2

  例如:cat profile >> test.txt

>:覆盖

  格式:

    命令1 > 命令2

  例如:cat profile > test.txt

 

软件包管理

rpm:查看 管理 删除软件

  格式:

    rpm [选项] [软件名称] [后缀]

  选项:

    -q:查询

    -a:所有

    -qa:查询所有

    -e:删除

  后缀:

    --nodeps:无视依赖关系

  注意:直接-e时,如果有依赖关系,不能直接删除

  需要加上--nodeps后缀

tar:解压和压缩

  格式:

    tar [选项] [包] [路径]

  选项:

    -c:压缩

    -x:解压

    -v:显示

    -z:gzip

    -j:bzip

    -f:使用当前名称

    -t:查看

  常用:

    -zxvf

     -cvf

解压:

  -C:指定解压路径

  例如:解压jdk

    tar -zxvf jdk.tar.gz -C /usr/local/soft/

打包:

   例如:把jdk从新打包

tar -cvf 包的所在位置加包的名称 所要打包的内容

停止命令

cyrl+c和ctrl+z的区别:

ctrl+z:直接杀死当前执行的东西

ctrl+c:只是不显示了,后台直到运行完

 

配置文件完成后刷新文件:source /etc/profile

 

posted @ 2021-11-02 15:00  艺术派大星  阅读(51)  评论(0)    收藏  举报
levels of contents