Linux基础命令详解

Linux基础命令详解

Linux 基础命令是学习和使用 Linux 系统的重要组成部分。掌握这些命令可以帮助你有效地管理文件、处理用户和进程,以及进行系统维护。以下是一些常见的 Linux 基础命令及其详解。

1. 文件和目录操作

1.1 ls- 列出目录内容
ls [options] [directory]
  • ls:列出当前目录下的所有文件和目录。
  • ls -l:以长格式显示文件信息,包括权限、所有者、大小和最后修改时间。
  • ls -a:显示所有文件,包括隐藏文件(以 . 开头的文件)。
  • ls -h:显示文件大小(例如 KB, MB)。
1.2 cd - 切换目录
cd [directory]
  • cd:切换到指定目录。
  • cd ..:返回到上一级目录。
  • cd /:切换到根目录。
  • cd ~cd:切换到当前用户的主目录。
1.3 pwd - 显示当前工作目录
pwd
  • pwd:打印当前工作目录的完整路径。
1.4 mkdir - 创建目录
mkdir [options] directory_name
  • mkdir new_dir:创建一个名为 new_dir 的目录。
  • mkdir -p /path/to/new_dir:创建路径中所有不存在的目录。
1.5 rmdir - 删除空目录
rmdir directory_name
  • rmdir empty_dir:删除名为 empty_dir 的空目录。
1.6 rm - 删除文件或目录
rm [options] file_name
  • rm file.txt:删除文件 file.txt
  • rm -r directory_name:递归删除目录及其内容。
  • rm -f file_name:强制删除文件而不提示。
1.7 cp - 复制文件或目录
cp [options] source destination
  • cp file1.txt file2.txt:复制文件 file1.txtfile2.txt
  • cp -r dir1 dir2:递归复制目录 dir1dir2
1.8 mv - 移动或重命名文件或目录
mv [options] source destination
  • mv file1.txt file2.txt:重命名 file1.txtfile2.txt
  • mv file.txt /new/location/:将 file.txt 移动到指定目录。
1.9 touch - 创建空文件或更新文件时间戳
touch file_name
  • touch newfile.txt:创建一个名为 newfile.txt 的空文件。
1.10 cat - 连接并显示文件内容
cat [options] file_name
  • cat file.txt:显示 file.txt 文件的内容。
  • cat file1.txt file2.txt > combined.txt:将两个文件的内容合并并输出到 combined.txt
1.11 moreless - 分页查看文件内容
more file_name
less file_name
  • more file.txt:分页显示 file.txt 文件的内容,从头开始。
  • less file.txt:与 more 类似,但可以前后翻页,支持更多导航功能。
1.12 headtail - 查看文件的开头或结尾部分
head [options] file_name
tail [options] file_name
  • head file.txt:显示 file.txt 的前 10 行内容。
  • tail file.txt:显示 file.txt 的后 10 行内容。
  • tail -f file.txt:实时追踪并显示 file.txt 的新增内容(常用于查看日志文件)。

2. 权限和所有权管理

2.1 chmod - 修改文件权限
chmod [options] mode file_name
  • chmod 755 script.sh:将 script.sh 的权限设置为 rwxr-xr-x
  • chmod u+x script.sh:为文件的所有者添加执行权限。
2.2 chown - 修改文件所有者和组
chown [options] owner[:group] file_name
  • chown root file.txt:将 file.txt 的所有者改为 root
  • chown root:staff file.txt:将 file.txt 的所有者改为 root,组改为 staff
2.3 umask - 设置默认文件创建权限
umask [options] [mask]
  • umask:显示当前的 umask 设置。
  • umask 022:将 umask 设置为 022,即新文件的默认权限为 755

3. 进程管理

3.1 ps - 显示当前运行的进程
ps [options]
  • ps:显示与当前终端相关的进程。
  • ps aux:显示系统中所有用户的所有进程。
  • ps -ef:以完整格式显示所有进程信息。
