目录
基本命令
xshell快捷键
vim编辑器
安装方法
vim模式及快捷键
命令行模式及其快捷键
系统常用命令
熟悉linux系统时我们首先要了解一个概念
在linux世界里一切皆文件!
liunx系统里是使用命令来进行各种操作,所以首先我们需要熟悉liunx的文件形式。
在linux中,所有的文件和目录都被组织成以一个根节点开始的倒置的树状结构。文件系统的最顶层是由根目录开始的,系统使用 / 来表示根目录。在根目录之下的既可以是目录,也可以是文件,而每一个目录中又可以包含子目录文件。如此反复就可以构成一个庞大的文件系统。
目录分别代表如下含义
系统启动必须:
指令集合:
外部文件管理:
临时文件:
账户:
运行过程中要用:
咳咳,接下来我们可以先熟悉下命令
pwd:是英文print working directory 显示当前所在路径。
cd:是 change directory的缩写,表示改变当前所在路径。
touch命令 :如果文件不存在,则创建一个字节数为0的文件。
ls 命令:是英文单词list的缩写.用来查看文件目录的属性。
直接输入ls按回车,查看当前目录下的文件以及目录
ls -l l参数代表以列表的方式显示。
mkdir 命令是make directory的英文缩写
rm 命令remove的英文缩写。 可以用来删除普通文件,也可以用来删除目录。
常用参数: ‐f ‐‐force #强制删除,不询问是否要删除。 ‐r ‐‐recursive #递归删除,包括文件夹中的内容。
mv命令英文单词move的缩写。可以用来移动文件夹或者文件,也可以用来更改文件名。
cp命令是英文单词copy的缩写,表示拷贝文件。 可以用来拷贝普通文件:
cp file file_bak #拷贝一份file为file_bak 可以用来拷贝目录
cp dir dir_bak ‐r #拷贝一个目录dir 为dir_bak, ‐r参数代表递归拷贝,把dir目录中的文件也拷贝
cat命令是英文单词concatenate连锁的缩写,用来查看文件内容,以及将几个文件连成一个文件
> 定向前两个文件里的数据生成到文件中(没有文件则创建文件)
find 命令直接在全文件系统上搜寻,功能强大,速度慢。
head命令 查看文件开头内容 head [选项] 文件名
-n [行数] 显示指定行数的内容(不加选项-n默认显示10行)
tail查看文件末尾的信息 tail [选项] 文件名
-n [行数] 显示指定行数的内容(不加选项-n默认显示10行)
which 用来搜索某一命令的路径 which 命令
where is 也用来搜索某一命令的路径
Ctrl+l 清屏
shift+tab 切换终段
ctrl+c 取消当前命令执行
. 代表当前目录
Ctrl+a 光标移动至行首
Ctrl+e 光标移动至行尾
“*‘ 代表任意所有字符
Ctrl+u 清空至行首
Ctrl+w 删除一个单词
图形界面
Ctrl+ shift+“+” 调整图形化终端界面变大
Ctrl+ shift+“-” 调整图形化终端界面变小
Vim 的前身是 vi,一个简洁但是略有不足的编辑器,但是从 vi 开始,编辑器的模式区分和唯快不破的思想就已经体现的很到位了。Vim 即是 vi improved,是在 vi 原本所有的方式上进行的进一步提升,但是并不会改变 vi 的其他本质,只是增加了更多适应如今需要的一些功能。
vi 于 1976 年诞生,与 Emacs 不分先后,两者因其快捷的编辑被奉为主流的神器,甚至使用者们还有爆发过 “圣战”,即是 神的编辑器 Emacs
VS 编辑器之神 Vim
,但是当然分不出结果,因为各有优劣。但它们共有的特点就是高度的扩展性与高度的可定制性以及快捷方便的使用。
安装有两种做法。
做法一,使用命令安装,但因为系统安装的时候 Vim 就是从默认软件源安装的,所以软件源里 Vim 的版本并不是最新的 = =。这个时候应使用第三方软件源安装,命令如下:
sudo add-apt-repository ppa:jonathonf/vim
sudo apt-get update
sudo apt-get install vim
做法二,先到 Releases - vim/vim 下载源码包,然后解压,并进入解压后的文件夹,并打开终端,cd 至文件夹路径,并依次输入如下命令:
sudo apt-get install python-dev
sudo apt-get install python3-dev
sudo apt-get install libncurses5-dev
./configure
make
sudo make install
Vim 的命令大部分都是在一般模式下完成的,普通模式下可不能乱按,可以说每个键都是命令。
普通模式下最重要的命令,没有之一,那就是 u
。撤销命令,作用是撤销上一次对文本的更改,普通模式下的 x
,d
,p
命令都会被撤销,同时进入一次插入模式所编辑的文本也算一次更改,u
命令会删去从进入到退出插入模式所输入的所有东西。
然后的话, 就是普通模式下常用的命令。由于对行命令的使用很频繁,所以大部分的单键命令都可以通过按两次来实现对行操作。常用命令是 x
,用于删除光标后的一个字符。然后是 d
命令,也是删除,但是种类更多,这里不做赘述。同时 d
命令像之前说的,按两次即可删除整行,即 dd
。
然后是y
命令,可以复制被选中的区域,这涉及到可视模式,即按 v
进入可视模式,多用于选中区域。进入可视模式后移动光标来确定选取范围是可以的,此时按 o
键即可切换活动端,省去了如果跑反方向的麻烦。包括移动光标。当然,选中后按 x
或 d
亦可删除。同时,y
也符合 d
的性质,yy
将可以复制当前行。
然后就是更快的跳跃了。如果说只是使用 hjkl
的话,光标的移动显然不够快,而鼠标却又要伸手去拿。Vim 提供了普通模式下更快的跳跃方法,w
可以跳到下个单词的开头,而 e
可以跳到当前单词结尾,0
可以跳至行首,$
可以跳至行尾,岂不是快多了?而且 w
,e
,0
,$
还可以用于许多命令中 de
,dw
,d0
,d&
分别对应删至单词尾,删至下个单词头,删至行首,删至行尾。以及y
命令亦可同理。
此模式下有一些很有用的命令
:q
退出,:w
保存,:wq
保存并退出,:q!
不保存并退出,:e filename
打开当前目录下指定文件,这些是比较基础的。
然后是很强大的命令 :x1,x2 s/A 串 / B 串 /
作用是把第 x1
行至 x2
行中的所有 A 串替换成 B 串。想象一下题写完了,但是发现没开 long long
的时候,完全不绝望有没有,一个小命令,妙不可言。瞬间所有 int
变 long long
。
◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、
exit、last;
◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;
◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、
crontab;
◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、
finger、mail、 nslookup;
◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、
who;
◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。