- 点击返回博客主目录
- 点击返回C语言基础知识目录大纲
- 2.3 常用命令
- 2.3.1 命令格式
- 2.3.2 目录切换
- 2.3.3 文件操作
- 2.3.4 用户管理
- 2.3.5 网络命令
- 2.4 vim文本编辑
- 2.4.1 vi编辑器中的三种状态模式
- 2.4.2 vi编辑器的启动与退出
- 2.4.3 文件操作
- 2.4.4 光标移动操作
- 2.4.5 编辑操作
- 2.4.6 查找与替换操作
- 2.4.7 学习工具vimtutor
- 2.4.8 vim最简易配置
- 2.4.9 结束语
$ ls -l /home
命令提示符/命令字/命令选项/命令组成部分间用空格进行分隔/命令参数
cd change directory 改变路径 cd / 切换至根目录
cd .. 切换至上一级目录
cd 操作时候可以用tab键进行自动补全
cd什么都不加 回到家目录
相对路径和绝对路径:以根目录/开始
clear 刷屏操作也可以用ctrl+l
mkdir gradfather 创建文件夹
ls -a all即显示隐藏文件
ls -l 表示列表显示
| 命令 | 参数 | 释意 | 示例 |
|---|---|---|---|
| ls | -l -a | 查看当前目录中的文件 | ls /root |
| pwd | 显示当前路径 | pwd | |
| 切换至不同的目录 | cd /opt cd … | ||
| cd | . | 当前目录,即缺省目录 | |
| .. | 上一级目录 |
| 命令 | 参数 | 释意 | 示例 |
|---|---|---|---|
| touch | 创建空文件 | touch aa.c | |
| mkdir | 创建空文件夹 | mkdir mydir | |
| rm | -r -f | 删除文件或目录 | rm -rf aa.c -r递归删除 -f指定某个文件 |
| cp | -r | 拷贝文件去某个目录,若后面跟不是文件夹,是为复制文件 | cp aa.c /opt cp aa.c aa.c.bak |
| mv | 剪切文件去某个目录,若后面跟的不是目录,则为重命名 | mv aa.c /opt mv aa.c bb.c | |
| find | 在给定目录下,按名字查找文件或目录 | find /opt -name aa.c | |
| cat | 在终端显示文本内容。 | cat aa.c | |
| less | 可进行翻页的文本内容查看 | less aa.c | |
| head | -n | 查看文件开头的n行 | cat -n 10 hello.c |
| tail | -n | 查看文件结尾的n行 | cat -n hello.c |
rm filename
rm 直接跟文件名,执行命令时会弹出是否删除的提示,回复y,就会删除,删除多个文件时候,会依次弹出对各个文件的提示
-f 选项是force强制删除,加上该选项后就不会弹出是否删除的提示而是直接删除
rm -f dirname 执行命令时,会弹出无法删除一个目录的提示
-r recursive 递归删除
rm -rf dirname 执行命令时,就会默认执行成功,不过这个命令需要慎用
mv dir1name dir2name dir1name重命名为dir2name
cp -r dir1name dir2name recursive 递归型拷贝 dir1name拷贝为dir2name
cat filename cat需要往上翻页
less filename 可以使用上下键一行一行的看
more filename 显示百分比,按页进行翻 f向下翻页 b向上翻页
head filename 默认显示10行
head -n filename 显示n行
tail filename 默认显示最后10行
tail -n filename 显示最后n行
find / 第一个参数表示在哪里找 -name 后表示要找哪个文件
执行完命令,什么都没显示的话,表示没找到
| 命令 | 参数 | 释意 | 示例 |
|---|---|---|---|
| useradd | 添加一个用户 | useradd jim | |
| passwd | 给新添加用户设密 | passwd jim | |
| userdel | -r | 删除某个用户(并工作目录) | userdel -r jim |
| su | 切换当前用户为其它用户 | su root |
useradd adduser是一样的
useradd username
passwd username
su username 切换用户 由超级用户向普通用户过渡的时候不需要密码
从普通用户向超级用户过渡需要密码
root用户的假目录在/ 普通用户的家目录在/home下
普通用户不能访问/root家目录或者别的普通用户的家目录
/home
uerdel -r 删除用户以及家目录
| 命令 | 参数 | 释意 | 示例 |
|---|---|---|---|
| ifconfig | 查看当前网络状态 | ifconfig | |
| ping | 查看当前网络连接状态 | ping 192.168.1.1 | |
| setup | setup设置网络 | setup |
ipconfig windows中查看网络状态
setup进入控制界面,空格键控制是否启动,tab键选择
网络设置->DNS配置->
DNS:域名解析系统:网址会通过域名系统解析成ip地址
ps -ef | grep sshd
service sshd restart
有人曾戏说,世界上只有三种编辑器,VIM、EMACS和其它。
这里介绍的vim就是神一样的编辑器,学习成本有点儿高,学习路线有点陡峭,命令行界面无可取代,使用是否灵活,当即可鉴别是否具有丰富的linux/unix的开发经验。
vi filename 进入 命令模式 :wq 退出
命令模式 输入i a o 进入插入模式
插入模式 ESC键 进入命令模式
命令模式 : 进入编辑模式
编辑模式 命令以回车结束运行 进入命令模式
| 命令 | 释意 |
|---|---|
| $vi | 直接进入编辑环境 |
| $vi myfile | 进入编辑环境并打开(新建)文件 |
| :q | 退出vi编辑环境 |
| 命令 | 释意 |
|---|---|
| :w | 保存对vi编辑器中已打开文件的修改 |
| :w myfile | 将vi编辑器中的内容另存为指定文件名 |
| :wq | 对vi编辑器中的文件进行保存并退出vi编辑器 |
| :q! | 放弃对文件内容的修改,并退出vi编辑器 |
| 命令 | 光标操作 | 释意 |
|---|---|---|
| 光标移动 | h | 向左移动光标 |
| l | 向右移动光标 | |
| k | 向上移动光标 | |
| j | 向下移动光标 | |
| 翻页 | Ctrl+f | 向下翻整页 |
| Ctrl+b | 向上翻整页 | |
| Ctrl+u | 向上翻半页 | |
| Ctrl+d | 向下翻半页 | |
| 文件内跳转 | :set nu | 在编辑器中显示行号 |
| :set nonu | 取消编辑器中的行号显示 | |
| 1G | 跳转到文件的首行 | |
| G | 跳转到文件的末尾行 | |
| #G | 跳转到文件中的第#行 |
| 命令 | 光标操作 | 释意 |
|---|---|---|
| i | 在当前光标处进入插入状态 | |
| a | 在当前光标处后进入插入状态 | |
| o | 在当前行的下面插入新行,光标移动到新行的行首,进入插入状态 | |
| O | 在当前行的上面插入新行,光标移动到新行的行首,进入插入状态 | |
| cw | 删除当前光标到所在单词尾部的字符,并进入插入状态 | |
| c$ | 删除当前光标到行尾的字符,并进入插入状态 | |
| c^ | 命令删除当前光标之前(不包括光标上的字符)到行首的字符,并进入插入状态 | |
| 删除操作 | x | 删除光标处的单个字符 |
| ndd | 删除光标所n行 | |
| dw | 删除当前字符到单词尾(包括空格)的所有字符 | |
| de | 删除当前字符到单词尾(不包括单词尾部的空格)的所有字符 | |
| d$ | 删除当前字符到行尾的所有字符 | |
| d^ | 删除当前字符到行首的所有字符 | |
| J | 删除光标所在行行尾的换行符,相当于合并当前行和下一行的内容 | |
| 拷贝和粘贴 | nyy | 复制当前行整行的内容到vi缓冲区 |
| p | 读取vi缓冲区的内容,并粘贴到光标当前的位置(不覆盖文件已有的内容) | |
| 撤销与恢复 | u | 取消最近一次的操作,并恢复操作结果,可以多次使用u命令恢复已进行的多步操作 |
| U | 取消对当前整行进行的所有操作 | |
| Ctrl+r | 对使用u命令撤销的操作进行恢复 |
| 命令 | 光标操作 | 释意 |
|---|---|---|
| 查找 | /word | 从上而下在文件中查找字符串“word” |
| ?word | 从下而上在文件中查找字符串“word” | |
| n | 定位下一个匹配的被查找的字符串 | |
| N | 定位上一个匹配的被查找的字符串 | |
| 替换 | :s/old/new | 将当前行中查找到的第一个字符“old”串替换为“new” |
| :s/old/new/g | 将当前行中查找到的所有字符串“old”替换为“new” | |
| :#,#s/old/new/g | 在行号“#,#”范围内替换所有的字符串“old”为“new” | |
| :%s/old/new/g | 在整个文件范围内替换所有的字符串“old”为“new” |
在命令行输入vimtutor默认是英文版的,可以使用中文版vimtutor -g zh
在用户当前的家目录中,输入vim ~/vimrc该文件是一个隐藏文件,如果没有则创建它,该文件中保存一些,vim的常用配置。
set nu //代码显示行号 syntax on //关键词高亮显示 set cindent //c语法自动缩进 set autoindent // 新行自动缩进 set shiftwidth=4 //缩进宽度4 set tabstop=4 //tab键宽度4 set softtabstop=4 //制表符宽度42.4.9 结束语
总有人羡慕大神和黑客,那你愿不愿意付出点努力,先学一学大神用的工具呢?“合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。”
大师&Vim&HHKB:



