Linux基础语法

文件与目录操作

  • pwd (print working directory): 显示当前工作目录的完整路径

image-20251204224821830

  • ls(list):列出当前目录下的文件和子目录
    • ls

    image-20251204224619687

    • ls -l 按照长格式(long format)显示文件信息

    image-20251204224750703

    • ls -a显示所以文件,包括隐藏文件(即以 . 开头的文件)

    image-20251204225136750

    • ls -h以人类可读形式显示文件的大小(如K、M、G)

    image-20251204230014565

    • 组合形式

    image-20251204230242483

  • 创建一个新目录(文件夹)
    • 创建单个目录(文件夹)
      mkdir [目录名]
    • 创建多个目录(文件夹)
      mkdir web test
    • 创建多级目录 [p:parents 父级目录 ] -p表示创建指定目录,并自动创建其中所需的所有缺少的父级目录
      mkdir -p web/test
  • cd(chang directory):切换目录

    cd [目录名](进入到此文件夹中)
    cd .. 回到上一层目录
    cd ~ 直接回到用户的主目录
    cd /指定路径 eg. cd /home(回到home文件夹)

  • rm 删除文件或者目录
    • 删除文件

    eg. rm test.txt

    • 删除文件夹(递归删除目录) 加 -r

    eg. rm -r test_dir

    • 强制删除(即以管理员身份运行,无需确认) 加 -f

    eg. rm -f test.txt

  • mv (移动或者重命名文件)
    • 移动 (mv [文件] [/new/location/])

    eg.mv test.txt /home/ly/

    • 重命名 (mv oldname.txt newname.txt)

    eg. mv test.txt aaa.txt

  • touch创建新文件
    • touch 文件名.txt eg.touch a.txt(创建当前文件夹下的文件)
    • 若想在指定文件夹目录下创建文件
      touch 文件夹/文件名.txt or touch ./文件夹/文件名.txt
      eg. touch dd/bb.txt or touch .dd/bb.txt
    • 或者更复杂直接“从头到尾打”
      eg. touch /home/dewey/kk.txt

文件内容查看并编辑

  • 用cat 来获取文件内容(适合短文件)

cat [文件]

eg. cat file.txt

image-20251204234055477

  • tac 反向显示文件内容

tac[文件]

eg. tac file.txt

image-20251204234111819

  • more 分页显示文件内容(适用于内容较大or长)
    • 空格键 翻页
    • Enter逐行滚动
    • q退出

more [文件]

eg. more file.txt

  • less 分页显示文件内容(支持向前翻页)
    • 空格键翻页
    • 上/下箭头键滚动
    • q退出

less [文件]

eg. less file.txt

  • head 显示文件开头部分内容
    head -n 文件(一下两种方法都可 即 -n (行数) or - 行数

eg. head -n 10 file.txt (显示文件前10行的内容)

eg. head -5 file.txt (显示文件前5行的内容)

  • tail 显示文件结尾部分的内容(即文件最后几行的内容)

用法与head一样 但tail可实时显示文件新增内容

tail -f file.txt

  • nano 简单易用的文本编辑器

nano 文件

eg nano file.txt

Ctrl + 0:保存文件

Ctrl +X:退出编辑器

  • vim 功能强大的文本编辑器(适合高级用户)

vim 文件

eg. vim file.txt

基本操作:

1.进入插入模式:按

2.保存文件:先按 Esc ,输入 :w

3.退出编辑器:先按 Esc ,输入 :q

文件权限管理

Linux文件权限分为 读(r) 写(w) 执行(x)分别对应所有者(user)、所属组(group)、其他用户(other)

其中 r w x用数字表达法可分别表示为4 2 1

image-20251206223038745

其中常用表达有

image-20251206223138206

  • chmod 修改文件权限

(用于更改文件或者目录的权限 )

chmod 权限 文件

权限表示法

1.数字表示法:如755

2.符号表示法:如 u+x

例:设置文件的权限为755(即设置为 rwxr-xr-x)

image-20251206223701263

  • chown 修改文件所有者

    chown [用户:组] [文件/目录]

    eg. chown root:admin file.txt(将文件所有者改为root,所属组改为admin)

  • chgrp 修改文件所属组

用于更改文件/目录的组

chgrp 组 文件

eg. chgrp staff file.txt(将文件的组改为staff)

系统管理

  • ps 显示当前系统的进程列表

其中 ps aux 显示系统所有进程( a所有用户 u详细进程 x后台进程)

  • top 实时显示系统资源的使用情况(包括CPU、内存等)

​ 按q退出

  • kill 终止进程

kill [选项] 进程号

用来终止指定进程

eg. kill 12345

强制终止进程(加上 -9选项强制终止)

eg. kill -9 12345

  • df 显示磁盘空间使用情况

df [选项] (用来显示文件系统的磁盘空间使用情况)

以人类可读格式显示

1
df -h
  • du 显示指定目录/文件的磁盘使用情况

du [选项] [文件]

常用选项:

1
2
du -h    ///以人类可读格式显示
du -s ///显示总计
  • free 显示内存使用情况

    free [选项]

    常用选项:

    1
    free -m   ///以MB为单位显示

网络管理

  • ping -测试网络连通性

ping命令用于测试与目标主机的网络连通性

1
2
3
ping [选项] 目标地址

ping google.com ///例子

e458131ff8d17c23bbebd9b9256f5990

  • ifconfig -配置网络接口(旧版工具,已经被 ip替代)

ifconfig命令用于显示和配置网络接口

1
ifconfig [接口]
  • ip -显示或者配置网络接口(是 ifconfig的替代工具)

用法:

1
2
ip addr
ip link ser dev 接口名 up/down

示例

显示所有网络接口和地址

1
ip addr

c76084a4cc5a559c1b6c0648a72ef585

启用网络接口

1
ip link set dev eth0 up

禁用网络接口

1
ip link set dev eth0 down

b440f76c8c1837388b3802fb27de3f8a

  • netstat -显示网络连接、路由表、接口状态等)

netstat用于显示网络连接、路由表、接口状态等信息

1
netstat -an   ///显示所有连接
  • ssh -远程登录

ssh用于通过SSH协议远程登录到另一台机器

用法:
ssh 用户名@远程主机

1
ssh user@remotehost  ///示例
  • 在控制台输入

    echo “内容”

  • 在文件里

    echo “”>文件(>的输入 可一个> 或者两个>>)
    eg.echo “kkkkkkkk”>a.txt(把这内容到a文件夹中)

  • 如果我对一个文件的输入不在一次中打完 后续想要新增内容该怎么办

    if echo “kkkkkkkhhhhh” 则会把那个之前的文件内容覆盖掉
    这时就得用两个>>
    eg. echo “kkkkkhhhh”>>a.txt

    此时输出就有两行内容 (原来之前输入的内容就不会被覆盖)