3.2 top - 实时显示系统资源使用情况
top
  • top:启动 top 命令,显示实时系统资源使用情况,包括 CPU、内存和各进程的使用情况。
3.3 kill - 终止进程
kill [options] PID
  • kill 1234:终止进程 ID 为 1234 的进程。
  • kill -9 1234:强制终止进程 ID 为 1234 的进程。
3.4 killall - 终止指定名称的所有进程
killall process_name
  • killall nginx:终止所有名为 nginx 的进程。
3.5 bgfg - 控制后台和前台进程
bg [job_spec]
fg [job_spec]
  • bg %1:将任务号为 1 的后台进程恢复为后台运行状态。
  • fg %1:将任务号为 1 的后台进程调回前台运行。

4. 用户管理

4.1 who - 显示当前登录的用户
who
  • who:显示当前登录的所有用户信息。
4.2 w - 显示当前登录用户及其活动
w
  • w:显示登录的用户及其正在执行的命令,CPU 和内存使用情况。
4.3 su - 切换用户身份
su [options] [user_name]
  • su:切换到 root 用户身份(需要输入 root 密码)。
  • su - username:切换到指定用户的身份。
4.4 sudo - 以超级用户权限执行命令
sudo command
  • sudo apt-get update:以超级用户权限更新软件包列表。
4.5 adduseruseradd - 添加新用户
adduser username
useradd username
  • adduser:创建新用户,并设置密码和用户目录。
  • useradd:创建新用户,但不自动设置密码或用户目录。
4.6 passwd - 修改用户密码
passwd [user_name]
  • passwd:修改当前用户的密码。
  • passwd username:修改指定用户的密码(需要超级用户权限)。

5. 网络管理

5.1 ping - 测试网络连通性
ping [options] destination
  • ping google.com:测试与 google.com 的连通性。
5.2 ifconfig - 显示或配置网络接口
ifconfig [interface]
  • ifconfig:显示所有网络

接口的配置。

  • ifconfig eth0:显示 eth0 接口的配置。
5.3 netstat - 显示网络连接和统计信息
netstat [options]
  • netstat -an:显示所有网络连接及其状态。
5.4 ssh - 通过 SSH 连接远程服务器
ssh [user_name@]hostname
  • ssh user@192.168.1.1:通过 SSH 连接到 192.168.1.1 上的用户 user
5.5 scp - 通过 SSH 进行文件复制
scp source_file [user_name@]host:destination_file
  • scp file.txt user@192.168.1.1:/home/user/:将 file.txt 复制到远程服务器上的 /home/user/ 目录。
5.6 curl - 命令行工具,用于从或向服务器传输数据
curl [options] URL
  • curl https://www.example.com:下载 example.com 的内容。

6. 系统管理

6.1 df - 显示文件系统的磁盘使用情况
df [options]
  • df -h:以人类可读的格式显示磁盘使用情况。
6.2 du - 显示目录或文件的磁盘使用情况
du [options] [file/dir]
  • du -h /home/user/:以人类可读的格式显示 /home/user/ 目录的磁盘使用情况。
6.3 free - 显示系统的内存使用情况
free [options]
  • free -h:以人类可读的格式显示内存使用情况。
6.4 uptime - 显示系统运行时间及负载
uptime
  • uptime:显示系统的当前时间、运行时间、当前登录用户数、系统负载。
6.5 dmesg - 显示系统启动信息
dmesg
  • dmesg:显示内核启动消息(通常与硬件相关)。
6.6 shutdown - 关闭系统
shutdown [options] time
  • shutdown -h now:立即关闭系统。
  • shutdown -r now:立即重启系统。
6.7 reboot - 重启系统
reboot
  • reboot:立即重启系统。

7. 文本处理

7.1 grep - 搜索文本内容
grep [options] pattern [file]
  • grep 'error' log.txt:在 log.txt 文件中搜索包含 “error” 的行。
  • grep -r 'error' /var/log/:递归搜索 /var/log/ 目录下的所有文件中包含 “error” 的行。
