全网最全最长(4万多字)的Linux命令讲解(史上最全,建议收藏以备查阅,文末附Linux命令大全下载)
🧑 博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质创作者,提供产品测评、学习辅导、简历面试辅导、毕设辅导、项目开发、C/C++/Java/Python/Linux/AI等方面的服务,如有需要请站内私信或者联系任意文章底部的的VX名片(ID:
gylzbk
)
💬 博主粉丝群介绍:① 群内初中生、高中生、本科生、研究生、博士生遍布,可互相学习,交流困惑。② 热榜top10的常客也在群里,也有数不清的万粉大佬,可以交流写作技巧,上榜经验,涨粉秘籍。③ 群内也有职场精英,大厂大佬,可交流技术、面试、找工作的经验。④ 进群免费赠送写作秘籍一份,助你由写作小白晋升为创作大佬。⑤ 进群赠送CSDN评论防封脚本,送真活跃粉丝,助你提升文章热度。有兴趣的加文末联系方式,备注自己的CSDN昵称,拉你进群,互相学习共同进步。
全网最全最长(4万多字)的Linux命令讲解(史上最全,建议收藏以备查阅,文末附Linux命令大全下载)
- 命令概览
- 第1章:文件管理
- 1. `cat`
- 2. `chattr`
- 3. `chgrp`
- 4. `chmod`
- 5. `chown`
- 6. `cksum`
- 7. `cmp`
- 8. `diff`
- 9. `diffstat`
- 10. `file`
- 11. `find`
- 12. `git`
- 13. `gitview`
- 14. `indent`
- 15. `cut`
- 16. `ln`
- 17. `less`
- 18. `locate`
- 19. `lsattr`
- 20. `mattrib`
- 21. `mc`
- 22. `mdel`
- 23. `mdir`
- 24. `mktemp`
- 25. `more`
- 26. `mmove`
- 27. `mread`
- 28. `mren`
- 29. `mtools`
- 30. `mtoolstest`
- 31. `mv`
- 32. `od`
- 33. `paste`
- 34. `patch`
- 35. `rcp`
- 36. `rm`
- 37. `slocate`
- 38. `split`
- 39. `tee`
- 40. `tmpwatch`
- 41. `touch`
- 42. `umask`
- 43. `which`
- 44. `cp`
- 45. `whereis`
- 46. `mcopy`
- 47. `mshowfat`
- 48. `rhmask`
- 49. `scp`
- 50. `awk`
- 51. `read`
- 52. `updatedb`
- 第2章:文档编辑
- 第3章:文件传输
- 第4章:磁盘管理
- 1. `cd`
- 2. `df`
- 3. `dirs`
- 4. `du`
- 5. `edquota`
- 6. `eject`
- 7. `mcd`
- 8. `mdeltree`
- 9. `mdu`
- 10. `mkdir`
- 11. `mlabel`
- 12. `mmd`
- 13. `mrd`
- 14. `mzip`
- 15. `pwd`
- 16. `quota`
- 17. `mount`
- 18. `mmount`
- 19. `rmdir`
- 20. `rmt`
- 21. `stat`
- 22. `tree`
- 23. `umount`
- 24. `ls`
- 25. `quotacheck`
- 26. `quotaoff`
- 27. `lndir`
- 28. `repquota`
- 29. `quotaon`
- 第5章:磁盘维护
- 1. `badblocks`
- 2. `cfdisk`
- 3. `dd`
- 4. `e2fsck`
- 5. `ext2ed`
- 6. `fsck`
- 7. `fsck.minix`
- 8. `fsconf`
- 9. `fdformat`
- 10. `hdparm`
- 11. `mformat`
- 12. `mkbootdisk`
- 13. `mkdosfs`
- 14. `mke2fs`
- 15. `mkfs.ext2`
- 16. `mkfs.msdos`
- 17. `mkinitrd`
- 18. `mkisofs`
- 19. `mkswap`
- 20. `mpartition`
- 21. `swapon`
- 22. `symlinks`
- 23. `sync`
- 24. `mbadblocks`
- 25. `mkfs.minix`
- 26. `fsck.ext2`
- 27. `fdisk`
- 28. `losetup`
- 29. `mkfs`
- 30. `sfdisk`
- 31. `swapoff`
- 第6章:网络通讯
- 1. `apachectl`
- 2. `arpwatch`
- 3. `dip`
- 4. `getty`
- 5. `mingetty`
- 6. `uux`
- 7. `telnet`
- 8. `uulog`
- 9. `uustat`
- 10. `ppp-off`
- 11. `netconfig`
- 12. `nc`
- 13. `httpd`
- 14. `ifconfig`
- 15. `minicom`
- 16. `mesg`
- 17. `dnsconf`
- 18. `wall`
- 19. `netstat`
- 20. `ping`
- 21. `pppstats`
- 22. `samba`
- 23. `setserial`
- 24. `talk`
- 25. `traceroute`
- 26. `tty`
- 27. `newaliases`
- 28. `uuname`
- 29. `netconf`
- 30. `write`
- 31. `statserial`
- 32. `efax`
- 33. `pppsetup`
- 34. `tcpdump`
- 35. `ytalk`
- 36. `cu`
- 37. `smbd`
- 38. `testparm`
- 39. `smbclient`
- 40. `shapecfg`
- 第7章:系统管理
- 1. `adduser`
- 2. `chfn`
- 3. `useradd`
- 4. `date`
- 5. `exit`
- 6. `finger`
- 7. `fw`
- 8. `hios`
- 9. `sleep`
- 10. `suspend`
- 11. `groupdel`
- 12. `groupmod`
- 13. `halt`
- 14. `kill`
- 15. `last`
- 16. `lastb`
- 17. `login`
- 18. `logname`
- 19. `logout`
- 20. `ps`
- 21. `nice`
- 22. `procinfo`
- 23. `top`
- 24. `pstree`
- 25. `reboot`
- 26. `rlogin`
- 27. `rsh`
- 28. `sliplogin`
- 29. `screen`
- 30. `shutdown`
- 31. `rwho`
- 32. `sudo`
- 33. `gitps`
- 34. `swatch`
- 35. `tload`
- 36. `logrotate`
- 37. `uname`
- 38. `chsh`
- 39. `userconf`
- 40. `userdel`
- 41. `usermod`
- 42. `vlock`
- 43. `who`
- 44. `whoami`
- 45. `whois`
- 46. `newgrp`
- 47. `renice`
- 48. `su`
- 49. `skill`
- 50. `w`
- 51. `id`
- 52. `groupadd`
- 53. `free`
- 第8章:系统设置
- 1. `reset`
- 2. `clear`
- 3. `alias`
- 4. `dircolors`
- 5. `aumix`
- 6. `bind`
- 7. `chroot`
- 8. `clock`
- 9. `crontab`
- 10. `declare`
- 11. `depmod`
- 12. `dmesg`
- 13. `enable`
- 14. `eval`
- 15. `export`
- 16. `pwunconv`
- 17. `grpconv`
- 18. `rpm`
- 19. `insmod`
- 20. `kbdconfig`
- 21. `lilo`
- 22. `liloconfig`
- 23. `lsmod`
- 24. `minfo`
- 25. `set`
- 26. `modprobe`
- 27. `ntsysv`
- 28. `mouseconfig`
- 29. `passwd`
- 30. `pwconv`
- 31. `pwconv`
- 32. `parity`
- 33. `ldconfig`
- 34. `pwconv`
- 35. `smbd`
- 36. `modinfo`
- 37. `time`
- 38. `setup`
- 39. `sndconfig`
- 40. `setenv`
- 41. `setconsole`
- 42. `timeconfig`
- 43. `ulimit`
- 44. `unset`
- 45. `chkconfig`
- 46. `apmd`
- 47. `hwclock`
- 48. `mkkickstart`
- 49. `fbset`
- 50. `unalias`
- 51. `SVGATextMode`
- 52. `gpasswd`
- 第9章:备份压缩
- 第10章:设备管理
- 第11章:其他命令
- 免费下载Linux命令大全pdf电子书
命令概览
章节 | 命令列表 |
---|---|
文件管理 | cat, chattr, chgrp, chmod, chown, cksum, cmp, diff, diffstat, file, find, git, gitview, indent, cut, ln, less, locate, lsattr, mattrib, mc, mdel, mdir, mktemp, more, mmove, mread, mren, mtools, mtoolstest, mv, od, paste, patch, rcp, rm, slocate, split, tee, tmpwatch, touch, umask, which, cp, whereis, mcopy, mshowfat, rhmask, scp, awk, read, updatedb |
文档编辑 | col, colrm, comm, csplit, ed, egrep, ex, fgrep, fmt, fold, grep, ispell, jed, joe, join, look, mtype, pico, rgrep, sed, sort, spell, tr, expr, uniq, wc, let |
文件传输 | lprm, lpr, lpq, lpd, bye, ftp, uuto, uupick, uucp, uucico, tftp, ncftp, ftpshut, ftpwho, ftpcount |
磁盘管理 | cd, df, dirs, du, edquota, eject, mcd, mdeltree, mdu, mkdir, mlabel, mmd, mrd, mzip, pwd, quota, mount, mmount, rmdir, rmt, stat, tree, umount, ls, quotacheck, quotaoff, lndir, repquota, quotaon |
磁盘维护 | badblocks, cfdisk, dd, e2fsck, ext2ed, fsck, fsck.minix, fsconf, fdformat, hdparm, mformat, mkbootdisk, mkdosfs, mke2fs, mkfs.ext2, mkfs.msdos, mkinitrd, mkisofs, mkswap, mpartition, swapon, symlinks, sync, mbadblocks, mkfs.minix, fsck.ext2, fdisk, losetup, mkfs, sfdisk, swapoff |
网络通讯 | apachectl, arpwatch, dip, getty, mingetty, uux, telnet, uulog, uustat, ppp-off, netconfig, nc, httpd, ifconfig, minicom, mesg, dnsconf, wall, netstat, ping, pppstats, samba, setserial, talk, traceroute, tty, newaliases, uuname, netconf, write, statserial, efax, pppsetup, tcpdump, ytalk, cu, smbd, testparm, smbclient, shapecfg |
系统管理 | adduser, chfn, useradd, date, exit, finger, fw, hios, sleep, suspend, groupdel, groupmod, halt, kill, last, lastb, login, logname, logout, ps, nice, procinfo, top, pstree, reboot, rlogin, rsh, sliplogin, screen, shutdown, rwho, sudo, gitps, swatch, tload, logrotate, uname, chsh, userconf, userdel, usermod, vlock, who, whoami, whois, newgrp, renice, su, skill, w, id, groupadd, free |
系统设置 | reset, clear, alias, dircolors, aumix, bind, chroot, clock, crontab, declare, depmod, dmesg, enable, eval, export, pwunconv, grpconv, rpm, insmod, kbdconfig, lilo, liloconfig, lsmod, minfo, set, modprobe, ntsysv, mouseconfig, passwd, pwconv, rdate, resize, rmmod, grpunconv, modinfo, time, setup, sndconfig, setenv, setconsole, timeconfig, ulimit, unset, chkconfig, apmd, hwclock, mkkickstart, fbset, unalias, SVGATextMode, gpasswd |
备份压缩 | ar, bunzip2, bzip2, bzip2recover, gunzip, unarj, compress, cpio, dump, uuencode, gzexe, gzip, lha, restore, tar, uudecode, unzip, zip, zipinfo |
设备管理 | setleds, loadkeys, rdev, dumpkeys, MAKEDEV, poweroff |
其他命令 | bc, tail, head, xargs, ip, nohup, killall, pkill, man |
第1章:文件管理
1. cat
cat
命令用于连接文件并打印到标准输出。它可以用于显示文件内容、合并文件和创建新文件。
常用选项表:
选项 | 说明 |
---|---|
-n | 显示行号 |
-b | 显示非空行的行号 |
-s | 压缩相邻的多个空行 |
-v | 显示不可打印字符 |
示例命令:
cat file.txt # 显示文件内容
cat file1.txt file2.txt # 合并并显示多个文件内容
2. chattr
chattr
命令用于改变文件属性以使其对于用户来说更受限。
常用选项表:
选项 | 说明 |
---|---|
+ | 添加属性 |
- | 删除属性 |
= | 设置属性 |
示例命令:
chattr +i file.txt # 设置文件为不可修改
chattr -i file.txt # 取消不可修改属性
3. chgrp
chgrp
命令用于更改文件或目录所属的组。
常用选项表:
选项 | 说明 |
---|---|
-R | 递归修改目录及其内容的组 |
-v | 显示详细信息 |
示例命令:
chgrp staff file.txt # 修改文件的组为 staff
chgrp -R staff /path/to/directory # 递归修改目录的组
4. chmod
chmod
命令用于更改文件或目录的权限。
常用选项表:
选项 | 说明 |
---|---|
u | 用户(所有者)权限 |
g | 组权限 |
o | 其他用户权限 |
a | 所有用户权限 |
+ | 增加权限 |
- | 移除权限 |
= | 设置权限 |
示例命令:
chmod 755 file.txt # 设置文件权限为755(所有者读写执行,组和其他人读执行)
chmod u+x file.txt # 增加所有者的执行权限
chmod -R 755 /path/to/directory # 递归修改目录及其内容的权限
5. chown
chown
命令用于更改文件或目录的所有者和组。
常用选项表:
选项 | 说明 |
---|---|
-R | 递归修改目录及其内容 |
-v | 显示详细信息 |
示例命令:
chown user:group file.txt # 修改文件的所有者和组
chown -R user:group /path/to/directory # 递归修改目录及其内容的所有者和组
6. cksum
cksum
命令用于计算文件的 CRC 校验和及大小。
常用选项表:
选项 | 说明 |
---|---|
无 | 默认计算并显示校验和 |
示例命令:
cksum file.txt # 显示文件的校验和
7. cmp
cmp
命令用于比较两个文件,以字节为单位进行比较,输出文件的第一个不同之处。
常用选项表:
选项 | 说明 |
---|---|
-l | 显示所有不同字节 |
-s | 静默模式,不显示输出 |
示例命令:
cmp file1.txt file2.txt # 比较两个文件
8. diff
diff
命令用于比较两个文件或目录,显示出它们的差异。
常用选项表:
选项 | 说明 |
---|---|
-u | 统一格式输出 |
-q | 只报告不同点 |
-r | 递归比较目录 |
示例命令:
diff -u file1.txt file2.txt # 以统一格式显示文件差异
9. diffstat
diffstat
命令用于读取 diff
输出的文件,生成文件的修改统计信息。
常用选项表:
选项 | 说明 |
---|---|
-r | 递归处理 |
-m | 以合适风格显示 |
示例命令:
diff file1.txt file2.txt | diffstat
10. file
file
命令用于识别文件类型。
常用选项表:
选项 | 说明 |
---|---|
-b | 不显示文件名 |
-i | 显示 MIME 类型 |
示例命令:
file file.txt # 显示文件类型
11. find
find
命令用于搜索文件和目录。
常用选项表:
选项 | 说明 |
---|---|
-name | 按文件名搜索 |
-type | 按文件类型搜索(f:文件,d:目录) |
-mtime | 按修改时间搜索(例如 -1 表示最近一天内修改) |
-size | 按文件大小搜索 |
示例命令:
find /home -name "*.txt" # 搜索 home 目录下所有 txt 文件
12. git
git
是一个分布式版本控制系统,用于跟踪代码变更。
常用选项表:
选项 | 说明 |
---|---|
status | 显示当前仓库的状态 |
add | 添加文件到暂存区 |
commit | 提交暂存区的改动 |
push | 推送改动到远程仓库 |
示例命令:
git status # 查看当前仓库的状态
13. gitview
gitview
是一个用于查看 git
仓库的 TUI 工具。
示例命令:
gitview # 启动 gitview
14. indent
indent
命令用于格式化 C 代码。
常用选项表:
选项 | 说明 |
---|---|
-kr | 使用 Kernighan&Ritchie 风格 |
-gnu | 使用 GNU 风格 |
-orig | 不将副本写入原文件 |
示例命令:
indent -kr file.c # 使用 K&R 风格格式化 C 代码
15. cut
cut
命令用于从文件的每一行中提取一部分内容。
常用选项表:
选项 | 说明 |
---|---|
-d | 指定分隔符 |
-f | 指定提取的字段 |
-c | 指定提取的字符范围 |
示例命令:
cut -d ' ' -f 1 file # 提取以空格为分隔符的第1个字段
16. ln
ln
命令用于创建链接文件。可以创建硬链接和符号链接。
常用选项表:
选项 | 说明 |
---|---|
-s | 创建符号链接 |
-f | 强制创建 |
-v | 显示详细信息 |
-n | 禁止符号链接递归 |
示例命令:
ln -s /path/to/original /path/to/link
17. less
less
命令用于分页显示文件内容。
常用选项表:
选项 | 说明 |
---|---|
-N | 显示行号 |
-S | 纵向滚动 |
-i | 忽略大小写 |
示例命令:
less file.txt
18. locate
locate
命令用于查找文件位置。
常用选项表:
选项 | 说明 |
---|---|
-i | 忽略大小写 |
-r | 执行正则表达式匹配 |
示例命令:
locate file.txt
19. lsattr
lsattr
命令用于显示文件属性。
常用选项表:
选项 | 说明 |
---|---|
-a | 显示所有文件,包括隐藏文件 |
-d | 显示目录属性 |
示例命令:
lsattr file.txt
20. mattrib
mattrib
命令用于更改文件的属性(DOS/Windows)。
常用选项表:
选项 | 说明 |
---|---|
+ | 设置属性 |
- | 移除属性 |
= | 指定属性 |
示例命令:
mattrib +r file.txt
21. mc
mc
命令用于启动 Midnight Commander 文件管理器。
示例命令:
mc
22. mdel
mdel
命令用于删除 MS-DOS 文件。
示例命令:
mdel file.txt
23. mdir
mdir
命令用于列出 MS-DOS 目录内容。
示例命令:
mdir /A:
24. mktemp
mktemp
命令用于创建临时文件或目录,返回其名称。
常用选项表:
选项 | 说明 |
---|---|
-d | 创建目录 |
-q | 静默模式,不显示错误信息 |
示例命令:
mktemp /tmp/temp.XXXXXX
25. more
more
命令用于分页显示文件内容。
常用选项表:
选项 | 说明 |
---|---|
-d | 显示提示信息 |
-c | 擦除页,显示新的内容 |
示例命令:
more file.txt
26. mmove
mmove
命令用于在 MSDOS 文件系统上移动文件。
示例命令:
mmove a:file1.txt a:file2.txt
27. mread
mread
命令用于从 MSDOS 文件系统读取文件。
示例命令:
mread a:file.txt /tmp
28. mren
mren
命令用于重命名 MSDOS 文件系统中的文件。
示例命令:
mren a:file1.txt a:file2.txt
29. mtools
mtools
是一组在 MSDOS 文件系统上操作文件的命令集合。
常用选项:
mcopy
: 复制文件到 MSDOS 文件系统。mdelete
: 删除 MSDOS 文件系统的文件。
示例命令:
mcopy file1.txt a:file2.txt # 将文件复制到 MSDOS 系统
mdelete a:file2.txt # 删除 MSDOS 系统的文件
30. mtoolstest
mtoolstest
用于测试 mtools 配置。
示例命令:
mtoolstest # 测试 mtools 配置
31. mv
mv
命令用于移动或重命名文件。
常用选项表:
选项 | 说明 |
---|---|
-i | 覆盖前进行提示 |
-u | 只移动比目标文件新的文件 |
-v | 显示详细的移动过程 |
示例命令:
mv old_name new_name # 重命名文件或目录
mv file1 /new/directory/ # 移动文件到新目录
32. od
od
(八进制转储)命令用于查看二进制文件内容。
常用选项表:
选项 | 说明 |
---|---|
-a | 以字符显示 |
-b | 以八进制显示 |
-c | 以 ASCII 字符显示 |
-d | 以十进制显示 |
-x | 以十六进制显示 |
示例命令:
od -c file.txt # 以 ASCII 字符格式显示文件内容
od -x file.bin # 以十六进制显示二进制文件内容
33. paste
paste
命令将文件按列合并。
常用选项表:
选项 | 说明 |
---|---|
-d | 指定分隔符 |
-s | 串联,而不是并列 |
示例命令:
paste file1.txt file2.txt # 按列合并两个文件
paste -d ',' file1.txt file2.txt # 使用逗号分隔
34. patch
patch
命令用于将补丁应用到文件。
常用选项表:
选项 | 说明 |
---|---|
-pN | 去掉路径前 N 个目录 |
-R | 反向应用补丁 |
示例命令:
patch < patchfile.patch # 将补丁应用到当前目录
35. rcp
rcp
命令用于在两个系统之间复制文件(使用 rsh
或 ssh
协议)。
常用选项表:
选项 | 说明 |
---|---|
-r | 递归复制目录 |
示例命令:
rcp file1.txt remote:/path/to/destination/ # 复制文件到远程系统
36. rm
rm
命令用于删除文件或目录。
常用选项表:
选项 | 说明 |
---|---|
-r | 递归删除目录及其内容 |
-f | 强制删除,不提示 |
-i | 逐一确认删除 |
示例命令:
rm file.txt # 删除文件
rm -rf /path/to/directory/ # 递归删除目录及其内容
37. slocate
slocate
命令用于快速查找文件(使用数据库)。
常用选项表:
选项 | 说明 |
---|---|
-u | 更新数据库 |
示例命令:
slocate file.txt # 查找文件
38. split
split
命令用于分割文件成若干小部分。
常用选项表:
选项 | 说明 |
---|---|
-b | 指定每一部分的大小 |
-l | 指定每一部分的行数 |
示例命令:
split -b 1M largefile # 按 1MB 分割文件
39. tee
tee
命令用于将输入复制到多个输出。
常用选项表:
选项 | 说明 |
---|---|
-a | 追加模式 |
-i | 忽略中断信号 |
示例命令:
echo "Hello" | tee file.txt # 输出到终端并写入文件
40. tmpwatch
tmpwatch
命令用于删除指定时间内未修改的文件。
常用选项表:
选项 | 说明 |
---|---|
-atime | 访问时间 |
-ctime | 创建时间 |
-mtime | 修改时间 |
示例命令:
tmpwatch 72 /tmp # 删除 72 小时内未修改的文件
41. touch
touch
命令用于更新文件的访问和修改时间,也可用于创建新文件。
常用选项表:
选项 | 说明 |
---|---|
-a | 仅修改访问时间 |
-m | 仅修改修改时间 |
-c | 不创建文件 |
示例命令:
touch file.txt # 创建新文件或更新时间
42. umask
umask
命令用于设置文件创建时的默认权限。
常用选项表:
选项 | 说明 |
---|---|
无 | 默认值 |
示例命令:
umask 022 # 设置默认权限
43. which
which
命令用于查找并显示命令的全路径。
常用选项表:
选项 | 说明 |
---|---|
-a | 显示所有符合条件的路径 |
示例命令:
which ls # 显示 ls 命令的全路径
44. cp
cp
命令用于复制文件和目录。
常用选项表:
选项 | 说明 |
---|---|
-r | 递归复制 |
-p | 保留属性 |
-i | 覆盖前进行提示 |
-u | 仅复制比目标新的文件 |
示例命令:
cp -r /source/path /dest/path # 递归复制目录
45. whereis
whereis
命令用于定位命令的二进制文件、源代码文件和手册页。
常用选项表:
选项 | 说明 |
---|---|
-b | 仅查找二进制文件 |
-m | 仅查找手册页 |
-s | 仅查找源代码文件 |
示例命令:
whereis ls # 查找 ls 命令的位置
46. mcopy
mcopy
命令用于复制文件到 MSDOS 文件系统。
常用选项表:
选项 | 说明 |
---|---|
-t | 保持时间戳 |
示例命令:
mcopy file.txt a: # 复制文件到 MSDOS 文件系统
47. mshowfat
mshowfat
命令用于显示 MSDOS 文件系统上的文件结构。
示例命令:
mshowfat file.txt # 显示文件结构
48. rhmask
rhmask
是 cpio
的增强版,作备份和恢复。
示例命令:
rhmask -i < backup.cpio # 从备份文件中恢复
49. scp
scp
命令用于在两个系统之间安全复制文件。
常用选项表:
选项 | 说明 |
---|---|
-r | 递归复制目录 |
-P | 指定端口 |
示例命令:
scp file.txt user@remote:/path/to/destination/ # 复制文件到远程系统
50. awk
awk
是一个强大的文本处理工具,能用于格式化文本输出。
常用选项表:
选项 | 说明 |
---|---|
-F | 指定分隔符 |
-f | 运行指定的 awk 程序文件 |
示例命令:
awk '{print $1}' file.txt # 打印文件的第一列
51. read
read
命令用于从标准输入读取一行,并赋值给变量。
示例命令:
read name # 读取输入并赋值给变量 name
52. updatedb
updatedb
命令用于更新 locate
命令的数据库。
示例命令:
updatedb # 更新 locate 数据库
第2章:文档编辑
1. col
col
命令用于从标准输入过滤控制字符。
示例命令:
echo -e "a\bcd" | col -b # 过滤出可打印字符
2. colrm
colrm
命令用于删除指定范围内的列。
示例命令:
echo "hello, world" | colrm 1 5 # 删除1到5列
3. comm
comm
命令用于比较两个已排序文件的公共行。
示例命令:
comm file1.txt file2.txt # 显示两个文件的不同之处
4. csplit
csplit
命令用于根据条件将文件拆分成多个小文件。
常用选项表:
选项 | 说明 |
---|---|
-f | 设置生成的文件前缀 |
-b | 设置生成的文件后缀格式 |
示例命令:
csplit file.txt /pattern/ # 根据模式拆分文件
5. ed
ed
是一个行编辑器,用于编辑文件。
示例命令:
ed file.txt # 编辑文件
6. egrep
egrep
命令用于使用扩展正则表达式搜索文件内容。
常用选项表:
选项 | 说明 |
---|---|
-i | 忽略大小写 |
-v | 反向匹配 |
-r | 递归搜索 |
-n | 显示匹配行的行号 |
示例命令:
egrep -i "pattern" file.txt # 在文件中搜索扩展正则表达式
7. ex
ex
是 vi
的命令行模式,为高级用户提供更多功能的编辑器。
示例命令:
ex file.txt # 编辑文件
8. fgrep
fgrep
命令用于搜索固定字符串(不使用正则表达式)。
常用选项表:
选项 | 说明 |
---|---|
-i | 忽略大小写 |
-v | 反向匹配 |
-r | 递归搜索 |
-n | 显示匹配行的行号 |
示例命令:
fgrep "pattern" file.txt # 在文件中搜索固定字符串
9. fmt
fmt
命令用于格式化文本,使每行不超过指定宽度。
常用选项表:
选项 | 说明 |
---|---|
-w | 指定最大行宽 |
-c | 合并多个连续的空行 |
示例命令:
fmt -w 80 file.txt # 格式化文件使每行不超过 80 个字符
10. fold
fold
命令用于将文件每行的文本折叠为指定宽度。
常用选项表:
选项 | 说明 |
---|---|
-w | 指定最大行宽 |
-s | 按空格折叠行 |
示例命令:
fold -w 80 file.txt # 将文件折叠为每行 80 个字符
11. grep
grep
命令用于搜索文件内容。
常用选项表:
选项 | 说明 |
---|---|
-i | 忽略大小写 |
-v | 反向匹配 |
-r | 递归搜索 |
-n | 显示匹配行的行号 |
示例命令:
grep -i "pattern" file.txt # 在文件中搜索指定模式
12. ispell
ispell
是一个交互式拼写检查程序。
示例命令:
ispell file.txt # 检查文件拼写
13. jed
jed
是一种文本编辑器,支持语法高亮和多种编程语言的编辑。
示例命令:
jed file.txt # 编辑文件
14. joe
joe
是一种轻量级的文本编辑器。
示例命令:
joe file.txt # 编辑文件
15. join
join
命令用于合并两个文件中具有相同字段的行。
常用选项表:
选项 | 说明 |
---|---|
-1 num | 指定第一个文件的字段 |
-2 num | 指定第二个文件的字段 |
-t char | 指定分隔符 |
示例命令:
join file1.txt file2.txt # 合并具有相同字段的行
16. look
look
命令用于查找以指定字符串开头的行。
示例命令:
look "pattern" file.txt # 查找以指定字符串开头的行
17. mtype
mtype
命令用于显示 MSDOS 文件系统中文件的内容。
示例命令:
mtype a:file.txt # 显示 MSDOS 文件内容
18. pico
pico
是一种简单的文本编辑器。
示例命令:
pico file.txt # 编辑文件
19. rgrep
rgrep
命令用于递归地搜索文件内容。
示例命令:
rgrep "pattern" /path/to/directory/ # 递归地搜索目录中的内容
20. sed
sed
是流编辑器,用于文本处理和替换操作。
常用选项表:
选项 | 说明 |
---|---|
-i | 直接修改文件 |
-e | 指定脚本 |
-f | 从文件中读取脚本 |
示例命令:
sed 's/pattern/replacement/' file.txt # 替换文件中的模式
21. ‘sort’
sort
命令用于对文件内容进行排序。
常用选项表:
选项 | 说明 |
---|---|
-n | 数字排序 |
-r | 反向排序 |
-k | 按指定列排序 |
示例命令:
sort -k 2 file.txt # 按第二列排序
22. spell
spell
是一个拼写检查程序。
示例命令:
spell file.txt # 检查文件拼写
23. tr
tr
命令用于翻译或删除字符。
常用选项表:
选项 | 说明 |
---|---|
-d | 删除指定字符 |
-s | 压缩重复字符 |
示例命令:
tr 'a-z' 'A-Z' < file.txt # 将小写字母转换为大写字母
24. expr
expr
命令用于计算表达式的值。
示例命令:
expr 1 + 2 # 计算表达式的值
25. uniq
uniq
命令用于去除文件中的重复行。
常用选项表:
选项 | 说明 |
---|---|
-c | 显示重复行的次数 |
-d | 显示重复行 |
示例命令:
uniq file.txt # 去除文件中的重复行
26. wc
wc
命令用于计算文件的字数、行数和字节数。
常用选项表:
选项 | 说明 |
---|---|
-l | 仅计算行数 |
-w | 仅计算单词数 |
-c | 仅计算字节数 |
-m | 仅计算字符数 |
示例命令:
wc file.txt # 显示文件的行数、单词数和字节数
wc -l file.txt # 显示文件的行数
wc -w file.txt # 显示文件的单词数
27. let
let
命令用于执行整数运算。
常用选项:
无特别选项,直接执行计算表达式。
示例命令:
let result=3+5 # 计算结果赋值给 result 变量
echo $result # 输出结果
第3章:文件传输
1. lprm
lprm
命令用于从打印队列中删除作业。
常用选项表:
选项 | 说明 |
---|---|
- | 删除当前用户的所有打印作业 |
-P | 指定打印机名称 |
示例命令:
lprm - # 删除当前用户的所有打印作业
lprm -P printer_name 123 # 删除指定打印作业
2. lpr
lpr
命令用于提交打印作业到打印队列。
常用选项表:
选项 | 说明 |
---|---|
-P | 指定打印机名称 |
-#num | 指定打印份数 |
示例命令:
lpr -P printer_name file.txt # 提交文件打印到指定打印机
lpr -#3 file.txt # 打印 3 份
3. lpq
lpq
命令用于显示打印队列的状态。
常用选项表:
选项 | 说明 |
---|---|
-P | 指定打印机名称 |
示例命令:
lpq -P printer_name # 显示指定打印机的打印队列
lpq # 显示默认打印机的打印队列
4. lpd
lpd
命令是打印服务守护进程,用于管理打印请求。
常用选项:
通常作为后台服务运行,无常用选项。
示例命令:
lpd # 启动打印服务守护进程
5. bye
bye
命令一般用于退出一个交互会话。通常在 ftp
和 telnet
这样需要命令行交互的客户端程序中使用。
示例命令:
ftp> bye # 退出 ftp 会话
6. ftp
ftp
命令用于通过 FTP 协议进行文件传输。
示例命令:
ftp hostname # 连接到 FTP 服务器
# 在 ftp 提示符下运行以下命令:
# get filename # 下载文件
# put filename # 上传文件
# bye # 退出 FTP 会话
7. uuto
uuto
命令用于将文件传输到本地或远程系统的指定用户目录。它是 UUCP(Unix-to-Unix CoPy)的一个命令。
示例命令:
uuto localfile remote!~/dir # 将本地文件传输到远程系统的指定目录
uuto file user@remote!dir # 将文件传输到远程系统上的用户目录
8. uupick
uupick
命令用于接收通过 UUCP 传输的文件,并按需移动到指定目录。
示例命令:
uupick # 检查并接收传输的文件
9. uucp
uucp
命令用于通过 UUCP 协议复制文件。
示例命令:
uucp file1 system1!~/dir # 将文件复制到远程系统上的指定目录
uucp system1!~/file2 ./localdir # 从远程系统复制文件到本地目录
10. uucico
uucico
命令是 UUCP 的主协议守护进程,用于执行实际的通信任务,包括文件传输和命令执行。
常用选项:
选项 | 说明 |
---|---|
-s | 指定系统名 |
-r | 作为接收器启动 |
-S | 启用调试模式 |
示例命令:
uucico -s system1 # 与 system1 建立通信链接并进行文件传输
uucico -r # 作为接收器启动
uucico -S # 启用调试模式
11. tftp
tftp
命令用于通过 TFTP(Trivial File Transfer Protocol)进行文件传输,是一个较简单、不安全的协议。
示例命令:
tftp hostname # 进入 tftp 会话
# 在 tftp 提示符下运行以下命令:
# get filename # 下载文件
# put filename # 上传文件
# quit # 退出 tftp 会话
12. ncftp
ncftp
是一个功能丰富的 FTP 客户端,提供比标准 ftp 命令更多的功能。
示例命令:
ncftp hostname # 连接到 FTP 服务器
# 在 ncftp 提示符下运行以下命令:
# get filename # 下载文件
# put filename # 上传文件
# quit # 退出 ncftp 会话
13. ftpshut
ftpshut
命令用于计划关闭 FTP 服务器。它向所有正在连接的用户发送关闭通知。
常用选项:
选项 | 说明 |
---|---|
-l | 设置服务器实际关闭时间之前的提前警告时间 |
-d | 设置服务器实际关闭时间前的不同阶段延迟关闭时间 |
示例命令:
sudo ftpshut -l 10 -d 5 "Server going down for maintenance" # 10 分钟后的提前警告,5 分钟的延迟关闭,共 15 分钟
14. ftpwho
ftpwho
命令显示当前正在使用 FTP 服务器的用户信息。
示例命令:
sudo ftpwho # 显示当前正在使用 FTP 服务器的用户信息
15. ftpcount
ftpcount
命令显示当前 FTP 服务器上的用户连接数和状态信息。
示例命令:
sudo ftpcount # 显示当前 FTP 服务器的用户连接数和状态信息
第4章:磁盘管理
1. cd
cd
命令用于改变当前工作目录。
常用选项:
无特别选项,直接指定目录路径。
示例命令:
cd /path/to/directory # 切换到指定目录
cd .. # 切换到上一级目录
cd ~ # 切换到用户主目录
2. df
df
命令用于显示文件系统的磁盘使用情况。
常用选项表:
选项 | 说明 |
---|---|
-h | 以人类可读格式显示 |
-T | 显示文件系统类型 |
-i | 显示 inode 信息 |
示例命令:
df -h # 以人类可读格式显示磁盘使用情况
df -T # 显示文件系统类型
3. dirs
dirs
命令用于显示当前目录栈的内容。
常用选项表:
选项 | 说明 |
---|---|
-l | 列格式显示 |
-v | 垂直格式显示 |
示例命令:
dirs # 显示目录栈内容
dirs -l # 列格式显示
dirs -v # 垂直格式显示
4. du
du
命令用于显示目录或文件的磁盘使用情况。
常用选项表:
选项 | 说明 |
---|---|
-h | 以人类可读格式显示 |
-s | 仅显示总计 |
-a | 显示目录和文件的使用情况 |
示例命令:
du -h /path/to/directory # 以人类可读格式显示磁盘使用情况
du -s /path/to/directory # 显示目录总计
du -a /path/to/directory # 显示目录和文件的使用情况
5. edquota
edquota
命令用于编辑用户的磁盘配额。
示例命令:
sudo edquota username # 编辑指定用户的磁盘配额
6. eject
eject
命令用于弹出可移动设备。
示例命令:
eject /dev/cdrom # 弹出光驱
7. mcd
mcd
命令用于改变 MS-DOS 文件系统的当前目录。
示例命令:
mcd a:/directory # 改变 MS-DOS 文件系统的当前目录
8. mdeltree
mdeltree
命令用于删除 MS-DOS 文件系统中的目录及其内容。
示例命令:
mdeltree a:/directory # 删除 MS-DOS 文件系统中的目录及其内容
9. mdu
mdu
命令用于显示 MS-DOS 文件系统的磁盘使用情况。
示例命令:
mdu a:/directory # 显示 MS-DOS 文件系统的磁盘使用情况
10. mkdir
mkdir
命令用于创建新目录。
常用选项表:
选项 | 说明 |
---|---|
-p | 递归创建多级目录 |
-v | 显示详细创建信息 |
示例命令:
mkdir /path/to/directory # 创建目录
mkdir -p /new/path/to/directory # 递归创建多级目录
11. mlabel
mlabel
命令用于设置或查看 MS-DOS 文件系统卷标。
常用选项:
选项 | 说明 |
---|---|
-i | 忽略大小写 |
示例命令:
mlabel -i /dev/sda1 ::NEW_LABEL # 设置卷标为 NEW_LABEL
12. mmd
mmd
命令用于创建 MS-DOS 文件系统中的新目录。
示例命令:
mmd a:/new_directory # 创建 MS-DOS 文件系统中的新目录
13. mrd
mrd
命令用于删除 MS-DOS 文件系统中的目录。
示例命令:
mrd a:/directory # 删除 MS-DOS 文件系统中的目录
14. mzip
mzip
命令用于压缩或解压 MS-DOS 文件系统中的 ZIP 文件。
示例命令:
mzip -z a:file.zip # 压缩文件
mzip -d a:file.zip # 解压文件
15. pwd
pwd
命令用于显示当前工作目录的完整路径。
示例命令:
pwd # 显示当前工作目录的路径
16. quota
quota
命令用于显示用户的磁盘配额和使用情况。
常用选项表:
选项 | 说明 |
---|---|
-v | 显示详细信息 |
-u | 按用户显示 |
-g | 按组显示 |
示例命令:
quota -u username # 显示用户的磁盘配额
quota -g groupname # 显示组的磁盘配额
17. mount
mount
命令用于挂载文件系统。
常用选项表:
选项 | 说明 |
---|---|
-t | 指定文件系统类型 |
-o | 指定挂载选项 |
-a | 挂载所有文件系统 |
示例命令:
mount -t ext4 /dev/sda1 /mnt # 挂载 ext4 文件系统
mount -o rw,remount /dev/sda1 # 重新挂载为读写模式
mount -a # 挂载所有文件系统
18. mmount
mmount
命令用于挂载 MS-DOS 文件系统。
示例命令:
mmount a: # 挂载 MS-DOS 文件系统
19. rmdir
rmdir
命令用于删除空目录。
常用选项表:
选项 | 说明 |
---|---|
-p | 递归删除多级空目录 |
-v | 显示详细信息 |
示例命令:
rmdir /path/to/empty_directory # 删除空目录
rmdir -p /path/to/parent_directory # 递归删除多级空目录
20. rmt
rmt
命令用于远程磁带操作。
常用选项:
无特别选项,通常与其他命令结合使用。
示例命令:
tar -cf - /path/to/files | rmt /dev/rmt0 # 备份文件到远程磁带
21. stat
stat
命令用于显示文件或文件系统的详细状态。
常用选项表:
选项 | 说明 |
---|---|
-f | 显示文件系统信息 |
-c | 使用指定格式显示 |
示例命令:
stat file.txt # 显示文件的详细状态
stat -f / # 显示文件系统的信息
22. tree
tree
命令以树状图显示目录结构。
常用选项表:
选项 | 说明 |
---|---|
-d | 仅显示目录 |
-L | 限制显示的目录层级 |
-a | 显示所有文件,包括隐藏文件 |
示例命令:
tree /path/to/directory # 显示目录结构
tree -L 2 /path/to/directory # 显示两级目录结构
23. umount
umount
命令用于卸载文件系统。
常用选项表:
选项 | 说明 |
---|---|
-l | 延迟卸载 |
-f | 强制卸载 |
示例命令:
umount /mnt # 卸载文件系统
umount -f /mnt # 强制卸载文件系统
24. ls
ls
命令用于列出目录内容。
常用选项表:
选项 | 说明 |
---|---|
-l | 列出详细信息(列表格式) |
-a | 列出所有文件,包括隐藏文件 |
-h | 以人类可读的格式显示文件大小 |
示例命令:
ls # 列出当前目录中的文件和目录
ls -l # 列出详细信息
ls -a # 列出所有文件,包括隐藏文件
ls -lh # 详细信息以人类可读的格式显示
25. quotacheck
quotacheck
命令用于检查磁盘配额并生成配额使用情况报告。
常用选项:
选项 | 说明 |
---|---|
-c | 创建新的配额使用情况文件 |
-v | 显示详细信息 |
示例命令:
quotacheck -cug /dev/sda1 # 为 /dev/sda1 检查和创建配额使用情况报告
26. quotaoff
quotaoff
命令用于关闭文件系统的磁盘配额。
示例命令:
quotaoff /dev/sda1 # 关闭 /dev/sda1 的磁盘配额
27. lndir
lndir
命令用于创建目录的符号链接。
示例命令:
lndir /path/to/original /path/to/link # 创建目录的符号链接
28. repquota
repquota
命令用于显示磁盘配额报告。
常用选项:
选项 | 说明 |
---|---|
-a | 显示所有文件系统 |
-v | 显示详细信息 |
示例命令:
repquota -a # 显示所有文件系统的配额报告
29. quotaon
quotaon
命令用于启动文件系统的磁盘配额。
示例命令:
quotaon /dev/sda1 # 启动 /dev/sda1 的磁盘配额
第5章:磁盘维护
1. badblocks
badblocks
命令用于检查磁盘中的坏块。
示例命令:
badblocks -v /dev/sda1 # 查找并显示坏块
2. cfdisk
cfdisk
命令是一个基于文本的分区工具,用于磁盘分区管理。
示例命令:
cfdisk # 启动 cfdisk 分区工具
3. dd
dd
命令用于按指定大小和顺序复制文件或块设备。
常用选项表:
选项 | 说明 |
---|---|
if | 输入文件 |
of | 输出文件 |
bs | 块大小 |
count | 复制的块数 |
示例命令:
dd if=/dev/zero of=/tmp/testfile bs=1M count=100 # 创建一个 100 MB 的文件
dd if=/dev/sda of=/dev/sdb bs=4M # 克隆磁盘
4. e2fsck
e2fsck
命令用于检查和修复 ext2/ext3/ext4 文件系统。
常用选项
选项 | 说明 |
---|---|
-p | 自动修复文件系统 |
-y | 对所有问题自动回答“yes” |
示例命令
e2fsck -p /dev/sda1 # 自动修复 /dev/sda1 文件系统
5. ext2ed
ext2ed
是一个 ext2 文件系统编辑器。
示例命令
ext2ed /dev/sda1 # 启动 ext2 文件系统编辑器
6. fsck
fsck
命令用于检查和修复文件系统。
常用选项
选项 | 说明 |
---|---|
-a | 自动修复文件系统 |
-r | 交互模式,提示用户修复问题 |
示例命令
fsck -a /dev/sda1 # 自动修复 /dev/sda1 文件系统
7. fsck.minix
fsck.minix
是用于检查和修复 minix 文件系统的工具。
示例命令
fsck.minix /dev/sda1 # 检查和修复 minix 文件系统
8. fsconf
fsconf
命令用于配置文件系统。
示例命令
fsconf /dev/sda1 # 配置文件系统
9. fdformat
fdformat
命令用于低级格式化软盘。
示例命令
fdformat /dev/fd0 # 格式化软盘
10. hdparm
hdparm
命令用于设置和查看硬盘参数。
常用选项
选项 | 说明 |
---|---|
-t | 测试硬盘读取速度 |
-I | 显示硬盘信息 |
示例命令
hdparm -t /dev/sda # 测试硬盘读速
hdparm -I /dev/sda # 显示硬盘信息
11. mformat
mformat
命令用于格式化 MS-DOS 文件系统分区。
示例命令
mformat a: # 格式化 A: 盘
12. mkbootdisk
mkbootdisk
命令用于创建引导盘。
示例命令
mkbootdisk --device /dev/fd0 $(uname -r) # 创建引导盘
13. mkdosfs
mkdosfs
命令用于创建 DOS 文件系统。
示例命令
mkdosfs /dev/sda1 # 创建 DOS 文件系统
14. mke2fs
mke2fs
命令用于创建 ext2/ext3/ext4 文件系统。
常用选项
选项 | 说明 |
---|---|
-j | 创建带有日志功能的文件系统 |
-t | 指定文件系统类型 |
示例命令
mke2fs -j /dev/sda1 # 创建 ext3 文件系统
15. mkfs.ext2
mkfs.ext2
命令用于创建 ext2 文件系统。
示例命令
mkfs.ext2 /dev/sda1 # 创建 ext2 文件系统
16. mkfs.msdos
mkfs.msdos
命令用于创建 MSDOS 文件系统。
示例命令
mkfs.msdos /dev/sda1 # 创建 MSDOS 文件系统
17. mkinitrd
mkinitrd
命令用于创建初始化 RAM 磁盘镜像。
示例命令
mkinitrd /boot/initrd.img $(uname -r) # 创建初始化 RAM 磁盘镜像
18. mkisofs
mkisofs
命令用于创建 ISO 9660 文件系统映像。
常用选项
选项 | 说明 |
---|---|
-o | 指定输出文件 |
-J | 生成 Joliet 目录记录 |
-R | 生成 Rock Ridge 目录记录 |
示例命令
mkisofs -o image.iso /path/to/files # 创建 ISO 映像
19. mkswap
mkswap
命令用于设置交换分区。
示例命令
mkswap /dev/sda2 # 创建交换分区
20. mpartition
mpartition
命令用于对 MSDOS 磁盘进行分区操作。
示例命令
mpartition -c -1 /dev/sda # 创建分区
21. swapon
swapon
命令用于启用交换分区。
示例命令
swapon /dev/sda2 # 启用交换分区
22. symlinks
symlinks
搜索和管理符号链接。
常用选项
选项 | 说明 |
---|---|
-r | 递归搜索 |
-d | 忽略目录 |
-v | 显示详细信息 |
示例命令
symlinks -r /path/to/directory # 递归搜索符号链接
23. sync
sync
命令用于将数据写入磁盘。
示例命令
sync # 将数据写入磁盘
24. mbadblocks
mbadblocks
命令用于检查 MS-DOS 磁盘上的坏块。
示例命令
mbadblocks a: # 检查坏块
25. mkfs.minix
mkfs.minix
命令用于创建 minix 文件系统。
示例命令
mkfs.minix /dev/sda1 # 创建 minix 文件系统
26. fsck.ext2
fsck.ext2
命令用于检查和修复 ext2 文件系统。
示例命令
fsck.ext2 /dev/sda1 # 检查和修复 ext2 文件系统
27. fdisk
fdisk
命令用于磁盘分区管理。
示例命令
fdisk /dev/sda # 启动 fdisk 分区工具
28. losetup
losetup
命令用于设置和控制环回设备。
常用选项
选项 | 说明 |
---|---|
-d | 解除环回设备 |
-a | 显示所有环回设备 |
示例命令
losetup /dev/loop0 image.iso # 将 ISO 映像挂载到环回设备
losetup -d /dev/loop0 # 解除环回设备
29. mkfs
mkfs
命令用于创建文件系统。
常用选项
选项 | 说明 |
---|---|
-t | 指定文件系统类型 |
示例命令
mkfs -t ext4 /dev/sda1 # 创建 ext4 文件系统
30. sfdisk
sfdisk
命令是一个磁盘分区工具,用于批量创建分区。
示例命令
sfdisk /dev/sda < partition_table.txt # 导入分区表
31. swapoff
swapoff
命令用于禁用交换分区。
示例命令
swapoff /dev/sda2 # 禁用交换分区
第6章:网络通讯
1. apachectl
apachectl
命令用于控制 Apache HTTP 服务器。
常用选项
选项 | 说明 |
---|---|
start | 启动服务器 |
stop | 停止服务器 |
restart | 重启服务器 |
示例命令
apachectl start # 启动 Apache HTTP 服务器
2. arpwatch
arpwatch
命令用于监控以太网或 802.11 无线局域网上的 ARP 流量,并记录日志。
常用选项:
选项 | 说明 |
---|---|
-i | 指定网络接口 |
-d | 以调试模式运行 |
-n | 不解析 IP 地址 |
示例命令:
arpwatch -i eth0 # 监控 eth0 接口上的 ARP 流量
3. dip
dip
命令用于拨号和管理 SLIP/PPP 连接。
示例命令:
dip -t script.dip # 运行 DIP 脚本建立连接
4. getty
getty
命令用于初始化并打开终端线路,用于登录程序。
常用选项:
选项 | 说明 |
---|---|
-l | 指定登录程序 |
-i | 禁用启动时的告示信息 |
示例命令:
getty -l /bin/login null # 使用 getty 初始化终端
5. mingetty
mingetty
命令是 getty 的一个轻量版本,用于打开串行终端。
常用选项:
选项 | 说明 |
---|---|
-l | 指定登录程序 |
示例命令:
mingetty tty1 # 在 tty1 上启动 mingetty
6. uux
uux
命令用于使用 UUCP 执行远程命令。
常用选项:
选项 | 说明 |
---|---|
-z | 禁用通知 |
-a | 指定用户 |
示例命令:
uux -z remote_host!ls /tmp # 在远程主机上列出 /tmp 目录
7. telnet
telnet
命令用于通过 Telnet 协议连接到远程主机。
常用选项:
选项 | 说明 |
---|---|
-l | 指定登录用户名 |
-E | 禁用远程 ech |
示例命令:
telnet hostname # 连接到远程主机
telnet -l username hostname # 以指定用户连接
8. uulog
uulog
命令用于查看 UUCP 日志文件。
示例命令:
uulog # 查看 UUCP 日志
9. uustat
uustat
命令用于显示 UUCP 系统的活动和状态。
示例命令:
uustat # 显示 UUCP 系统状态
10. ppp-off
ppp-off
命令用于关闭 PPP 连接。
示例命令:
ppp-off # 关闭 PPP 连接
11. netconfig
netconfig
命令用于配置网络接口。
示例命令:
netconfig # 运行交互式网络配置工具
12. nc
nc
(Netcat)命令用于进行网络通信,可以读取和写入网络连接。
常用选项:
选项 | 说明 |
---|---|
-l | 监听模式 |
-p | 指定端口 |
-e | 在连接建立后执行命令 |
-u | 使用 UDP 协议 |
示例命令:
nc -l -p 12345 # 监听本地 12345 端口
nc hostname 12345 # 连接到远程主机的 12345 端口
13. httpd
httpd
命令用于启动 Apache HTTP 服务器。
示例命令:
httpd # 启动 Apache HTTP 服务器
14. ifconfig
ifconfig
命令用于配置网络接口。
常用选项:
选项 | 说明 |
---|---|
up | 启用指定接口 |
down | 禁用指定接口 |
示例命令:
ifconfig eth0 # 显示 eth0 接口的信息
ifconfig eth0 up # 启用 eth0 接口
ifconfig eth0 down # 禁用 eth0 接口
15. minicom
minicom
命令用于串行通信终端。
常用选项:
选项 | 说明 |
---|---|
-s | 启动设置菜单 |
-o | 禁用初始化 |
示例命令:
minicom -s # 启动设置菜单
16. mesg
mesg
命令用于控制其他用户是否可以向当前用户发送消息。
常用选项:
选项 | 说明 |
---|---|
y | 允许消息 |
n | 禁止消息 |
示例命令:
mesg y # 允许消息
mesg n # 禁止消息
17. dnsconf
dnsconf
命令用于配置 DNS。
示例命令:
dnsconf # 运行 DNS 配置工具
18. wall
wall
命令用于向所有已登录用户发送消息。
示例命令:
echo "System will go down for maintenance at midnight" | wall # 发送消息给所有用户
19. netstat
netstat
命令用于显示网络连接、路由表、接口状态等信息。
常用选项:
选项 | 说明 |
---|---|
-a | 显示所有连接 |
-r | 显示路由表 |
-i | 显示接口信息 |
示例命令:
netstat -a # 显示所有连接
netstat -r # 显示路由表
netstat -i # 显示接口信息
20. ping
ping
命令用于测试网络连接是否可达。
常用选项:
选项 | 说明 |
---|---|
-c count | 指定发送数据包数量 |
-i interval | 指定发送间隔秒数 |
示例命令:
ping google.com # 测试与 google.com 的连接
ping -c 4 google.com # 发送 4 个数据包
21. pppstats
pppstats
命令用于显示 PPP 链路的通信统计信息。
示例命令:
pppstats # 显示 PPP 链路的通信统计信息
22. samba
samba
命令用于启动 Samba 服务器,为 Windows 客户端提供文件和打印服务。
示例命令:
service samba start # 启动 Samba 服务器
23. setserial
setserial
命令用于设置和查看串行接口属性。
常用选项:
选项 | 说明 |
---|---|
-a | 显示所有选项 |
-g | 显示指定端口的状态 |
示例命令:
setserial -g /dev/ttyS[01] # 显示串行端口状态
24. talk
talk
命令用于与另一个用户进行实时对话。
示例命令:
talk username@hostname # 与远程用户进行对话
25. traceroute
traceroute
命令用于显示从本地主机到目标主机之间的路由信息。
常用选项:
选项 | 说明 |
---|---|
-n | 以数字格式显示路径 |
示例命令:
traceroute google.com # 显示到 google.com 的路由路径
26. tty
tty
命令用于显示终端设备文件名。
示例命令:
tty # 显示终端设备文件名
27. newaliases
newaliases
命令用于重建邮件别名数据库。
示例命令:
newaliases # 重建邮件别名数据库
28. uuname
uuname
命令用于显示已知的 UUCP 系统名称。
示例命令:
uuname # 显示 UUCP 系统名称
29. netconf
netconf
命令用于配置网络。
示例命令:
netconf # 启动网络配置向导
30. write
write
命令用于向其他用户发送消息。一般在终端上运行,用于短消息通信。
常用选项:
无特别选项,直接指定用户名即可。
示例命令:
write username # 向特定用户发送消息
# 这时你可以输入你要发送的消息,按 Ctrl+D 结束
31. statserial
statserial
命令用于显示串行线路的状态。
示例命令:
statserial /dev/ttyS0 # 显示串行端口 ttyS0 的状态
32. efax
efax
命令用于发送和接收传真。
示例命令:
efax -d /dev/ttyS1 -t 5551234 # 通过 ttyS1 发送传真到 5551234
33. pppsetup
pppsetup
命令用于配置 PPP 连接。
示例命令:
pppsetup # 启动 PPP 连接设置向导
34. tcpdump
tcpdump
命令用于捕获和分析网络流量。
常用选项:
选项 | 说明 |
---|---|
-i | 指定接口 |
-n | 不解析主机名 |
-c | 指定捕获的包数量 |
-w | 将包写入文件 |
-r | 从文件读取包 |
示例命令:
tcpdump -i eth0 # 捕获 eth0 接口上的所有流量
tcpdump -c 10 -i eth0 # 捕获 eth0 接口上的前 10 个数据包
tcpdump -w output.pcap -i eth0 # 将流量写入到 output.pcap 文件
35. ytalk
ytalk
命令用于和一个或多个用户进行实时对话。
示例命令:
ytalk username # 启动与特定用户的对话
36. cu
cu
命令用于呼叫另一个系统;它提供在两个系统之间的串行连接。
示例命令:
cu -l /dev/ttyS0 # 通过 ttyS0 呼叫远程系统
37. smbd
smbd
命令是 Samba 服务器守护进程,用于处理文件共享和打印服务。
示例命令:
smbd # 启动 smbd 守护进程
38. testparm
testparm
命令用于检查 Samba 配置文件的有效性。
示例命令:
testparm # 检查 smb.conf 配置文件的有效性
39. smbclient
smbclient
命令是一个类似于 ftp 的 Samba 客户端工具,用于访问 Windows 共享文件夹。
常用选项:
选项 | 说明 |
---|---|
-L | 列出共享资源及其状态 |
-U | 使用指定用户 |
示例命令:
smbclient -L //server/share -U username # 以指定用户列出服务器上的共享资源
40. shapecfg
shapecfg
命令用于配置流量整形参数。
示例命令:
shapecfg set dev eth0 # 设置 eth0 的流量整形参数
第7章:系统管理
1. adduser
adduser
命令用于添加新用户。
示例命令:
adduser newuser # 添加名为 newuser 的用户
2. chfn
chfn
命令用于更改用户的真实姓名和其它信息。
示例命令:
chfn username # 更改指定用户的信息
3. useradd
useradd
命令用于添加新用户。
常用选项:
选项 | 说明 |
---|---|
-m | 创建用户主目录 |
-d | 指定主目录 |
-s | 指定登录 shell |
-G | 指定附加组 |
-u | 指定用户 ID |
示例命令:
useradd -m -s /bin/bash newuser # 添加新用户并创建主目录
4. date
date
命令用于显示或设置系统日期和时间。
常用选项:
选项 | 说明 |
---|---|
-s | 设置日期和时间 |
+FORMAT | 以指定格式显示日期和时间 |
示例命令:
date # 显示当前日期和时间
date -s "2023-10-01 12:34:56" # 设置日期和时间
5. exit
exit
命令用于退出当前 shell 或终止进程。
示例命令:
exit # 退出当前 shell
exit 0 # 以状态码 0 退出
6. finger
finger
命令用于显示用户的信息。
示例命令:
finger username # 显示指定用户的信息
7. fw
fw
通 常 用 于 防 火 墙 配 置, 但 常 见 实 现 不 同。
示 例 命 令:
fw status # 显 示 防 火 墙 状 态
fw enable # 启 用 防 火 墙
8. hios
hios
is a hypothetical command and does not correspond to a standard Linux command.
9. sleep
sleep
命令用于暂停执行一段时间。
示例命令:
sleep 5 # 暂停 5 秒
sleep 1h # 暂停 1 小时
10. suspend
suspend
命令用于挂起当前 shell。
示例命令:
suspend # 挂起当前 shell
11. groupdel
groupdel
命令用于删除组。
示例命令:
groupdel groupname # 删除指定组
12. groupmod
groupmod
命令用于修改组的属性。
常用选项:
选项 | 说明 |
---|---|
-n | 新名称 |
-g | 新 GID |
示例命令:
groupmod -n newname oldname # 修改组名
13. halt
halt
命令用于关闭系统。
示例命令:
halt # 关闭系统
14. kill
kill
命令用于向进程发送信号,通常用于终止进程。
常用选项:
选项 | 说明 |
---|---|
-9 | 强制终止 |
-SIGKILL | 发送 SIGKILL 信号 |
示例命令:
kill PID # 终止指定 PID 的进程
kill -9 PID # 强制终止进程
15. last
last
命令用于显示最近的登录记录。
常用选项:
选项 | 说明 |
---|---|
-n | 显示最近的 N 条记录 |
-R | 禁用主机解析 |
示例命令:
last # 显示最近的登录记录
last -n 10 # 显示最近的 10 条记录
16. lastb
lastb
命令用于显示登录失败记录,通常需要 root 权限。
示例命令:
lastb # 显示登录失败记录
17. login
login
命令用于登录到系统。
示例命令:
login # 启动登录过程
18. logname
logname
命令用于显示当前登录用户的用户名。
示例命令:
logname # 显示当前登录用户名
19. logout
logout
命令用于注销当前会话。
示例命令:
logout # 注销当前会话
20. ps
ps
命令用于显示当前进程状态。
常用选项表:
选项 | 说明 |
---|---|
-e | 显示所有进程 |
-f | 显示完整格式 |
-u | 显示特定用户的进程 |
-aux | 显示所有用户的进程和额外信息 |
示例命令:
ps # 显示当前终端的进程
ps -aux # 显示所有进程的详细信息
ps -e | grep process_name # 搜索特定名称的进程
21. nice
nice
命令用于修改进程的优先级。
常用选项表:
选项 | 说明 |
---|---|
-n | 指定调整优先级的数值 |
示例命令:
nice -n 10 command # 以较低优先级运行命令
22. procinfo
procinfo
命令用于显示系统状态信息。
示例命令:
procinfo # 显示系统状态信息
23. top
top
命令实时显示系统进程。
示例命令:
top # 启动 top 实时显示进程信息,按 q 退出
24. pstree
pstree
命令以树状图显示进程的层次结构。
常用选项:
选项 | 说明 |
---|---|
-p | 显示进程 PID |
-u | 显示进程拥有者 |
示例命令:
pstree # 以树状图显示进程层次结构
pstree -p # 显示进程的 PID
25. reboot
reboot
命令用于重启系统。
示例命令:
reboot # 重启系统
26. rlogin
rlogin
命令用于远程登录到一个主机。
示例命令:
rlogin hostname # 远程登录到主机
rlogin -l user hostname # 以指定用户远程登录
27. rsh
rsh
命令用于在远程主机上执行命令。
示例命令:
rsh hostname command # 在远程主机上执行命令
rsh -l user hostname command # 以指定用户在远程主机上执行命令
28. sliplogin
sliplogin
命令用于配置 SLIP 链接。
示例命令:
sliplogin user # 启动 SLIP 链接
29. screen
screen
命令是一个多重窗口管理器,允许在一个单一的终端上管理多个会话。
常用选项:
选项 | 说明 |
---|---|
-S | 指定会话名称 |
-d | 分离会话 |
-r | 重新连接会话 |
示例命令:
screen -S mysession # 创建名为 mysession 的会话
screen -list # 列出所有会话
screen -r mysession # 重新连接到 mysession
30. shutdown
shutdown
命令用于关闭系统。
常用选项:
选项 | 说明 |
---|---|
-h | 关机 |
-r | 重启 |
-c | 取消关闭 |
-t | 指定延迟时间 |
示例命令:
shutdown -h now # 立即关机
shutdown -r now # 立即重启
shutdown -h +10 "Shutdown in 10 minutes" # 10 分钟后关机并广播消息
shutdown -c # 取消计划中的关机
31. rwho
rwho
命令用于显示当前网络中所有已登录用户的信息。
示例命令:
rwho # 显示当前网络中所有已登录用户的信息
32. sudo
sudo
命令允许以其他用户(通常是 root 用户)权限运行命令。
常用选项:
选项 | 说明 |
---|---|
-u | 指定要切换的用户 |
-s | 启动一个新的 shell |
-l | 列出用户可以使用的命令 |
示例命令:
sudo command # 以 root 权限运行指定命令
sudo -u username command # 以指定用户权限运行命令
sudo -s # 启动一个 root shell
33. gitps
gitps
是一个命令行工具,用于显示当前进程状态(类似于 ps
命令,但有更多选择)。
示例命令:
gitps # 显示当前进程状态
34. swatch
swatch
是一个实时日志监控和过滤工具。
示例命令:
swatch --config-file=/path/to/config --tail-file=/var/log/syslog
35. tload
tload
命令在终端窗口中以图形形式显示系统负载。
常用选项:
选项 | 说明 |
---|---|
-d | 指定刷新间隔(以秒为单位) |
示例命令:
tload -d 2 # 每两秒刷新一次负载图
36. logrotate
logrotate
命令用于管理系统日志文件的轮转。
示例命令:
logrotate /etc/logrotate.conf # 使用指定配置文件进行日志轮转
37. uname
uname
命令用于显示系统信息。
常用选项:
选项 | 说明 |
---|---|
-a | 显示所有信息 |
-r | 显示内核版本 |
-n | 显示系统主机名 |
-m | 显示硬件架构 |
示例命令:
uname -a # 显示所有系统信息
uname -r # 显示内核版本
38. chsh
chsh
命令用于更改用户的默认 shell。
示例命令:
chsh # 启动交互式 shell 更改提示
chsh -s /bin/zsh # 将默认 shell 更改为 zsh
39. userconf
userconf
是一个假设的命令,不对应于标准的 Linux 命令。
40. userdel
userdel
命令用于删除用户账户。
常用选项:
选项 | 说明 |
---|---|
-r | 同时删除用户的主目录 |
示例命令:
userdel username # 删除用户账户
userdel -r username # 删除用户账户及其主目录
41. usermod
usermod
命令用于修改用户账户属性。
常用选项:
选项 | 说明 |
---|---|
-c | 更改用户的备注信息 |
-d | 更改用户的主目录 |
-s | 更改用户的登录 shell |
-G | 更改用户附加组 |
-L | 锁定用户账户 |
示例命令:
usermod -c "New Comment" username # 修改用户的备注信息
usermod -d /new/home username # 修改用户的主目录
usermod -s /bin/bash username # 修改用户的登录 shell
42. vlock
vlock
命令用于锁定当前会话。
示例命令:
vlock # 锁定当前会话
43. who
who
命令用于显示当前登录用户的信息。
常用选项:
选项 | 说明 |
---|---|
-u | 显示用户进程信息 |
示例命令:
who # 显示当前登录用户的信息
who -u # 显示用户进程信息
44. whoami
whoami
命令用于显示当前登录用户的用户名。
示例命令:
whoami # 显示当前登录用户名
45. whois
whois
命令用于查询域名注册信息。
示例命令:
whois example.com # 查询 example.com 的域名注册信息
46. newgrp
newgrp
命令用于切换用户的默认组。
示例命令:
newgrp groupname # 切换到新组
47. renice
renice
命令用于修改运行中进程的优先级。
常用选项:
选项 | 说明 |
---|---|
-p | 指定进程 |
-u | 按用户指定同一个值给所有进程 |
-g | 按进程组指定 |
示例命令:
renice 10 -p 1234 # 修改 PID 为 1234 的进程优先级
48. su
su
命令用于切换用户身份。
常用选项:
选项 | 说明 |
---|---|
- | 切换到用户的环境 |
-c | 执行指定的命令 |
示例命令:
su # 切换到 root 用户
su - username # 切换到指定用户
su -c "command" username # 以指定用户执行命令
49. skill
skill
命令用于向进程发送信号,可以批量操作。
常用选项:
选项 | 说明 |
---|---|
-9 | 发送 SIGKILL 信号 |
-u | 按用户发送信号 |
示例命令:
skill -u username # 向指定用户所有进程发送信号
50. w
w
命令用于显示已登录用户及其正在执行的进程的信息。
示例命令:
w # 显示已登录用户及其活动
51. id
id
命令用于显示用户的 uid、gid 及其所属组信息。
常用选项:
选项 | 说明 |
---|---|
-u | 显示用户 ID |
-g | 显示组 ID |
-G | 显示所有组 ID |
示例命令:
id # 显示当前用户的 uid、gid 及其所属组信息
id -u # 显示当前用户的 uid
52. groupadd
groupadd
命令用于创建新组。
常用选项:
选项 | 说明 |
---|---|
-g | 指定组 ID |
-r | 创建系统组 |
示例命令:
groupadd newgroup # 创建名为 newgroup 的组
groupadd -g 1001 newgroup # 创建指定 GID 的组
53. free
free
命令用于显示系统内存的使用情况。
常用选项:
选项 | 说明 |
---|---|
-h | 以人类可读格式显示 |
-t | 显示内存总和 |
示例命令:
free -h # 以人类可读格式显示内存信息
free -t # 显示内存总和
第8章:系统设置
1. reset
reset
命令用于重置终端。
示例命令:
reset # 重置当前终端
2. clear
clear
命令用于清屏,清除当前终端显示的所有内容。
示例命令:
clear # 清屏
3. alias
alias
命令用于定义命令的别名。
示例命令:
选项 | 说明 |
---|---|
-p | 列出所有别名 |
示例命令:
alias ll='ls -la' # 定义 ll 为 ls -la 的别名
alias # 列出所有别名
alias -p # 列出所有别名及其定义
4. dircolors
dircolors
命令用于设置 ls
命令的颜色设置。
示例命令:
dircolors # 显示当前 dircolors 设置
eval "$(dircolors -b)" # 应用 dircolors 设置
5. aumix
aumix
命令用于音频混音器设置。
示例命令:
aumix # 启动交互式混音器界面
aumix -v 50 # 设置主音量为 50%
6. bind
bind
命令用于绑定键盘快捷键到 readline 函数。
示例命令:
bind 'BEGIN: "echo Hello, world!"' # 绑定快捷键到命令
7. chroot
chroot
命令用于更改根目录。
常用选项:
选项 | 说明 |
---|---|
–userspec | 指定用户和组 |
示例命令:
chroot /new/root # 更改根目录
chroot --userspec=username:group /new/root # 以指定用户和组更改根目录
8. clock
clock
命令用于设置或显示系统硬件时钟。
常用选项:
选项 | 说明 |
---|---|
-r | 显示硬件时钟时间 |
-s | 设置系统时间 |
示例命令:
clock -r # 显示硬件时钟时间
clock -w # 将系统时间写入硬件时钟
9. crontab
crontab
命令用于定时任务管理。
常用选项:
选项 | 说明 |
---|---|
-l | 列出现有的定时任务 |
-e | 编辑定时任务 |
-r | 删除定时任务 |
示例命令:
crontab -l # 列出现有的定时任务
crontab -e # 编辑定时任务
crontab -r # 删除定时任务
10. declare
declare
命令用于声明变量。
常用选项:
选项 | 说明 |
---|---|
-a | 声明数组类型 |
-x | 声明为环境变量 |
示例命令:
declare -a array # 声明数组
declare -x var=value # 声明环境变量
11. depmod
depmod
命令用于生成模块依赖文件。
示例命令:
选项 | 说明 |
---|---|
-a | 生成文件 |
-n | 仅显示,不生成文件 |
示例命令:
depmod -a # 生成模块依赖文件
12. dmesg
dmesg
命令显示内核环缓冲区中的消息。
常用选项:
选项 | 说明 |
---|---|
-c | 清除缓冲区 |
示例命令:
dmesg # 显示内核消息
dmesg -c # 显示并清除内核消息
13. enable
enable
命令用于启动或禁用 shell 内置命令。
常用选项:
选项 | 说明 |
---|---|
-n | 禁用命令 |
示例命令:
enable -n command # 禁用指定命令
enable command # 启用指定命令
14. eval
eval
命令用于解析并执行命令。
示例命令:
eval "ls -l" # 执行 ls -l 命令
15. export
export
命令用于设定环境变量。
示例命令:
export VAR=value # 设置环境变量 VAR
16. pwunconv
pwunconv
命令用于取消密码影子文件。
示例命令:
sudo pwunconv # 取消密码影子文件
17. grpconv
grpconv
命令用于转换组文件到影子组文件。
示例命令:
sudo grpconv # 转换组文件到影子组文件
18. rpm
rpm
命令用于管理 RPM 包文件。
常用选项:
选项 | 说明 |
---|---|
-i | 安装软件包 |
-e | 卸载软件包 |
-U | 更新软件包 |
-q | 查询软件包 |
示例命令:
rpm -i package.rpm # 安装软件包
rpm -e package # 卸载软件包
rpm -q package # 查询软件包
19. insmod
insmod
命令用于插入内核模块。
示例命令:
sudo insmod module.ko # 插入内核模块
20. kbdconfig
kbdconfig
命令用于配置键盘。
示例命令:
kbdconfig # 运行键盘配置工具
21. lilo
lilo
命令用于安装 LILO 引导加载程序。
示例命令:
sudo lilo # 安装 LILO
22. liloconfig
liloconfig
命令用于配置 LILO 引导加载程序。
示例命令:
liloconfig # 运行 LILO 配置工具
23. lsmod
lsmod
命令用于显示内核加载的模块信息。
示例命令:
lsmod # 显示内核模块信息
24. minfo
minfo
命令用于显示 MS-DOS 文件系统的信息。
示例命令:
minfo a: # 显示 MS-DOS 文件系统信息
25. set
set
命令用于设置 shell 选项及显示当前 shell 变量。
常用选项:
选项 | 说明 |
---|---|
-o | 启用或禁用 shell 选项 |
示例命令:
set # 显示当前 shell 变量
set -o vi # 启用 vi 模式
26. modprobe
modprobe
命令用于加载和卸载内核模块,并自动处理其依赖关系。
常用选项:
选项 | 说明 |
---|---|
-r | 卸载模块 |
-v | 显示详细信息 |
-l | 列出所有可用模块 |
示例命令:
sudo modprobe module_name # 加载内核模块
sudo modprobe -r module_name # 卸载内核模块
modprobe -l # 列出所有可用模块
27. ntsysv
ntsysv
命令用于在 System V init 中启用或禁用服务。
示例命令:
sudo ntsysv # 启动 System V init 服务配置工具
28. mouseconfig
mouseconfig
命令用于配置鼠标设备。
示例命令:
sudo mouseconfig # 运行鼠标配置工具
29. passwd
passwd
命令用于更改用户密码。
常用选项:
选项 | 说明 |
---|---|
-l | 锁定账户 |
-u | 解锁账户 |
-d | 删除密码 |
示例命令:
passwd # 更改当前用户的密码
sudo passwd username # 更改指定用户的密码
sudo passwd -l username # 锁定指定用户的账户
sudo passwd -u username # 解锁指定用户的账户
30. pwconv
pwconv
命令用于创建影子密码文件,并从 /etc/passwd 中移动密码到 /etc/shadow。
示例命令:
sudo pwconv # 创建影子密码文件
31. pwconv
pwunconv
命令用于取消影子密码文件并将密码移回 /etc/passwd。
示例命令:
sudo pwunconv # 取消影子密码文件
32. parity
工具设定和处理。
示例命令:
不对应特定 Linux 命令
33. ldconfig
ldconfig
命令用于配置动态链接共享库的缓存。
常用选项:
选项 | 说明 |
---|---|
-v | 显示详细信息 |
-p | 列出当前缓存的库 |
示例命令:
sudo ldconfig # 更新动态链接库缓存
ldconfig -v # 显示详细信息
ldconfig -p # 列出当前缓存的库
34. pwconv
pwconv
命令用于创建影子密码文件。
示例命令:
sudo pwconv # 创建影子密码文件
35. smbd
smbd
是 Samba 服务器守护进程。
常用选项:
smbd # 启动 smbd 守护进程
36. modinfo
modinfo
命令用于显示内核模块的信息。
常用选项:
选项 | 说明 |
---|---|
-a | 显示模块的作者 |
-d | 显示模块的描述 |
-p | 显示模块的参数 |
示例命令:
modinfo module_name # 显示内核模块的信息
37. time
time
命令用于统计命令的执行时间。
示例命令:
time command # 统计命令执行时间
38. setup
setup
命令用于运行系统设置工具。
示例命令:
setup # 运行系统设置工具
39. sndconfig
sndconfig
命令用于配置声卡。
示例命令:
sudo sndconfig # 配置声卡
40. setenv
setenv
命令用于设置环境变量。
示例命令:
setenv VAR value # 设置环境变量 VAR
41. setconsole
setconsole
命令用于设置控制台设备。
示例命令:
setconsole /dev/ttyS0 # 设置控制台设备
42. timeconfig
timeconfig
命令用于配置时区。
示例命令:
sudo timeconfig # 配置时区
43. ulimit
ulimit
命令用于限制用户进程使用的系统资源。
常用选项:
选项 | 说明 |
---|---|
-a | 显示所有限制 |
-c | 限制核心文件大小 |
-f | 限制文件大小 |
-n | 限制打开的文件描述符数量 |
示例命令:
ulimit -a # 显示所有限制
ulimit -n 1024 # 设置打开的文件描述符数量限制为 1024
44. unset
unset
命令用于删除环境变量或 shell 变量。
示例命令:
unset VAR # 删除变量 VAR
45. chkconfig
chkconfig
命令用于在不同运行级别启用或禁用系统服务。
常用选项:
选项 | 说明 |
---|---|
–list | 列出所有服务及其状态 |
–level | 指定运行级别 |
示例命令:
chkconfig --list # 列出所有服务及其状态
chkconfig httpd on # 启用 httpd 服务
46. apmd
apmd
命令用于启动高级电源管理守护进程。
示例命令:
sudo apmd # 启动 APMD 守护进程
47. hwclock
hwclock
命令用于读取和设置硬件时钟。
常用选项:
选项 | 说明 |
---|---|
-r | 读取硬件时钟 |
-w | 将系统时间写入硬件时钟 |
示例命令:
hwclock -r # 读取硬件时钟
hwclock -w # 将系统时间写入硬件时钟
48. mkkickstart
mkkickstart
是一个 hypothetic 命令,不存在于标准 Linux 系统中。
49. fbset
fbset
命令用于显示或设置帧缓冲设备。
示例命令:
fbset # 显示当前帧缓冲设置
sudo fbset -xres 1024 -yres 768 # 设置帧缓冲分辨率为 1024x768
50. unalias
unalias
命令用于删除已定义的别名。
常用选项:
选项 | 说明 |
---|---|
-a | 删除所有别名 |
示例命令:
unalias ll # 删除名为 ll 的别名
unalias -a # 删除所有别名
51. SVGATextMode
SVGATextMode
命令用于设置 SVGATextMode。但不再是常用工具。
常用选项:
SVGATextMode restore # 恢复 SVGATextMode
52. gpasswd
gpasswd
命令用于管理群组文件。
常用选项:
选项 | 说明 |
---|---|
-a | 添加用户到组 |
-d | 从组中删除用户 |
示例命令:
sudo gpasswd -a username group # 将用户添加到组
sudo gpasswd -d username group # 将用户从组中删除
第9章:备份压缩
1. ar
ar
命令用于创建、修改和提取归档文件。
常用选项:
选项 | 说明 |
---|---|
-c | 创建归档 |
-r | 插入文件到归档 |
-x | 提取文件 |
示例命令:
ar -c archive.a file1 file2 # 创建归档并添加文件
ar -r archive.a file3 # 向归档中添加文件
ar -x archive.a # 提取归档文件
2. bunzip2
bunzip2
命令用于解压缩 .bz2 文件。
示例命令:
bunzip2 file.bz2 # 解压缩 .bz2 文件
3. bzip2
bzip2
命令用于压缩文件。
示例命令:
bzip2 file # 压缩文件
4. bzip2recover
bzip2recover
命令用于恢复损坏的 .bz2 文件。
示例命令:
bzip2recover file.bz2 # 恢复 .bz2 文件
5. gunzip
gunzip
命令用于解压缩 .gz 文件。
示例命令:
gunzip file.gz # 解压缩 .gz 文件
6. unarj
unarj
命令用于解压缩 .arj 文件。
示例命令:
unarj e archive.arj # 解压缩 .arj 文件
7. compress
compress
命令用于压缩文件。
示例命令:
compress file # 压缩文件
8. cpio
cpio
命令用于创建归档文件或从归档文件中提取文件。
常用选项:
选项 | 说明 |
---|---|
-o | 创建归档 |
-i | 从归档文件中提取文件 |
-p | 复制文件到新位置 |
示例命令:
find . -print | cpio -ov > archive.cpio # 创建归档
cpio -id < archive.cpio # 提取归档文件
9. dump
dump
命令用于备份文件系统。
常用选项:
选项 | 说明 |
---|---|
-0 | 完全备份 |
-u | 备份后更新 /etc/dumpdates |
示例命令:
dump -0u -f /dev/tape /home # 完全备份 /home 目录到磁带
10. uuencode
uuencode
命令用于对二进制文件进行编码,以便通过电子邮件传输。
示例命令:
uuencode file file.uue # 编码文件
11. gzexe
gzexe
命令用于压缩可执行文件。
示例命令:
gzexe file # 压缩可执行文件
12. gzip
gzip
命令用于压缩文件。
常用选项:
选项 | 说明 |
---|---|
-d | 解压缩 |
-c | 将输出写到标准输出 |
-r | 递归压缩目录中的文件 |
示例命令:
gzip file # 压缩文件
gzip -d file.gz # 解压缩文件
13. lha
lha
命令用于创建和解压缩 .lha 归档文件。
示例命令:
lha x archive.lha # 解压缩 .lha 归档文件
14. restore
restore
命令用于从 dump 备份中还原文件系统。
常用选项:
选项 | 说明 |
---|---|
-r | 还原整个文件系统 |
-t | 列出备份内容 |
示例命令:
restore -r -f /dev/tape # 还原整个文件系统
restore -t -f /dev/tape # 列出备份内容
15. tar
tar
命令用于创建、管理和解压归档文件。
常用选项:
选项 | 说明 |
---|---|
-c | 创建归档 |
-x | 提取归档 |
-v | 显示过程详细信息 |
-f | 指定归档文件 |
-z | 使用 gzip 压缩 |
-j | 使用 bzip2 压缩 |
示例命令:
tar -cvf archive.tar files/ # 创建未压缩的 tar 归档
tar -xvf archive.tar # 提取未压缩的 tar 归档
tar -czvf archive.tar.gz files/ # 创建 gzip 压缩的 tar 归档
tar -xzvf archive.tar.gz # 提取 gzip 压缩的 tar 归档
tar -cjvf archive.tar.bz2 files/ # 创建 bzip2 压缩的 tar 归档
tar -xjvf archive.tar.bz2 # 提取 bzip2 压缩的 tar 归档
16. uudecode
uudecode
命令用于解码 uudecode 文件。
示例命令:
uudecode file.uue # 解码 uudecode 文件
17. unzip
unzip
命令用于解压缩 .zip 文件。
示例命令:
unzip archive.zip # 解压缩 .zip 文件
18. zip
zip
命令用于创建 .zip 文件。
常用选项:
选项 | 说明 |
---|---|
-r | 递归处理目录 |
-9 | 最大压缩 |
示例命令:
zip -r archive.zip files/ # 创建 .zip 归档文件
19. zipinfo
zipinfo
命令用于显示 .zip 文件的详细信息。
示例命令:
zipinfo archive.zip # 显示 .zip 归档文件的详细信息
第10章:设备管理
1. setleds
setleds
命令用于设置键盘 LED 状态。
常用选项:
选项 | 说明 |
---|---|
+scroll | 启用滚动锁定 |
+num | 启用数字锁定 |
+caps | 启用大写锁定 |
示例命令:
sudo setleds +scroll +num +caps # 启用所有锁定键
2. loadkeys
loadkeys
命令用于加载或修改键盘映射表。
示例命令:
sudo loadkeys us # 加载美国键盘映射表
3. rdev
rdev
命令用于查看或修改根文件系统设备设置。
示例命令:
sudo rdev /dev/sda1 # 设置根文件系统为 /dev/sda1
4. dumpkeys
dumpkeys
命令用于显示当前的键盘映射表。
示例命令:
dumpkeys # 显示当前键盘映射表
5. MAKEDEV
MAKEDEV
命令用于创建设备文件。
示例命令:
sudo MAKEDEV sda # 创建 /dev/sda 设备文件
6. poweroff
poweroff
命令用于关闭系统电源。
示例命令:
sudo poweroff # 关闭系统电源
第11章:其他命令
1. bc
bc
命令是一个命令行计算器,支持高级数学功能。
常用选项:
选项 | 说明 |
---|---|
-l | 启用标准数学库(如数学函数 sin |
, cos | |
, sqrt | |
) |
示例命令:
bc # 进入 bc 计算器
# 在 bc 中输入以下内容进行计算:
1 + 1 # 输出计算结果:2
scale=4 # 设置小数位数精度为 4
3.1415 * 2 # 输出计算结果:6.2830
quit # 退出 bc 计算器
使用标准数学库:
bc -l # 启用标准数学库
2. tail
tail
命令用于输出文件的最后部分,常用于查看日志。
常用选项:
选项 | 说明 |
---|---|
-n | 指定行数 |
-f | 持续输出文件新内容 |
示例命令:
tail -n 10 file.txt # 输出文件最后 10 行
tail -f /var/log/syslog # 持续输出 syslog 的新内容
3. head
head
命令用于输出文件的开头部分。
常用选项:
选项 | 说明 |
---|---|
-n | 指定行数 |
-c | 指定字符数 |
示例命令:
head -n 10 file.txt # 输出文件的前 10 行
head -c 100 file.txt # 输出文件的前 100 个字符
4. xargs
xargs
命令用于将标准输入的数据作为参数传递给命令。
常用选项:
选项 | 说明 |
---|---|
-n | 指定每行传递的参数数量 |
-I | 替换字符串 |
示例命令:
cat list.txt | xargs echo # 将 list.txt 中的每一行作为参数传给 echo
find . -name "*.txt" | xargs rm # 删除当前目录及子目录中的所有 .txt 文件
echo "file1 file2 file3" | xargs -n 1 echo # 每行一个参数传给 echo
echo "file1 file2 file3" | xargs -I {} mv {} /newpath/ # 替换字符串
5. ip
ip
命令用于管理网络接口、路由表、隧道等。
常用选项:
选项 | 说明 |
---|---|
addr | 显示/管理 IP 地址 |
link | 显示/管理网络接口 |
route | 显示/管理路由表 |
示例命令:
ip addr show # 显示所有网络接口的 IP 地址
ip link show # 显示网络接口信息
ip route show # 显示路由表
ip addr add 192.168.1.2/24 dev eth0 # 给网络接口 eth0 添加 IP 地址
ip link set eth0 up # 启用网络接口 eth0
ip link set eth0 down # 禁用网络接口 eth0
6. nohup
nohup
命令用于忽略挂起信号(HUP),常用于进程在后台运行并且不被关闭。
示例命令:
nohup command & # 忽略挂起信号,后台运行 command
nohup ./script.sh & # 忽略挂起信号,后台运行脚本 script.sh
重定向输出:
nohup command > output.log 2>&1 & # 忽略挂起信号,后台运行 command,并将输出重定向到 output.log
7. killall
killall
命令用于终止指定名称的所有进程。
常用选项:
选项 | 说明 |
---|---|
-9 | 强制终止进程 |
示例命令:
killall command # 终止所有名称为 command 的进程
killall -9 command # 强制终止所有名称为 command 的进程
killall -u username # 终止特定用户的所有进程
8. pkill
pkill
命令用于通过进程名或其他属性终止进程。
常用选项:
选项 | 说明 |
---|---|
-9 | 强制终止进程 |
-u | 按用户终止进程 |
-f | 按进程命令行终止进程 |
示例命令:
pkill process_name # 终止所有名称为 process_name 的进程
pkill -9 process_name # 强制终止所有名称为 process_name 的进程
pkill -u username # 终止特定用户的所有进程
pkill -f "command with args" # 按进程命令行匹配并终止进程
9. man
man
命令用于查看命令的手册页。
示例命令:
man command # 显示 command 的手册页
man man # 显示 man 命令自身的手册页
man 5 passwd # 显示第五章内容, /etc/passwd 文件的手册页
查找命令:
man -k keyword # 按关键字搜索手册页
免费下载Linux命令大全pdf电子书
在微信搜索公众号:Alex技术圈
或者 AlexTechVision
,关注公众号后回复:Linux命令大全
即可免费下载。