【Linux篇】常用命令(笔记)

目录

一、认识Linux

1. Linux的组成

(1)文件系统(FILE SYSTEMS)

(2)内核

(3)用户接口(Shell)

(4)应用程序

2. Linux的目录结构

二、Linux常用命令

1.命令格式

2. 帮助命令

(1)--help 帮助信息

(2)man手册

3. 目录操作

(1)切换目录(pwd、cd)

(2)查看目录内容(ls)

4. 文件操作

(1)创建文件(touch)

(2)创建目录(mkdir)

(3)删除目录(rmdir)

(4)删除文件(rm)

(5)复制拷贝(cp)

(6)mv(move命令)

5. 文件查看

(1)查看文件内容(cat)

(2)查看文件内容(more)

(3)查看文件内容(less)

(4)查看文件内容(head)

(5)查看文件内容(tail)

6. 组合命令

(1)重定向输出 > 和 >>

(2)管道 “|”

(3)逻辑控制 &&

7. 查看所敲命令历史(history)

8. 打包和解包

(1)打 tar 包

(2)解 tar 包

9. gzip 格式压缩和解压缩

10. bzip2 格式压缩和解压缩

11. 时间日期

(1)显示当前时间(date)

(2)显示非当前时间(date)

(3)设置系统时间(date)

(4)查看日历(cal)

12. 搜索查找(find)

(1)按文件名查找

(2)按照文件特征查找

(3)使用混合查找方式查找文件

13. 过滤查找(grep)

14. 编辑器(vi)

(1)编辑模式(插入模式)

(2)底行模式

① 退出 vim:

② 撤销上次操作(一般模式下)

③ 设置行号(底行模式)

④ 替换文本

⑤ 查找 (一般模式)

         (3)命令模式(一般模式)

15. 用户及组管理

(1)添加新用户(useradd)

(2)设置用户密码(passwd)

(3)判断用户是否存在(id)

(4)切换用户(su)

16. 设置Linux普通用户具有root权限(即sudo的使用)

(1)修改配置文件

(2)使用 tom 用户登录,操作管理员命令

17. 查看创建了哪些用户

18. 用户组管理命令

(1) 新增组(groupadd)

(4) 查看创建了哪些组

(5)修改用户(usermod)

19. 文件权限

(1)修改文件权限(chmod)

(2)改变所有者(chown)

(3)改变所属组(chgrp)

20. 系统管理与进程管理

(1)磁盘信息

(2)查看系统中所有进程(ps)

参数说明:

(3)查看系统健康状态(top)

① 第一行信息为任务队列列信息

② 第二行为进程信息

③ 第三行为CPU信息

④ 第四行为物理内存信息

⑤ 第五行为交换分区(swap)信息

(4)终止进程(kill)

21. 显示网络统计信息(netstat)

22. 软件安装(rpm)

(1)rpm包 的 查询命令

(2)rpm包 的 卸载

(3)rpm包 的 安装

23. yum


一、认识Linux

1. Linux的组成

        操作系统(Operating System, OS)是软件子系统的一部分,是硬件基础上的 第一层软件,是硬件 与 其他软件的接口,就好似 吃饭的桌子,有了桌子 才能摆放碟子、碗、筷子、勺子等。它控制 其他程序运行,管理 系统资源,提供 最基本的计算功能,如管理及 配置内存、决定 系统资源供需的 优先次序等,同时还提供一些基本的 服务程序,例如:

(1)文件系统(FILE SYSTEMS)

        文件系统是 文件存放在 磁盘 等存储设备上的 组织方法,提供 计算机 存储信息的结构,信息存储 在文件中,文件 主要存储 在计算机的 内部硬盘里,在 目录的分层结构中 组织文件。文件系统为 操作系统提供了 组织管理数据的 方式。Linux 支持多种文件系统。

(2)内核

        是 系统的心脏,是 运行程序和 管理像磁盘和打印机等 硬件设备的 核心程序。

(3)用户接口(Shell)

        是系统的 用户界面,提供了 用户和 内核进行 交互操作的一种 接口。它 接收用户 输入的命令并把 它送入内核去 执行,是一个 命令解释器。但它 不仅是命令解释器,而且 还是高级编程语言,shell 编程。

