目录
-
用户管理
- 列出用户:cat /etc/passwd 或者 getent passwd,原理是用户信息存放在 /etc/passwd 文件中;
- 说明:显示的信息为:用户名:x:用户ID:用户群组ID:用户备注:用户目录:用户登录的shell
- 显示单个用户资料:cat /etc/passwd | grep username ,原理是关键字搜寻
- 例:cat /etc/passwd|grep isaac 显示:isaac:x:9986:99::/home/isaac:/bin/bash
- 添加用户:useradd
- 例:useradd testUser -u 888 建立一个名为 testUser 的新用户并设置ID为888;
- 设置密码:passwd
- 例:password testUser ;
- 例:password -d testUser 删除用户密码;
- 例:password -l testUser 锁住密码;
- 修改用户:usermod
- 例:usermod -G master testUser 修改用户 testUser 的用户组为 master;
- 例:usermod -l Isaac testUser 修改用户 testUser 的用户名为 Isaac;
- 例:usermod -L Isaac 锁定用户 Isaac;
- 例:usermod -U Isaac 解除锁定用户 Isaac;
- 删除用户:userdel
- 例:userdel -f Isaac 强制删除用户 Isaac;
- 例:userdel -r Isaac 删除用户的同时也删除与用户相关的所有文件;
- 列出所有的用户组:cat /etc/group
- 显示单个用户组资料:cat /etc/group | grep root ,原理是关键字搜寻cle
- 添加用户组:groupadd
- 删除用户组:groupdel
- 修改用户组:groupmod
- 显示用户所属的用户组:groups
- 显示使用系统的用户:who
- 切换用户:su
- 以管理员身份运行:sudo
- 列出用户:cat /etc/passwd 或者 getent passwd,原理是用户信息存放在 /etc/passwd 文件中;
-
进程管理
- 监控:ps 监控进程的主要工具,该命令可以显示进程的PID、UID、优先级和控制终端,以及占用的内存、消耗的cpu时间和当前状态等信息;
- 例:ps aux 查看所有进程,并显示属于的用户;
- 动态监控:top 显示系统当前活跃进程的总体信息及其占用的资源;
- 终止进程:kill / pkill
- 例:sodu killall apache2 通过进程名终止进程
- 例:sodo kill -9 php 通过进程名强行终止进程
- 定时任务:crontab
- crontab -l 查看定时任务
- crontab -e 编辑定时任务
- crontab -r 删除定时任务
- crontab -l -u user1 查看 user1 的定时任务,只有 root 才有权限
- crontab -e -u user1 编辑 user1 的定时任务,只有 root 才有权限
- 监控:ps 监控进程的主要工具,该命令可以显示进程的PID、UID、优先级和控制终端,以及占用的内存、消耗的cpu时间和当前状态等信息;
-
信息显示
- 显示系统信息:uname
- 显示主机名:hostname
- 显示开机信息:dmesg
- 显示系统运行时间及负载:uptime
- 显示文件的状态信息:stat
- 日历信息:cal
- 显示文件及目录大小:du
- 显示系统磁盘空间的使用情况:df
- 动态显示系统资源使用情况:top
- 查看系统内存:free
-
磁盘&文件系统
- 挂载:mount
- 例:mount /dev/hda1 /mnt 将 /dev/hda1 挂载到 /mnt 目录下
- 卸载:umount
- 例:umount -v /mnt/test 卸载 /mnt/test
- 检查并修复文件系统:fsck
- 例:fsck -y /dev/hda2
- 查看文件系统信息:dumpe2fs
- 备份:dump
- 分区:fdisk
- 格式化:mkfs
- 挂载:mount
-
文件及目录操作
- 查找文件:find 在指定目录下查找文件,这其中大有学问
- -name 按名字查找
- -type 按类型
- -atime 访问时间
- ... 后面据说还有很多种类型的查找
- 显示指定工作目录下之内容:ls
- -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
- -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
- -r 将文件以相反次序显示(原定依英文字母次序)
- -t 将文件依建立时间之先后次序列出
- -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
- -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
- -R 若目录下有文件,则以下之文件亦皆依序列出
- 更改工作目录:cd
- cd ~ 前往家目录
- cd - 返回上一次工作的目录
- 显示当前工作路劲:pwd
- 以树形结构显示目录下的内容:tree
- 创建目录:mkdir
- 显示文件名:basename
- 显示文件路径:dirname
- 更改目录权限:chmod
- 更改文件目录拥有者:chown
- 删除空目录:rmdir
- 删除目录 / 文件:rm
- 移动目录 / 文件:mv
- 创建文件:touch
- 查看文件属性:lsattr
- 修改文件属性:chattr
- 复制文件 / 目录:cp
- 显示文件类型:file
- 显示文件 MD5 值:md5
- 查找文件:find 在指定目录下查找文件,这其中大有学问
-
查看文件&编辑文件
- cat : 连接文件并打印到标准输出设备上
- 例:cat -n README.md 带行号输出文件
- 例:cat README.md error.log 输出多个文件
- more:逐页显示文件
- less:逐页显示文件,与more顺序相反
- head:显示文件的头 n 行
- 例:head -5 test.md 显示文件 test.md 头5行
- tail:显示文件的尾 n 行(常用于跟踪日志信息)
- 例:tail -10 error.log 显示文件 error.log 尾部10行
- uniq :消除重复行
- VIM
- vim filename 进入文本编辑
- 1. 进入编辑后有三种模式:
- 编辑模式(命令模式),输入的字符当成命令处理
- 输入模式
- 末行模式
- 2. 模式的转换
- 编辑模式(命令模式)===》 输入模式
- i:在当前光标所在字符前转为输入模式
- I:在当前光标所在行的行首转为输入模式
- a:在当前光标所在字符后转为输入模式
- A:在当前光标所在行的行尾转为输入模式
- o:在当前光标所在行的上方新建一行,转为输入模式
- O:在当前光标所在行的下方新建一行,转为输入模式
- 输入模式 ===》 编辑模式
- ESC
- 编辑模式 ===》 末行模式
- :
- 末行模式 ===》 编辑模式
- ESC,ESC
- 编辑模式(命令模式)===》 输入模式
- 3. 打开文件
- vim +# filename :打开文件,并定位于第#行
- vim + filename :打开文件,定位至最后一行
- vim +/PATTERN :打开文件,定位至第一次被PATTERN匹配到的行的行首
- 4. 关闭文件
- :q 退出
- :wq 保存并退出
- :q! 不保存退出
- :w 保存jk
- :w! 强行保存
- 5. 编辑模式(命令模式)移动光标
- 逐字符移动
- h:左
- l:右
- j:下
- k:上
- #h:移动#个字符
- 以单词为单位移动
- w: 移至下一单词的词首
- e:
跳至当前或下一个单词的词尾
- b:
跳至当前或前一个单词的词首
- #w:
移动#个单词
行内跳转
0
:绝对行首
^
:行首的第一个非空白字符
$
:绝对行尾
行间跳转
#G
:跳转至第几行
gg
:第一行
G
:最后一行
翻屏
Ctrl + f
:向下翻
Ctrl + b
:向上翻
Ctrl + d
:向下翻半屏
Ctrl + u
:向上翻半屏
- 逐字符移动
5.
编辑模式(命令模式)删除内容
x: 删除光标所在处的单个字符
#x: 删除光标所在处及向后的共#个字符
dd: 删除当前光标所在行
#dd: 删除包括当前光标所在行在内的#行;
6.
编辑模式(命令模式)撤销动作
u:
撤消前一次的编辑操作
#u: 直接撤消最近#次编辑操作
撤消最近一次撤消操作:Ctrl+r
7. 查找
/PATTERN
?PATTERN
n 下一个
N 上一个
- cat : 连接文件并打印到标准输出设备上
-
文件压缩与解压
- tar
- 例:tar zxvf FileName.tar.gz DirName 压缩
- 例:tar zxvf FileName.tar.gz 解压
- zip
- 例:zip -r html.zip /home/html 递归压缩
- unzip
- 例:unzip html.zip -d /tmp 解压到指定目录下
- tar
-
网络操作
- 登录远程主机:telnet
- 例:telnet 127.0.0.1
- 登录远程主机:ssl
- 例:ssl root@127.0.0.1 -p22
- ping
- 例:ping https://www.baidu.com -c 2 ping百度收到2个包就结束
- 下载:wget
- 例:wget url 下载一个文件
- 例:wget --limit-rate=300k url 限速下载
- 例:wget -c url 断点续传
- 例:wget -b url 后台下载
- 查看、配置、启用或禁用网络接口:ifconfig
- 登录远程主机:telnet
-
关机重启
- shutdown 关机
- 例:shutdown -h now 立即关机
- 例:shutdown +5 "System will shutdown afteggr 5 minutes" 5分钟后关机,同时发送警告信息给登录的用户
- halt 关闭系统
- 例:halt -p 关闭系统后关闭电源
- 例:halt -d 关闭系统,但不留下记录
- poweroff
- 例:poweroff -f 强制关闭系统
- logout | exit 退出登录
- shutdown 关机
-
其它
- echo 输出字符串
- clear 清屏
- history 历史命令