15.1.2.linux常见操作用例

15.1.2.linux常见操作用例
15.1.2.1.系统设置
15.1.2.1.1.设置系统时间

1)查看当前时间:date

2)设定系统时间:sudo date -s "YYYY-MM-DD HH:MM:SS"

4)按增量设定系统时间:sudo date -s "+2 hours"

15.1.2.2.文件与目录操作
15.1.2.2.1.查看目录内容

1)ls -l # 详细列表(权限/大小/时间)

2)ls -a # 显示隐藏文件(如 .bashrc)

3)ls -lh # 人类可读的文件大小(如 KB/MB)

15.1.2.2.2.创建和删除目录

1)mkdir demo # 创建目录

2)touch file.txt # 创建空文件

3)rm file.txt # 删除文件

4)rm -r demo # 递归删除目录**(慎用!)**

15.1.2.2.3.文件复制、移动、命名

1)cp file.txt backup/ # 复制文件到目录

2)mv file.txt new_name.txt # 重命名

3)mv file.txt ~/Documents # 移动文件

15.1.2.2.4.查找文件

1)find /home -name "*.log" # 按名称查找

2)find /var -size +10M # 查找大于10MB的文件

15.1.2.2.5.分割文件

基本语法:split [options] [input_file] [prefix]

1)input_file:需要被分割的文件。如果不指定,split 会从标准输入读取数据。

2)prefix: 输出文件的前缀。分割后的文件会被命名为 prefixaa, prefixab, prefixac 等。

3)options常用选项:

-b SIZE: 按照指定的字节数来分割文件。例如,-b 10M 会将文件按 10MB 来分割。

-l NUM: 按照行数来分割文件。例如,-l 1000 会将文件每1000 行分割一次。

-d: 使用数字后缀而不是字母。

-a LENGTH: 设置输出文件名的后缀长度,默认是 2。

--additional-suffix=SFX: 为每个输出文件附加一个后缀,SFX 是要添加的后缀。

示例:

|----------------------------------------|
| split -b 10M largefile.txt prefix_ |

15.1.2.3.文件内容操作
15.1.2.3.1.查看文件内容

1)cat file.txt # 显示全部内容

2)head -n 5 file.txt # 显示前5行

3)tail -f log.log # 实时追踪日志更新

15.1.2.3.2.文本处理

1)grep "error" log.txt # 搜索包含"error"的行

2)sed 's/foo/bar/g' file.txt # 替换文本中的foo为bar

3)awk '{print $1}' data.txt # 提取第一列数据

15.1.2.3.3.压缩与解压

1)tar -czvf archive.tar.gz dir/ # 压缩目录

2)tar -xzvf archive.tar.gz # 解压

3)zip -r backup.zip dir/ # ZIP压缩

4)unzip backup.zip # ZIP解压

15.1.2.3.4.文件合并

在 Linux 中,合并文件的常用命令是 cat,它可以将多个文件的内容连接起来,并输出到标准输出或其他文件中。以下是常见的文件合并方法:

1**)使用 cat** 命令合并多个文件

假设有两个文件 file1.txt 和 file2.txt,想将它们合并为一个新的文件 merged.txt,可以使用以下命令:

cat file1.txt file2.txt > merged.txt

这个命令将 file1.txt 和 file2.txt 的内容按顺序合并,并将合并后的内容保存到 merged.txt 中。

2**)将文件内容追加到已有文件**

如果想将 file2.txt 的内容追加到 file1.txt 的末尾,可以使用 >>:

cat file2.txt >> file1.txt

3)合并多个文件并分页显示

如果想查看多个文件的合并内容并分页显示,可以结合 cat 和 less 命令:

cat file1.txt file2.txt | less

4)使用 find 和 cat 合并多个文件

如果需要合并符合某些条件的文件(例如,所有 .txt 文件),可以通过 find 命令与 cat 配合使用:

find . -name "*.txt" -exec cat {} + > merged.txt

这将会将当前目录及其子目录下所有 .txt 文件的内容合并到 merged.txt 中。

5**)合并并去重内容(去除重复行)**

如果想在合并文件时去除重复的行,可以使用 sort 和 uniq:

cat file1.txt file2.txt | sort | uniq > merged.txt

这样可以确保合并后的文件不包含重复行。

15.1.2.4.权限与用户管理
15.1.2.4.1.修改文件权限

1)chmod 755 script.sh # 设置权限为rwxr-xr-x

2)chown user:group file # 修改文件所有者

15.1.2.4.2.用户与组操作

1)sudo adduser new_user # 添加用户

2)sudo passwd new_user # 修改密码