(4)应用程序

        标准的 Linux 操作系统 都会 有一套应用 程序 例如 X-Window,Open Office等。

2. Linux的目录结构

    ① /boot:系统 引导文件、内核。一些和启动有关的文件。

    ② /bin: 核心的 二进制文件目录。用户的 基本命令。系统时所需的普通程序。

    ③ /dev:所有的设备文件。

    ④ /etc:存放着绝大部分的系统配置文件。

    ⑤ /home: 普通用户的 家目录。

    ⑥ /lib:系统库,共享文件 以及内核模块的 文件。存放启动时用到的库文件。

    ⑦ /root: root 用户(系统管理员)主目录。

    ⑧ /sbin: 超级 管理员可运行的 基本命令,包含 二进制文件。系统时所需的系统程序。

    ⑨ /tmp:临时 文件存放地。

    ⑩ /usr:共享的 只读数据。

    ⑪ /mnt:临时 文件系统挂载点。存放一些用于安装其它设备的子目录。

    ⑫ /media: 移动 设备挂载点。

    ⑬ /opt:第三方 应用程序的 安装位置。

    ⑭ /srv:系统运行的 服务用到的 数据。

    ⑮ /var:变量、函数等数据的 存储文件。有一些被系统改变过的数据。

    ⑯ /proc:用于 输出内核 与 进程信息相关的 虚拟文件系统。

    ⑰ /sys:用于 输出当前系统上硬件设备 相关信息的 虚拟文件系统。

二、Linux常用命令

1.命令格式

command [-options] [parameter]

注:

  • command:命令名,相应功能的英文单词或单词的缩写。
  • [-options]:选项,可用来对命令进行控制,也可以省略。
  • parameter:传给命令的参数,可以是零个、一个或者多个。

2. 帮助命令

(1)--help 帮助信息
command --help

        说明:显示 command 命令的帮助信息。

(2)man手册
man command

        说明:查询 command 命令的使用手册。man 时 manual的缩写,是Linux提供的一个手册,包含了绝大部分的命令、函数的详细使用说明。

3. 目录操作

(1)切换目录(pwd、cd)

(2)查看目录内容(ls)

4. 文件操作

(1)创建文件(touch)
touch 不存在的文件

        功能:创建一个空白文件。

例:
[root@localhost ~]# touch test.txt
补充:
touch 文件名1 文件2    功能:创建多个文件
(2)创建目录(mkdir)
mkdir [-p] 要创建的目录

例:
[root@localhost ~]# mkdir test

[root@localhost ~]# mkdir -p test/test1
(3)删除目录(rmdir)
rmdir 要删除的目录名
例:
[root@localhost ~]# mkdir test2
(4)删除文件(rm)
rm [-参数] 文件/目录

        功能:递归删除目录中所有内容。

例:递归删除目录中所有内容

[root@localhost ~]# rm -rf test2
(5)复制拷贝(cp)

        通过 cp 实现复制 将指定的文件 或 目录复制到 两一个文件或 目录中。

cp source dest

        功能:复制 source 文件到 dest。

cp -r sourceFolder targetFolder

        功能:递归复制整个文件夹。

例:
① 复制文件
[root@localhost ~]# cp test.txt test1.txt

② 递归复制整个文件夹
[root@localhost ~]# cp -r abc/tmp
(6)mv(move命令)

        通过 mv 命令可以用来 移动文件或目录,也可以给 文件或 目录重命名。

mv oldNameFile newNameFile

        功能:重命名。

mv /temp/movefile/targetFolder

        功能:递归移动文件。

例:
① 重命名
[root@localhost ~]# mv file1 file11 (把file1文件夹改名为file11)

② 移动文件
[root@localhost ~]# mv file1 test (把file11文件夹放到test文件夹内)

5. 文件查看

(1)查看文件内容(cat)
cat [选项] 要查看的文件

(2)查看文件内容(more)
more 要查看的文件

例:
[root@localhost ~]# more test1.java
(3)查看文件内容(less)
less 要查看的文件

例:
[root@localhost ~]# less test1.java
(4)查看文件内容(head)

(5)查看文件内容(tail)

例:
① 查看文件后10行内容
tail -10 文件名

② 动态追踪文件内容
tail -f 文件名

