文件与目录
. (一个点号) :当前目录
. . (两个点号) :上一级目录
/ :根目录
~ :当前用户的主(home)目录
[tab]键:在输入路径时,tab可自动补齐路径名(文件夹名)
文件操作命令
ls :即list,显示当前的目录下的文件
-a :显示所有文件,包括隐藏文件
-l : 显示详细信息
-d:查看目录属性
cd :即change directory,切换目录
pwd :即print working directory,显示当前所在的目录
touch :如果文件不存在,创建空文件,后跟文件名;如果文件存在,则修改文件时间
touch 【filename】
mkdir :创建文件夹(创建新目录),后跟文件夹名
mkdir 【dirname】
cp :即copy,复制
cp file dir 将file复制到目录dir
mv:即move,用于文件移动和重命名
mv file dir 将file剪切到dir
mv file1 file2 将文件file1重命名为file2
rm :即remove,删除
rm file :删除file
-f :强制删除
-i :在删除前会询问是否删除
-r :删除子目录以及文件 例:rm -r dir 删除文件夹(目录)dir
文件通配符
*(星号):匹配任意长度的的任意字符串,如 flie*.c
?(问号):匹配一个长度的任意字符,如 file?.c
[ ] (方括号):匹配其中指定的一个字符,如 file[abc].c
[ - ] : 匹配一个指定的范围,如 file[a-z].c
[^ ] :匹配除去方括号之外的其他字符,如 flie[^ac].c 即:不匹配 fliea.c 与 fliec.c
查看文件内容命令
cat :显示文件内容(从第一行开始)
tac :显示文件内容(从最后一行开始)
nl : 显示文件,同时输出行号
more :一页一页显示文件内容,只能往下。
空格键或 f :显示下一页
回车键:显示下一行
/字符串 :在显示的内容中,向下查询”字符串“关键字
q 或 Q:退出
head :显示文件前几行
head -num file :显示file文件的前 num 行
tail :显示文件后几行
tail -num file :显示file文件的后 num 行
od :以二进制的方式显示文件内容
文件压缩打包操作命令
tar :文件打包命令 ,用法:tar 【选项】 【目录】
选项参数:
-c 新建打包文件,可搭配 -v 来查看过程中被打包的文件名
-t 查看打包文件的内容中有哪些文件名
-x 解打包或解压缩的功能,可搭配 -C(大写)在特定目录中解开
上述三个参数不可同时出现在一串命令行中
gzip :处理的压缩文件名为 *.gz
-c :将压缩数据输出到屏幕上,可通过数据流重定向来处理
-d :解压缩的参数
-t :可以检验一个压缩文件的一致性,看看文件有无错误
-v :可以显示出原文件/压缩文件的压缩比等信息
-# :压缩等级,-1最快,但压缩比最差。-9最慢,但压缩比最好默认是6
gzip2 :处理的压缩文件名为 *.gz2,用法大致与bzip一致
-c :将压缩数据输出到屏幕上(与gzip相同)
-d :解压缩的参数(与gzip相同)
-z :压缩的参数
-k :保留原文件,不删除原始文件
-v :可以显示出原文件/压缩文件的压缩比等信息(与gzip相同)
-# :压缩等级,-1最快,但压缩比最差。-9最慢,但压缩比最好默认是6 (与gzip相同)
格式 | 压缩 | 解压缩 | 备注 |
.tar.gz | tar -czf XXX.tar.gz dir file | tar -xzf XXX.tar.gz -C path | 支持文件或者文件夹 |
.tar.bz2 | tar -cjf XXX.tar.gz2 dir file | tar -xjf XXX.tar.gz2 -C path | 支持文件或者文件夹 |
.gz | gzip file | gzip -d XXX.gz | 只支持文件 |
.bz2 | bzip2 file | bzip2 -d XXX.bz2 | 只支持文件 |
.tar | tar -cf XXX.tar file | tar -xf XXX.tar -C path | 只打包不压缩 |
Vim命令
光标移动 :
h (左移) j (下移) k (上移) l (右移)
+ :光标移动到非空格符的下一行
- :光标移动到非空格符的上一行
0 (数字“0”) 或 功能键 (Home) :移动到该行的最前面的字符处
$ 或 功能键 (End) :移动到该行的最后面的字符处
n<space> :n为数字,输入数字后再摁空格键,光标向右移动这一行的n个字符,比如10<space>,光标向后移动10个字符
H :光标移动到这个屏幕的最上方那一行的第一个字符(注意:以屏幕为查找范围)
M :光标移动到这个屏幕的中央那一行的第一个字符 (注意:以屏幕为查找范围)
L :光标移动到这个屏幕的最下方那一行的第一个字符(注意:以屏幕为查找范围)
G :移动到这个文件的最后一行
nG :n 为数字,移动到这个文件的第n行
gg :移动到这个文件的第一行,相当于1G
n[Enter] :n为数字,光标向下移动n行
查找替换 :
/string :向下寻找名称为string的字符串
?string :向上寻找名称为string的字符串
n :英文摁键 n ,重复执行前一个查找的操作,例:如果刚才执行的为 /string,则摁n为再执行一次/string
N :英文摁键N ,反向执行前一个查找的操作,例:如果刚才执行的为 /string,则摁N为执行一次?string(注意:与n相反)
以上四个命令综合使用可以很方便的找到关键字
删除 :
x 或 X :x向后删除一个字符,X向前删除一个字符
nx :连续向后删除n个字符
dd :删除光标所在行
ndd :删除光标所在的向下n行
d1G :删除光标所在行至第一行的所有数据
dG :删除光标所在行至最后一行的所有数据
d0 :删除光标处到该行最前的一个字符(注意 此处为数字 “0”)
d$ :删除光标处到该行最后的一个字符(注意 此处为数字 “0”)
复制与粘贴 :
yy :复制光标所在行
nyy :n为数字,复制光标处向下的n行
y1G :复制光标所在行至第一行的所有数据
yG :复制光标所在行至最后一行的所有数据
y0 :复制光标处到该行最前的一个字符(注意 此处为数字 “0”)
y$ :删除光标处到该行最后的一个字符(注意 此处为数字 “0”)
以上复制操作均与删除操作类似
p 或 P :p 将已复制的数据在光标所在的下一行开始粘贴(即在光标所在行的下一行插入之前复制的内容)
P 将已复制的数据在光标所在的上一行开始粘贴(即在光标所在行的上一行插入之前复制的内容)
一般模式切换编辑模式:
i 或 I :插入模式,i 从光标处插入,I 从所在行第一个非空字符插入
a 或 A :插入模式,a 从光标处的下一个字符处插入,A 从光标所在行的最后一个字符处插入
o 或 O :插入模式,o 从光标所在的下一行插入新一行,O 从光标所在的上一行插入新一行 (注意,此处为英文“O”)
r 或 R :替换模式,r 只替换光标所在那个字符一次,R 一直替换光标所在文字,直到摁下[Esc]键为止
一般模式切换命令行模式:
:w :保存
:w! : 强制保存
:q : 退出
:q! : 强制退出
:wq :保存并退出
(注意 :1. !(感叹号)的意思一般为 强制 2.前面的 : (冒号)不要忘掉)
管道
| :把一系列的命令连接起来,第一个命令的输出通过管道会作为第二个命令的输入(注意此处为竖实线 | )
帮助命令
man : 可以查看Linux中的指令帮助,配置文件帮助,编程帮助等信息
1 :标准命令
2 :系统调用
3 :库函数
4 :设备说明
5 :文件格式
6 :游戏、娱乐
7 :网络协定、ASCII code、Linux 档案系统等
8 :管理员命令
9 :kernel有关文件
例 :man sleep 只会显示sleep的命令手册,如果想查找sleep的库函数说明,则需要输入 man 3 sleep