Unix/Linux 及 vi 编辑器基本命令参考
chempeng
/ 2017-06-15
Starting a Terminal. Continually updated…
文件命令
| 文件命 令 |
| ls – 列出目录 |
| ls -al – 使用格式化列出隐藏文件 |
| cd dir - 更改目录到 dir |
| cd – 更改到 home 目录 |
| pwd – 显示当前目录 |
| mkdir dir – 创建目录 dir |
| rm file – 删除 file |
| rm -r dir – 删除目录 dir |
| rm -f file – 强制删除 file |
| rm -rf dir – 强制删除目录 dir * |
| cp file1 file2 – 将 file1 复制到 file2 |
| cp -r dir1 dir2 – 将 dir1 复制到 dir2; 如果 dir2 不存在则创建它 |
| mv file1 file2 – 将 file1 重命名或移动到 file2; 如果file2 是一个存在的目录则将 file1 移动到目录 file2 中 |
| ln -s file link – 创建 file 的符号连接 link |
| touch file – 创建 file |
| cat > file – 将标准输入添加到 file |
| more file – 查看 file 的内容 |
| head file – 查看 file 的前 10 行 |
| tail file – 查看 file 的后 10 行 |
| tail -f file – 从后 10 行开始查看 file 的内容 |
进程管理
| 进程管理 |
| ps – 显示当前的活动进程 |
| top – 显示所有正在运行的进程 |
| kill pid – 杀掉进程 id pid |
| killall proc – 杀掉所有名为 proc 的进程 * |
| bg – 列出已停止或后台的作业 |
| fg – 将最近的作业带到前台 |
| fg n – 将作业 n 带到前台 |
文件权限
chmod octal file – 更改 file 的权限
- 4 – 读 (r)
- 2 – 写 (w)
- 1 – 执行 (x)
示例:
chmod 777 – 为所有用户添加读、写、执行权限
chmod 755 – 为所有者添加 rwx 权限, 为组和其他用户添加rx 权限
更多选项参阅 man chmod
SSH
| SSH |
| ssh user@host – 以 user 用户身份连接到 host |
| ssh -p port user@host – 在端口 port 以 user 用户身份连接到 host |
| ssh-copy-id user@host – 将密钥添加到 host 以实现无密码登录 |
搜索
| 搜索 |
| grep pattern files – 搜索 files 中匹配 pattern 的内容 |
| grep -r pattern dir – 递归搜索 dir 中匹配 pattern 的内容 |
| command I grep pattern – 搜索 command 输出中匹配pattern 的内容 |
系统信息
| 系统信息 |
| date – 显示当前日期和时间 |
| cal – 显示当月的日历 |
| uptime – 显示系统从开机到现在所运行的时间 |
| w – 显示登录的用户 |
| whoami – 查看你的当前用户名 |
| finger user – 显示 user 的相关信息 |
| uname -a – 显示内核信息 |
| cat /proc/cpuinfo – 查看 cpu 信息 |
| cat /proc/meminfo – 查看内存信息 |
| man command – 显示 command 的说明手册 |
| df – 显示磁盘占用情况,- h 易读 |
| du – 显示目录空间占用情况 |
| free – 显示内存及交换区占用情况 |
压缩解压
| 压缩解压 |
| tar cf file.tar files – 创建包含 files 的 tar 文件 |
| tar xf file.tar – 从 file.tar 提取文件 |
| tar czf file.tar.gz files – 使用 Gzip 压缩创建 tar 文件 |
| tar xzf file.tar.gz – 使用 Gzip 提取 tar 文件 |
| tar cjf file.tar.bz2 – 使用 Bzip2 压缩创建 tar 文件 |
| tar xjf file.tar.bz2 – 使用 Bzip2 提取 tar 文件 |
| gzip file – 压缩 file 并重命名为 file.gz |
| gzip -d file.gz – 将 file.gz 解压缩为 file |
| tar cvf file.tar file – 把目录 file 的所有文件等打包成一个 file.tar 文件 |
| tar xvf file.tar file – 把打包成的文件 file.tar 展成 file 目录 |
网络
| 网络 |
| ping host – ping host 并输出结果 |
| whois domain – 获取 domain 的 whois 信息 |
| dig domain – 获取 domain 的 DNS 信息 |
| dig -x host – 逆向查询 host |
| wget file – 下载 file |
| wget -c file – 断点续传 |
安装
| 安装 |
| 从源代码安装: ./configure -> make -> make install |
| dpkg -i pkg.deb – 安装包 (Debian) |
| rpm -Uvh pkg.rpm – 安装包 (RPM) |
快捷键
| 快捷键 |
| Ctrl+C – 停止当前命令 |
| Ctrl+Z – 停止当前命令,并使用 fg 恢复 |
| Ctrl+D – 注销当前会话,与 exit 相似 |
| Ctrl+W – 删除当前行中的字 |
| Ctrl+U – 删除整行 |
| !! - 重复上次的命令 |
| exit – 注销当前会话 |
vi 编辑器的使用
| 基本使用 |
| vi aaa – 将编辑文件 aaa, 如果原来不存在,将产生空的新文件 |
| i – 进入文本插入状态 |
| a – 进入文本插入状态, 但从光标后开始插入 |
| ESC – 结束插入或 replace 状态,进入命令状态 |
| R – 进入 replace 状态,直到按 ESC 为止 |
| :wq – 退出 vi 编辑器, 并且存起改动的内容 |
| :q! – 强行退出 vi 编辑器, 并且放弃所有的改动 |
vi 处在命令状态下
| 1G – 光标移到文件的第一行 |
x – 删除一个字符(从光标处) |
| G – 光标移到文件的最后一行 |
5x – 删除 5 个字符 |
| 0 – 光标移到一行的最前头 |
r – replace 状态,可进行当前字符的替代 |
$ – 光标移到一行的最后头 |
:set nu – 给文件注上行号 |
| 100G – 光标移到第 100 行 |
:/ABC – 寻找字符 ABC,从光标所在行开始 |
| dd – 删除当前行 |
n – 紧接上一行命令,寻找下一个字符 ABC |
| 5dd – 删除 5 行,从光标所在行开始 |
N – 寻找上一个字符 ABC |
| D – 从光标所在位置开始,删除该行中后面的字符 |
:1,80s/OLD/NEW/g – 在第 1 到第 80 行间,将所有的字符 OLD 用字符 NEW 替代 |
| dG – 从光标所在行开始,删除之后的所有内容 |
:1,$s/old/new/g – 同上,但一直到文件尾端 |
| yy – 拷贝当前行 |
:g/abcd/p – 显示文件中所有的字符 abcd |
| 5yy – 拷贝 5 行,从光标所在行起 |
|
| p – 粘帖(paste) dd 或 yy 或 D 或 dG 的内容,从光标所在位置开始粘帖 |
|
主要内容源于: http://LinuxTOY.org
打印版下载:Unix/Linux 命令参考 or Unix/Linux 及 vi 编辑器基本命令参考