③ 动态追踪 最后10行内容 且退出
tail -10f 文件名 (ctrl + c退出)

6. 组合命令

(1)重定向输出 > 和 >>

例:
[root@localhost ~]# ifconfig >> 3.txt    说明将ifconfig指令内容追加到 3.txt中
(2)管道 “|”

(3)逻辑控制 &&

7. 查看所敲命令历史(history)

例:
[root@localhost ~]# history

8. 打包和解包

(1)打 tar 包
# 将 一系列文件 打包成 一个大文件
tar -cvf 打包名.tar 被打包的目录

tar -cvf 打包名.tar 被打包的文件 1 被打包的文件 2 被打包的文件 3

(2)解 tar 包
# 将一个打包后的分解成一系列小文件,分解位置为当前目录
tar -xvf 打包名.tar
# 将一个打包后的 分解成 一系列小文件,分解位置为指定目录
tar -xvf 打包名.tar -C 解包路径位置

9. gzip 格式压缩和解压缩

# 压缩文件
tar -zcvf 打包压缩文件名.tar.gz 被压缩的文件/目录
# 解压缩文件
tar -zxvf 打包文件.tar.gz
# 解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目录路径

10. bzip2 格式压缩和解压缩

# 压缩文件
tar -jcvf 打包压缩文件名.tar.bz2 被压缩的文件/目录
# 解压缩文件
tar -jxvf 打包文件.tar.bz2
# 解压缩到指定路径
tar -jxvf 打包文件.tar.bz2 -C 目录路径

11. 时间日期

(1)显示当前时间(date)
date 功能:显示当前时间)

date +%Y 功能:显示当前年年份)

date +%m 功能:显示当前月份)

date +%d 功能:显示当前是哪一天)

date +%Y%m%d … 功能:显示当前年年月日各种格式

date "+%Y-%m-%d %H:%M:%S” 功能:显示年月日时分秒
(2)显示非当前时间(date)
date -d '1 days ago' 功能:显示前一天日期

date -d yesterday +"%Y -%m-%d" (同上)

date -d next-day +"%Y-%m -%d" 功能:显示明天日期

date -d 'next monday' 功能:显示下周一时间
(3)设置系统时间(date)
date -s 字符串时间
例:
[root@localhost ~]# date -s "2024-09-10 20:52:18"
(4)查看日历(cal)
cal [选项] 

        功能:不加选项,显示本月日历。 

例:
[root@localhost ~]# cal

[root@localhost ~]# cal -9

[root@localhost ~]# cal 2024

12. 搜索查找(find)

基本格式:find path [options]
(1)按文件名查找
find /etc -name yum.conf    #在/etc目录下文件yum.conf

find /etc -name 'yum'    #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符 串‘yum’的文件

find . -name 'yum*'    #表示当前目录下查找文件名开头是字符串‘yum’的文件
(2)按照文件特征查找
find / -atime -2    # 查找在系统中最后48小时访问的文件 (Access Time,文件读取访问时间)

find / -empty    # 查找在系统中为空的文件或者文件夹

find / -group susan    # 查找在系统中属于group为susan的文件

find / -mtime -1    # 查找在系统中最后24小时里修改过的文件 (modify time)

find / -user susan    # 查找在系统中属于susan这个用户的文件

find / -size +10000c    # 查找出大于10000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)

find / -size -1000k    # 查找出小于1000KB的文件
(3)使用混合查找方式查找文件
        参数有: !,-and(-)-or(-o)
find /tmp -size +10c -and -mtime +2    # 在/tmp目录下查找大于10字节并在2天前修改的文件

find / -user root -or -user susan    # 在/目录下查找用户是root或者susan的文件文件

find /tmp ! -user susan    # 在/tmp目录中查找所有不属于susan用户的文件

13. 过滤查找(grep)

        根据文件的内容 进行查找,会对文件的 每一行按照给定的模式(patter)进行匹配查找。

        
基本格式:grep [options] 范围

例:
[root@localhost aaa]# grep -n 321 4.txt    # 说明:查询4.txt文件中的‘321’字段并显示对应行号。

14. 编辑器(vi)

(1)编辑模式(插入模式)
        对文本进行输入和修改。