3)sudo usermod -aG sudo new_user # 赋予sudo权限

4)groups username # 查看用户所属组

15.1.2.5.系统设置
15.1.2.5.1.查看进程

1)ps aux | grep nginx # 查找nginx进程

2)top # 动态查看资源占用

3)htop # 增强版top(需安装)

15.1.2.5.2.中止进程

1)kill -9 PID # 强制终止进程

2)pkill nginx # 按名称终止

15.1.2.5.3.后台运行

1)nohup ./script.sh & # 后台运行并忽略挂断

2)jobs # 查看后台任务

3)fg %1 # 将任务1切换到前台

15.1.2.6.网络操作
15.1.2.6.1.查看网络信息

1)ifconfig # 查看IP(旧版)

2)ip addr # 新版IP查看

3)ping google.com # 测试连通性

4)netstat -tulnp # 查看监听端口

15.1.2.6.2.远程连接

1)ssh user@192.168.1.100 # SSH远程登录

2)scp file.txt user@host:/path # 远程复制文件

15.1.2.6.3.防火墙管理

1)sudo ufw allow 22 # 开放SSH端口(Ubuntu)

2)sudo firewall-cmd --add-port=80/tcp --permanent # CentOS

3)sudo systemctl restart firewalld

15.1.2.7.包管理(依赖系统)
15.1.2.7.1.Debian/Ubuntu (APT)

1)sudo apt update # 更新软件列表

2)sudo apt install nginx # 安装软件

3)sudo apt remove nginx # 卸载

15.1.2.7.2.CentOS/RHEL (YUM/DNF)

1)sudo yum install httpd # 安装

2)sudo dnf remove httpd # 卸载(CentOS 8+)

15.1.2.7.3.Arch Linux (Pacman)

1)sudo pacman -Syu # 更新系统

2)sudo pacman -S vim # 安装

15.1.2.8.磁盘管理
15.1.2.8.1.查看磁盘空间

1)df -h # 查看磁盘使用情况

2)du -sh /var/log # 查看目录大小

15.1.2.8.1.2.挂载磁盘

1)sudo mount /dev/sdb1 /mnt/data # 挂载

2)sudo umount /mnt/data # 卸载

15.1.2.9.定时任务

crontab -e # 编辑定时任务

示例:每天凌晨备份

0 0 * * * /path/to/backup.sh

15.1.2.10.Shell快捷操作

1)!! # 重复上一条命令

2)!$ # 上一条命令的最后一个参数

3)Ctrl + R # 搜索历史命令

4)Ctrl + C # 终止当前命令

15.1.2.11.系统服务管理(Systemd)

1)sudo systemctl start nginx # 启动服务

2)sudo systemctl enable nginx # 开机自启

3)sudo journalctl -u nginx # 查看日志

4)shutdown -r now

#-r表示重启(reboot),now表示立即执行。这是标准的重启命令。

5)halt

该命令的作用是停止系统运行并关闭电源(相当于关机),不会触发重启。虽然某些系统可能通过配置关联到重启,但默认行为是关机。

6)reboot

直接调用系统重启功能,等同于shutdown -r now。

7)init 6

通过切换系统运行级别(runlevel)到6,表示重启。这是传统的SysV初始化系统的重启方式,在大多数Linux发行版中仍兼容。

15.1.2.12.查询历史命令

history | grep 关键字

相关推荐
攀小黑7 小时前
docker 容器内nacos(若依plus打包)连接另一台内网服务器显示数据库连接失败
服务器·数据库·docker
不会写代码的ys7 小时前
仿RabbitMQ实现消息队列(二)-安装
服务器·分布式·rabbitmq
YouEmbedded7 小时前
解码LVGL样式
linux·lvgl·lvgl样式
lifejump8 小时前
端口隔离技术的实验与验证(eNSP)
linux·服务器·网络
zzzsde8 小时前
【Linux】基础指令(4):基础指令&&热键&&shell运行原理
linux·运维·服务器
艾莉丝努力练剑8 小时前
【Git:基本操作】深度解析Git:从初始Git到熟悉基本操作
大数据·linux·c++·人工智能·git·gitee·指令
NiKo_W9 小时前
Linux TcpSocket编程
linux·服务器·网络·udp·socket·多线程·tcp
Eternal-Student9 小时前
【ubuntu】在Linux系统上安装Microsoft Edge浏览器
linux·ubuntu·microsoft
谅望者9 小时前
Linux文件查看命令完全指南:cat、less、head、tail、grep使用详解
linux·excel·less·shell·文件操作·命令行·系统运维