目录
文件和目录操作
文本处理命令
系统管理命令
用户和权限管理
权限管理
软件安装与管理
网络配置
Linux 是一种广泛使用的开源操作系统,对于初学者而言,掌握一些基础知识点十分关键。以下为你详细介绍:
ls -a
就能看到当前目录下以.
开头的隐藏文件。ls -l
会展示这些内容。ls -lh
后文件大小会以 K、M、G 等单位展示。#!/bin/bash
# 列出当前目录下所有文件和目录
ls -a
# 以长格式列出当前目录下文件和目录
ls -l
# 以长格式并以人类可读方式列出当前目录下文件和目录
ls -lh
cd 目录路径
可以切换到指定目录,如cd /home
就能进入 home 目录。cd..
是返回上一级目录 。cd ~
则是进入当前用户的家目录。#!/bin/bash
# 切换到 /etc 目录
cd /etc
# 返回上一级目录
cd..
# 进入当前用户家目录
cd ~
mkdir -p dir1/dir2/dir3
可一次性创建多级目录。#!/bin/bash
# 在当前目录下创建一个名为 new_dir 的目录
mkdir new_dir
# 在当前目录下创建多级目录 dir1/dir2/dir3
mkdir -p dir1/dir2/dir3
rmdir new_dir
可以删除当前目录下名为 new_dir 的空目录。
#!/bin/bash
# 删除当前目录下名为 new_dir 的空目录
rmdir new_dir
cp -r dir1 dir2
可将 dir1 目录及其所有内容复制到 dir2。#!/bin/bash
# 复制文件 file1.txt 为 file2.txt
cp file1.txt file2.txt
# 复制目录 dir1 及其所有内容到 dir2
cp -r dir1 dir2
mv file.txt /new_path/
可将文件 file.txt 移动到 /new_path/ 目录下。mv file.txt new_file.txt
则是将文件 file.txt 重命名为 new_file.txt 。#!/bin/bash
# 移动文件 file.txt 到 /new_path/ 目录下
mv file.txt /new_path/
# 将文件 file.txt 重命名为 new_file.txt
mv file.txt new_file.txt
cat 文件路径
可查看文件内容,如cat file.txt
查看 file.txt 文件内容。cat 文件1 文件2 > 合并文件
可将文件 1 和文件 2 的内容合并到合并文件中,例如cat file1.txt file2.txt > combined.txt
。#!/bin/bash
# 查看文件 file.txt 的内容
cat file.txt
# 将 file1.txt 和 file2.txt 的内容合并到 combined.txt 文件中
cat file1.txt file2.txt > combined.txt
grep -i "linux" file.txt
可在 file.txt 中不区分大小写搜索 “linux”。grep -r "python" /home/user
可在 /home/user 目录及其子目录下递归搜索 “python”。#!/bin/bash
# 在文件 file.txt 中搜索包含 "hello" 的行
grep "hello" file.txt
# 在文件 file.txt 中不区分大小写搜索包含 "linux" 的行
grep -i "linux" file.txt
# 在 /home/user 目录及其子目录下递归搜索包含 "python" 的文件和行
grep -r "python" /home/user
sed's/旧字符串/新字符串/g' 文件路径
能将文件中的旧字符串替换为新字符串,g
表示全局替换,如sed's/old/new/g' file.txt
可将 file.txt 中的 “old” 替换为 “new”。sed '行号d' 文件路径
可以删除文件中指定行号的行,比如sed '1d' file.txt
可删除 file.txt 的第一行。#!/bin/bash
# 将文件 file.txt 中的 "old" 替换为 "new"
sed's/old/new/g' file.txt
# 删除文件 file.txt 的第一行
sed '1d' file.txt
awk '{print $列号}' 文件路径
能打印文件中指定列的内容,如awk '{print $1}' file.txt
可打印 file.txt 中每一行的第一列内容。awk -F分隔符 '{print $列号1,$列号2}' 文件路径
是以指定分隔符分割文件内容,并打印指定列的内容,比如awk -F: '{print $1,$3}' /etc/passwd
是以冒号为分隔符,打印 /etc/passwd 文件中的用户名和用户 ID。#!/bin/bash
# 打印文件 file.txt 中每一行的第一列内容
awk '{print $1}' file.txt
# 以冒号为分隔符,打印 /etc/passwd 文件中的用户名和用户ID
awk -F: '{print $1,$3}' /etc/passwd
ps -aux
就能查看。#!/bin/bash
# 查看所有用户的所有进程信息
ps -aux
# 查看与 apache 相关的进程信息
ps -aux | grep apache
M
键会按照内存使用量对进程进行排序 。P
键会按照 CPU 使用率对进程进行排序。top
命令即可启动。df -h
就能看到如 K、M、G 等单位表示的磁盘空间信息。df -T
可查看。#!/bin/bash
# 以人类可读方式查看磁盘空间使用情况
df -h
# 查看磁盘分区的文件系统类型
df -T
du -sh /var
可查看 /var 目录的总大小。-d 1
表示只查看一级子目录,du -d 1 -h /var
可查看 /var 目录下一级子目录的磁盘占用情况。#!/bin/bash
# 查看 /var 目录的总大小
du -sh /var
# 查看 /var 目录下一级子目录的磁盘占用情况
du -d 1 -h /var
useradd
命令添加新用户,useradd testuser
可添加名为 testuser 的用户。#!/bin/bash
# 添加名为 testuser 的用户
useradd testuser
passwd
命令为用户设置密码,passwd testuser
可为 testuser 用户设置密码。#!/bin/bash
# 为 testuser 用户设置密码
passwd testuser
userdel
命令删除用户,userdel testuser
可删除名为 testuser 的用户。#!/bin/bash
# 删除名为 testuser 的用户
userdel testuser
权限管理
chmod
命令修改文件或目录的权限。
chmod 数字权限 文件/目录路径
是通过数字表示权限,如755
表示所有者有读写执行权限,所属组和其他用户有读和执行权限,chmod 755 file.txt
可将文件 file.txt 的权限设置为此。chmod u+rwx,g+rx,o+r 文件/目录路径
是使用字母表示权限修改,u
表示所有者,g
表示所属组,o
表示其他用户,+
表示添加权限,-
表示删除权限,chmod u+rwx,g+rx,o+r file.txt
可为文件 file.txt 的所有者添加读写执行权限,所属组添加读和执行权限,其他用户添加读权限。#!/bin/bash
# 将文件 file.txt 的权限设置为所有者有读写执行权限,所属组和其他用户有读和执行权限
chmod 755 file.txt
# 为文件 file.txt 的所有者添加读写执行权限,所属组添加读和执行权限,其他用户添加读权限
chmod u+rwx,g+rx,o+r file.txt
sudo apt update
命令更新软件包列表,获取最新的软件包信息。#!/bin/bash
# 更新软件包列表
sudo apt update
sudo apt install 软件包名
命令安装指定的软件包,sudo apt install firefox
可安装 firefox 浏览器。#!/bin/bash
# 安装 firefox 浏览器
sudo apt install firefox
sudo apt remove 软件包名
命令卸载指定的软件包,sudo apt remove firefox
可卸载 firefox 浏览器。#!/bin/bash
# 卸载 firefox 浏览器
sudo apt remove firefox
sudo yum update
命令更新系统中已安装的软件包。#!/bin/bash
# 更新软件包
sudo yum update
sudo yum install 软件包名
命令安装指定的软件包,sudo yum install httpd
可安装 httpd(Apache Web 服务器)。#!/bin/bash
# 安装 httpd(Apache Web服务器)
sudo yum install httpd
sudo yum erase 软件包名
命令卸载指定的软件包,sudo yum erase httpd
可卸载 httpd(Apache Web 服务器)。#!/bin/bash
# 卸载 httpd(Apache Web服务器)
sudo yum erase httpd
ifconfig
命令即可查看。ip addr
命令即可查看。/etc/sysconfig/network-scripts/ifcfg-eth0
文件(eth0
为网络接口名,可能因系统而异),修改相关配置参数来设置静态 IP 地址。DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.1.101
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
ONBOOT=yes
/etc/netplan/00-installer-config.yaml
文件,修改相关配置参数来设置静态 IP 地址。network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.102/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8]