命令模式按下:i、o、a进入编辑模式。

       i:光标不动
       o:另起一行
       a:光标到下一个字符

按ESC退出编辑模式,进入命令模式
(2)底行模式
        退出 vim 或者查找、替换功能。
        命令模式下,按 “:” 或者 “  / ” 进入底行模式,可以输入命令
① 退出 vim:
:q      未编辑时退出vim
:q!     编辑后,退出并且不保存
:wq     编辑后,退出且保存
:x      编译后保存
② 撤销上次操作(一般模式下)
u             撤销上一次操作(ctrl + z windows操作)
ctrl + r      恢复上一次被撤销的操作 (ctrl + y windows操作)
③ 设置行号(底行模式)
:set nu     显示行号
:set nonu   不显示行号
④ 替换文本
:s/old/new/      用 new 替换 old,替换当前行的第一个匹配
:s/old/new/g     用 new 替换 old,替换当前行的所有匹配
:%s/old/new/     用 new 替换 old,替换所有行的第一个匹配:%s/old/new/g 用new替换old,替换整个文件的所有匹配
⑤ 查找 (一般模式)
/文本     搜索指定文本,高亮显示,按n显示下一个,按N显示前一个
:整数     快捷跳转到指定行
(3)命令模式(一般模式)
        通过快捷命令操作数据,打开  vi 默认就是命令模式。
p(pause)    将之前dd或yy的数据粘贴到光标位置
yy          复制光标所在行
5yy         复制光标及下面共5行
dd          剪切当前行
5dd         剪切光标及下面共5行

15. 用户及组管理

(1)添加新用户(useradd)
useradd 用户名     

        功能:添加新用户。

例:
[root@localhost ~]# useradd hadoop
(2)设置用户密码(passwd)
passwd 用户名
        功能:设置用户密码。
例:
[root@localhost ~]# passwd hadoop
(3)判断用户是否存在(id)
id 用户名
例:
[root@localhost ~]# id hadoop
(4)切换用户(su)
su 用户名称      # 功能:切换用户,只能获得用户的执行行权限,不能获得环境变量。
su - 用户名称    # 功能:切换到用户并获得该用户的环境变量及执行权限。
例:
[root@localhost ~]# su hadoop
[root@localhost ~]# su - hadoop

(5)删除用户(userdel)

userdel 用户名       # 功能:删除用户但保存用户主目录。
userdel -r 用户名    # 功能:用户和用户主目录,都删除。

(6)查看登录用户信息(who)

whoami           功能:显示自身用户名称。
who am i         功能:显示登录用户的用户名。
who              功能:看当前有哪些用户登录到了了本台机器器上。

16. 设置Linux普通用户具有root权限(即sudo的使用)

        sudo 是 linux 系统管理指令,是 允许系统管理员 让普通用户 执行一些 或者全部 的root 命令的一个 工具,如 halt,reboot,su 等等。这样 不仅减少了 root 用户的 登录 和 管理时间,同样也提高了 安全性。
(1)修改配置文件 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行
vim /etc/sudoers
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tom ALL=(ALL) ALL
(2)使用 tom 用户登录,操作管理员命令
        本质:使用临时管理员权限
# 不切换root用户,也可以完成添加用户的功能
sudo useradd gaozi
sudo passwd gaozi

17. 查看创建了哪些用户

cat /etc/passwd

18. 用户组管理命令

(1) 新增组(groupadd)
groupadd 组名
例:
[root@localhost ~]# groupadd hadoop     说明:添加一个hadoop组。

(2)删除组(groupdel)

groupdel 组名
例:
[root@localhost ~]# groupdel hadoop      说明:删除hadoop组。

(3)修改组(groupmod)

groupmod -n 新组名 老组名
例:
[root@localhost hadoop] # groupmod -n hadoop1 hadoop      说明:修改hadoop组名称为hadoop1
(4) 查看创建了哪些组
cat /etc/group
(5)修改用户(usermod)
usermod -g 用户组 用户名
例:
[root@localhost ~]#usermod -g mygroup hadoop    # 将用户hadoop加入mygroup用户组

19. 文件权限

    权限分段,每一段代表不同的用户:
    属主权限:当前文件所属用户的权限,在Linux中每一个文件都有所属的用户
    属组权限:当前文件的用户所在组的其它成员的权限
    其它用户权限:跟文件所属用户不在同组的其它用户的权限