7.2 awk - 文本处理工具
awk 'pattern {action}' file
  • awk '{print $1}' file.txt:输出 file.txt 文件每行的第一个字段。
7.3 sed - 流编辑器,用于文本替换和编辑
sed 's/pattern/replacement/' file
  • sed 's/old/new/g' file.txt:将 file.txt 中所有 “old” 替换为 “new”。
7.4 sort - 排序文本文件
sort [options] file
  • sort file.txt:按字母顺序排序 file.txt 中的行。
  • sort -n file.txt:按数值排序 file.txt 中的行。
7.5 uniq - 删除文本文件中的重复行
uniq [options] file
  • uniq file.txt:删除 file.txt 中的重复行(要求相同的行必须连续)。
7.6 wc - 统计文件的字数、行数、字符数
wc [options] file
  • wc file.txt:显示 file.txt 的行数、单词数、字符数。
7.7 tr - 替换或删除字符
tr [options] set1 set2
  • tr 'a-z' 'A-Z' < file.txt:将 file.txt 中的小写字母转换为大写字母。

8. 压缩和解压缩

8.1 tar - 压缩和解压缩文件
tar [options] archive_name file_name
  • tar -cvf archive.tar file.txt:将 file.txt 压缩为 archive.tar
  • tar -xvf archive.tar:解压缩 archive.tar
8.2 gzipgunzip - 压缩和解压缩文件
gzip file_name
gunzip file_name.gz
  • gzip file.txt:将 file.txt 压缩为 file.txt.gz
  • gunzip file.txt.gz:将 file.txt.gz 解压缩为 file.txt
8.3 zipunzip - 创建和解压缩 zip 文件
zip archive_name file_name
unzip archive_name.zip
  • zip archive.zip file.txt:将 file.txt 压缩为 archive.zip
  • unzip archive.zip:解压缩 archive.zip

9. 磁盘管理

9.1 fdisk - 磁盘分区工具
fdisk [options] device
  • fdisk /dev/sda:管理 /dev/sda 磁盘的分区。
9.2 mkfs - 创建文件系统
mkfs [options] device
  • mkfs.ext4 /dev/sda1:在 /dev/sda1 分区上创建 ext4 文件系统。
9.3 mountumount - 挂载和卸载文件系统
mount [options] device mount_point
umount [options] device
  • mount /dev/sda1 /mnt:将 /dev/sda1 分区挂载到 /mnt 目录。
  • umount /mnt:卸载 /mnt 目录中的文件系统。

10. 系统信息

10.1 uname - 显示系统信息
uname [options]
  • uname -a:显示系统的所有信息。
  • uname -r:显示内核版本。
10.2 hostname - 显示或设置系统主机名
hostname [options]
  • hostname:显示当前的主机名。
10.3 uptime - 显示系统运行时间
uptime
  • uptime:显示系统的当前时间、运行时间、登录用户数、系统负载。

11. 包管理

11.1 apt(用于 Debian 系统)
apt-get [options] command
  • sudo apt-get update:更新包列表。
  • sudo apt-get upgrade:升级所有已安装的软件包。
  • sudo apt-get install package_name:安装新的软件包。
11.2 yum(用于 Red Hat 系统)
yum [options] command
  • sudo yum update:更新所有软件包。
  • sudo yum install package_name:安装新的软件包。

12. 帮助与文档

12.1 man - 显示命令的手册页
man command_name
  • man ls:显示 ls 命令的手册页。
12.2 info - 显示命令的详细信息
info command_name
  • info ls:显示 ls 命令的详细信息。
12.3 --help - 显示命令的简要帮助
command_name --help
  • ls --help:显示 ls 命令的简要帮助信息。

总结

掌握这些基础命令,可以大大提高在 Linux 系统上的工作效率。这些命令涵盖了文件管理、用户管理、网络管理、进程管理等各个方面的基本操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值