来源:微信公众号「编程学习基地」
一、linux路径
- 切换目录
cd 路径
- 相对路径
cd ../../user/local/bin
命令 | 功能 |
---|---|
. | 当前目录 |
… | 上级目录 |
- | 上一次所在目录 |
~ | 用户的home目录 |
/ | 用户目录 |
- 绝对路径
pwd //使用该命令可以获取当前所在绝对路径
cd /user/local/bin
二、文件操作
命令 | 功能 |
---|---|
touch | 新建空白文件 |
mkdir | 新建目录 |
touch test //新建空白文件
mkdir mydir //新建目录
- 创建多个目录
mkdir -p father/son/grandson
cp 使用该命令复制一个文件到指定目录
cp test.c father/son/grandson //复制文件到指定目录
mkdir famile
cp -r father fimaly //将father这个文件夹(-r表递归)复制到fimale下
rm 使用rm命令删除一个文件
rm test.txt
rm -f test // -f 强制删除
rm -r famile //删除文件,包括文件里面的内容
mv file1 file2 将文件file1移动到file2下 和复制一样
touch file1
mv file1 Documer
- 重命名
rm file1 myFile
命令 | 功能 |
---|---|
cat | 正序显示到终端 |
tac | 倒序显示到终端 |
nl | 人性化打印到终端 |
more | 阅读文件 |
less | man手册内部使用less查看 |
head | 查看文件的前十行(默认) |
tail | 查看文件最后十行(默认) |
- cat、tac
cat -n passwd //-n参数显示行号
tac -n passwd
- nl
添加行号并打印,比cat -n 更专业的打印命令
nl passwd
- more、less
可以说cat是用来快速查看一个文件的内容,那more、less就是专门用来阅读一个文件的内容的,打开后默认显示一屏内容,底部显示阅读的进度,Enter向下滚动一行,q退出.
more passwd
- head、tail
快速阅读文件用的,默认显示前10行,参数 -行号 可以控制要显示的行
head -6 passwd //显示前6行的内容
file /bin/ls
- 单独介绍vim这个强大的编辑器
三种常用模式:普通模式、插入模式、命令模式
vim main.c
vim启动进入普通模式,
普通模式下的操作:
- 退出vim
Shift + zz保存并退出vim
- 对文本信息进行删除
命令 | 功能 |
---|---|
x | 删除游标所在的字符 |
dd | 删除整行 |
dw | 删除一个单词(不适用中文) |
插入模式下的操作
- 在普通模式下使用下面的键进入插入模式
命令 | 功能 |
---|---|
i | 在当前光标处进行编辑 |
a | 在光标后插入编辑 |
o | 在当前行后插入新行 |
O | 在当前行前插入新行 |
命令行模式下
- 在普通模式下按Shift + :键进入命令行模式
命令 | 功能 |
---|---|
w | 保存文件 |
q | 退出vim编辑器 |
saves | 另存为 |
wq! //强制退出并保存
vim配置
使用命令$ vim /etc/vim/vimrc修改vim配置文件 (修改该文件对所有用户都生效)
在该文件最后添加如下代码:
set ai " 自动缩进,新行与前面的行保持—致的自动空格
set aw " 自动写,转入shell或使用:n编辑其他文件时,当前的缓冲区被写入
set flash " 在出错处闪烁但不呜叫(缺省)
set ic " 在查询及模式匹配时忽赂大小写
set nu
set number " 屏幕左边显示行号
"set showmatch " 显示括号配对,当键入“]”“)”时,高亮度显示匹配的括号
set showmode " 处于文本输入方式时加亮按钮条中的模式指示器
set showcmd " 在状态栏显示目前所执行的指令,未完成的指令片段亦会显示出来
set warn/nowarn " 对文本进行了新的修改后,离开shell时系统给出显示(缺省)
set ws/nows " 在搜索时如到达文件尾则绕回文件头继续搜索
set wrap/nowrap " 长行显示自动折行
"colorscheme evening " 设定背景为夜间模式
filetype plugin on " 自动识别文件类型,自动匹配对应的, “文件类型Plugin.vim”文件,使用缩进定义文件
set autoindent " 设置自动缩进:即每行的缩进值与上一行相等;使用 noautoindent 取消设置
set cindent " 以C/C++的模式缩进
set noignorecase " 默认区分大小写
set ruler " 打开状态栏标尺
set scrolloff=5 " 设定光标离窗口上下边界 5 行时窗口自动滚动
set shiftwidth=4 " 设定 << 和 >> 命令移动时的宽度为 4
set softtabstop=4 " 使得按退格键时可以一次删掉 4 个空格,不足 4 个时删掉所有剩下的空格)
set tabstop=4 " 设定 tab 长度为 4
set wrap " 自动换行显示
syntax enable
syntax on " 自动语法高亮
注意第10、11、12行只能选一个值,不然会报错。如果有些功能自己不需要可以在行前使用符号"注释该行。
如果使用 !wq 不能保存,则使用命令 w! sudo tee % 进行保存。
我的设置:
#自动缩进,新行与前面的行保持—致的自动空格
set ai
#设置显示行号,关闭行号显示命令:set nonumber
set number
#以C/C++的模式缩进
set cindent
#设置tab符长度为4个空格
set tabstop=4
#设置换行自动缩进长度为4个空格
set shiftwidth=4