(1)修改文件权限(chmod)

例:
[root@localhost tmp]# touch /usr/tmp/1.txt
[root@localhost tmp]# ll
总用量 0
-rw-r--r--. 1 root root 0 7月 24 05:15 1.txt

[root@localhost tmp]# chmod 777 1.txt
[root@localhost tmp]# ll
总用量 0
-rwxrwxrwx. 1 root root 0 7月 24 05:15 1.txt

[root@localhost tmp]# chmod u=rwx,g=rx,o=rx 1.txt
[root@localhost tmp]# ll
总用量 0
-rwxr-xr-x. 1 root root 0 7月 24 05:15 1.txt
(2)改变所有者(chown)
chown 最终用户    # 功能:改变文件或者目录的所有者
例:
[root@localhost test]# chown hadoop 1.txt
(3)改变所属组(chgrp)
chgrp 最终用户组    功能:改变文件或者目录的所属组
​​​​​​​例:
[root@localhost test]# chgrp hadoop 1.txt
[root@localhost test]# ll
-rwxr-xr-x. 1 root hadoop 551 4月 23 13:02 test1.java

20. 系统管理与进程管理

(1)磁盘信息

(2)查看系统中所有进程(ps)
ps -aux    # 功能:查看系统中所有进程
参数说明:
        USER:该进程是由哪个用户产生的。
        PID:进程的ID号。
        %CPU:该进程占用 CPU资源的百分比,占用越高,进程越耗费资源。
        %MEM:该进程占用物理理内存的百分比,占用越高,进程越耗费资源。
        VSZ:该进程占用虚拟内存的大小,单位KB。
        RSS:该进程占用实际物理理内存的大小,单位KB。

        TTY:该进程是在哪个终端中运行行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。

        STAT:进程状态。常见的状态有:R:运行、S:睡眠、T:停止状态、s:包含子进程、+:位于后台。
        START:该进程的启动时间。
        TIME:该进程占用CPU的运算时间,注意不是系统时间。
        COMMAND:产生此进程的命令名。
(3)查看系统健康状态(top)
top [选项]

选项:

        操作选项(即在执行top 命令之后,与top命令进行交互):


 
① 第一行信息为任务队列列信息

② 第二行为进程信息

③ 第三行为CPU信息

④ 第四行为物理内存信息

⑤ 第五行为交换分区(swap)信息

(4)终止进程(kill)
kill -9 pid进程号    # 说明:选项 -9 表示强迫进程立即停止

21. 显示网络统计信息(netstat)

        netstat 命令用于显示与 IPTCPUDP 和 ICMP 协议相关的统计数据,一般用于检验本机各端口的网络 连接情况。

常用选项 :
netstat -e     本选项用于显示关于以太网的统计数据。
netstat -r     本选项可以显示关于路由表的信息,类似于后面所讲使用route print 命令时看到的信息。除了显示有效 路由外,还显示当前有效的连接。
netstat -a     本选项显示一个所有的有效连接信息列表,包括已建立的连接(ESTABLISHED ),也包括监听连接请求 (LISTENING )的那些连接,断开连接(CLOSE_WAIT )或者处于联机等待状态的(TIME_WAIT )等
netstat -n     显示所有已建立的有效连接。

组合用法:
netstat -anp 查看这个系统目前网络状况
例:
[root@linux121 hadoop-2.7.2]# netstat -anp | grep 22    # 说明:查看端口22的使用情况。

22. 软件安装(rpm)

(1)rpm包 的 查询命令

# 查询已安装的rpm列表
rpm -qa | grep XXX
rpm -qa | less
# 查询软件包信息
rpm -qi 软件全包名
# 查看一个rpm包中的文件安装到那里去了?
rpm -ql 软件全包名
# 查看指定文件归属于那个软件包
rpm -qf 文件的全路径
(2)rpm包 的 卸载
(3)rpm包 的 安装

23. yum

        Yum (全称为 Yellow dog Updater, Modified 本质上 也是一个 软件包管理器。 它基于 RPM 包管理,能够从指定的服务器 自动下载、 自动安装、 自动处理依赖性关系

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值