基础命令
- 获取登录信息 - w / who / last/ lastb。
- 查看自己使用的Shell - ps。
- 查看命令的说明和位置 - whatis / which / whereis。
- 清除屏幕上显示的内容 - clear。
- 查看帮助文档 - man / info / help / apropos。
- 查看系统和主机名 - uname / hostname。
- 时间和日期 - date / cal。
- 重启和关机 - reboot / shutdown。
如cnetos7:shutdown -h now - 退出登录 - exit / logout。
- 查看历史命令 - history。
文件操作
- 创建/删除空目录 - mkdir / rmdir。
- 创建/删除文件 - touch / rm。
touch命令用于创建空白文件或修改文件时间。在Linux系统中一个文件有三种时间
更改内容的时间 - mtime。
更改权限的时间 - ctime。
最后访问时间 - atime。
rm的几个重要参数:
-i:交互式删除,每个删除项都会进行询问。
-r:删除目录并递归的删除目录中的文件和目录。
-f:强制删除,忽略不存在的文件,没有任何提示。 - 切换和查看当前工作目录 - cd / pwd。
- 查看目录内容 - ls。
-l:以长格式查看文件和目录。
-a:显示以点开头的文件和目录(隐藏文件)。
-R:遇到目录要进行递归展开(继续列出目录下面的文件和目录)。
-d:只列出目录,不列出其他内容。
-S / -t:按大小/时间排序。 - 查看文件内容 - cat / tac / head / tail / more / less / rev / od。
- 拷贝/移动文件 - cp / mv。
- 文件重命名 - rename。
- 查找文件和查找内容 - find / grep。
- 创建链接和查看链接 - ln / readlink。
- 压缩/解压缩和归档/解归档 - gzip / gunzip / xz。
- 归档和解归档 - tar。
- 将标准输入转成命令行参数 - xargs。
命令会将查找当前路径下的html文件,然后通过xargs将这些文件作为参数传给rm命令,实现查找并删除文件的操作。
]# find . -type f -name "*.html" | xargs rm -f
下面的命令将a.txt文件中的多行内容变成一行输出到b.txt文件中,其中<表示从a.txt中读取输入,>表示将命令的执行结果输出到b.txt中。
]# xargs < a.txt > b.txt
- 显示文件或目录 - basename / dirname。
- 其他工具
sort - 对内容排序
uniq - 去掉相邻重复内容
tr - 替换指定内容为新内容
cut / paste - 剪切/黏贴内容
split - 拆分文件
file - 判断文件类型
wc - 统计文件行数、单词数、字节数
iconv - 编码转换
文本处理
- 字符流编辑器 - sed,操作、过滤和转换文本内容的工具。
[root ~]# sed '2a p' file.txt 添加a
[root ~]# sed '2,4d' file.txt 删除2-4行
[root ~]# sed '2i wa' file.txt 插入wa
[root ~]# sed 's#a#@#g' file.txt 替换a为@,全局模式
管道和重定向
- 输出重定向和错误重定向 - > / >> / 2>
- 输入重定向 - <
- 管道的使用 - |
- 多重定向 - tee
用户管理
- 创建和删除用户 - useradd / userdel。
-d - 创建用户时为用户指定用户主目录
-g - 创建用户时指定用户所属的用户组 - 创建和删除用户组 - groupadd / groupdel。
- 修改密码 - passwd。
-l / -u - 锁定/解锁用户。
-d - 清除用户密码。
-e - 设置密码立即过期,用户登录时会强制要求修改密码。
-i - 设置密码过期多少天以后禁用该用户。 - 查看和修改密码有效期 - chage。
- 切换用户 - su。
- 以管理员身份执行命令 - sudo。
- 编辑sudoers文件 - visudo。
- 显示用户与用户组的信息 - id。
- 给其他用户发消息 -write / wall。
发送
[root ~]# write hellokitty
Dinner is on me.
Call me at 6pm.
接收
[he ~]$
Message from root on pts/0 at 17:41 ...
Dinner is on me.
Call me at 6pm.
EOF
- 查看/设置是否接收其他用户发送的消息 - mesg。
文件系统知识
/bin - 基本命令的二进制文件。
/boot - 引导加载程序的静态文件。
/dev - 设备文件。
/etc - 配置文件。
/home - 普通用户主目录的父目录。
/lib - 共享库文件。
/lib64 - 共享64位库文件。
/lost+found - 存放未链接文件。
/media - 自动识别设备的挂载目录。
/mnt - 临时挂载文件系统的挂载点。
/opt - 可选插件软件包安装位置。
/proc - 内核和进程信息。
/root - 超级管理员用户主目录。
/run - 存放系统运行时需要的东西。
/sbin - 超级用户的二进制文件。
/sys - 设备的伪文件系统。
/tmp - 临时文件夹。
/usr - 用户应用目录。
/var - 变量数据目录。
访问权限
chmod - 改变文件模式比特。
chown - 改变文件所有者。
chgrp - 改变用户组。
磁盘管理
列出文件系统的磁盘使用状况 - df。
[root ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 5.0G 33G 14% /
devtmpfs 486M 0 486M 0% /dev
tmpfs 497M 0 497M 0% /dev/shm
tmpfs 497M 356K 496M 1% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
tmpfs 100M 0 100M 0% /run/user/0
磁盘分区表操作 - fdisk。
[root ~]# fdisk -l
Disk /dev/vda: 42.9 GB, 42949672960 bytes, 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000a42f4
Device Boot Start End Blocks Id System
/dev/vda1 * 2048 83884031 41940992 83 Linux
Disk /dev/vdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
磁盘分区工具 - parted。
格式化文件系统 - mkfs。
[root ~]# mkfs -t ext4 -v /dev/sdb
-t - 指定文件系统的类型。
-c - 创建文件系统时检查磁盘损坏情况。
-v - 显示详细信息。
文件系统检查 - fsck。
转换或拷贝文件 - dd。
挂载/卸载 - mount / umount。
创建/激活/关闭交换分区 - mkswap / swapon / swapoff。