一、gedit编辑器
gedit是一个Linux环境下的文本编辑器,类似windows下的写字板程序,在不需要特别复杂的编程环境下,作为基本的文本编辑器比较合适
二、Sublime编辑器
Sublime Test是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用)
Sublime Text是由程序员Jon Skinner于2008年1月份开发出来,它最初被设计为一个具有丰富扩展功能的Vim。
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。
还可以自定义键绑定,菜单和工具栏。Sublime Text的主要功能包括:拼写检查,书签,完整的Python API,Goto功能,即时项目切换,多选择,多窗口等等。
SubLime Text是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统
Sublime Text 3快捷键
Ctrl+Shift+P:打开命令面板
Ctrl+P:搜索项目中的文件
Ctrl+G:跳转到第几行
Ctrl+W:关闭当前打开文件
Ctrl+Shift+W:关闭所有打开文件
Ctrl+Shift+V:粘贴并格式化
Ctrl+D:选择单词,重复可增加选择下一个相同的单词
Ctrl+L:选择行,重复可依次增加选择下一行
Ctrl+Shift+L:选择多行
Ctrl+Shift+Enter:在当前行前插入新行
Ctrl+X:删除当前行
Ctrl+M:跳转到对应括号
Ctrl+U:软撤销,撤销光标位置
Ctrl+J:选择标签内容
Ctrl+F:查找内容
Ctrl+Shift+F:查找并替换
Ctrl+H:替换
Ctrl+R:前往 method
Ctrl+N:新建窗口
Ctrl+K+B:开关侧栏
Ctrl+Shift+M:选中当前括号内容,重复可选着括号本身
Ctrl+F2:设置/删除标记
Ctrl+/:注释当前行
Ctrl+Shift+/:当前位置插入注释
Ctrl+Alt+/:块注释,并Focus到首行,写注释说明用的
Ctrl+Shift+A:选择当前标签前后,修改标签用的
F11:全屏
Shift+F11:全屏免打扰模式,只编辑当前文件
Alt+F3:选择所有相同的词
Alt+.:闭合标签
Alt+Shift+数字:分屏显示
Alt+数字:切换打开第N个文件
Shift+右键拖动:光标多不,用来更改或插入列内容
鼠标的前进后退键可切换Tab文件
按Ctrl,依次点击或选取,可需要编辑的多个位置
按Ctrl+Shift+上下键,可替换行
选择类
Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。
Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑。举个栗子:快速选中并更改所有相同的变量名、函数名等。
Ctrl+L 选中整行,继续操作则继续选择下一行,效果和 Shift+↓ 效果一样。
Ctrl+Shift+L 先选中多行,再按下快捷键,会在每行行尾插入光标,即可同时编辑这些行。
Ctrl+Shift+M 选择括号内的内容(继续选择父括号)。举个栗子:快速选中删除函数中的代码,重写函数体代码或重写括号内里的内容。
Ctrl+M 光标移动至括号内结束或开始的位置。
Ctrl+Enter 在下一行插入新行。举个栗子:即使光标不在行尾,也能快速向下插入一行。
Ctrl+Shift+Enter 在上一行插入新行。举个栗子:即使光标不在行首,也能快速向上插入一行。
Ctrl+Shift+[ 选中代码,按下快捷键,折叠代码。
Ctrl+Shift+] 选中代码,按下快捷键,展开代码。
Ctrl+K+0 展开所有折叠代码。
Ctrl+← 向左单位性地移动光标,快速移动光标。
Ctrl+→ 向右单位性地移动光标,快速移动光标。
shift+↑ 向上选中多行。
shift+↓ 向下选中多行。
Shift+← 向左选中文本。
Shift+→ 向右选中文本。
Ctrl+Shift+← 向左单位性地选中文本。
Ctrl+Shift+→ 向右单位性地选中文本。
Ctrl+Shift+↑ 将光标所在行和上一行代码互换(将光标所在行插入到上一行之前)。
Ctrl+Shift+↓ 将光标所在行和下一行代码互换(将光标所在行插入到下一行之后)。
Ctrl+Alt+↑ 向上添加多行光标,可同时编辑多行。
Ctrl+Alt+↓ 向下添加多行光标,可同时编辑多行。
编辑类
Ctrl+J 合并选中的多行代码为一行。举个栗子:将多行格式的CSS属性合并为一行。
Ctrl+Shift+D 复制光标所在整行,插入到下一行。
Tab 向右缩进。
Shift+Tab 向左缩进。
Ctrl+K+K 从光标处开始删除代码至行尾。
Ctrl+Shift+K 删除整行。
Ctrl+/ 注释单行。
Ctrl+Shift+/ 注释多行。
Ctrl+K+U 转换大写。
Ctrl+K+L 转换小写。
Ctrl+Z 撤销。
Ctrl+Y 恢复撤销。
Ctrl+U 软撤销,感觉和 Gtrl+Z 一样。
Ctrl+F2 设置书签
Ctrl+T 左右字母互换。
F6 单词检测拼写
搜索类
Ctrl+F 打开底部搜索框,查找关键字。
Ctrl+shift+F 在文件夹内查找,与普通编辑器不同的地方是sublime允许添加多个文件夹进行查找,略高端,未研究。
Ctrl+P 打开搜索框。举个栗子:1、输入当前项目中的文件名,快速搜索文件,2、输入@和关键字,查找文件中函数名,3、输入:和数字,跳转到文件中该行代码,4、输入#和关键字,查找变量名。
Ctrl+G 打开搜索框,自动带:,输入数字跳转到该行代码。举个栗子:在页面代码比较长的文件中快速定位。
Ctrl+R 打开搜索框,自动带@,输入关键字,查找文件中的函数名。举个栗子:在函数较多的页面快速查找某个函数。
Ctrl+: 打开搜索框,自动带#,输入关键字,查找文件中的变量名、属性名等。
Ctrl+Shift+P 打开命令框。场景栗子:打开命名框,输入关键字,调用sublime text或插件的功能,例如使用package安装插件。
Esc 退出光标多行选择,退出搜索框,命令框等。
显示类
Ctrl+Tab 按文件浏览过的顺序,切换当前窗口的标签页。
Ctrl+PageDown 向左切换当前窗口的标签页。
Ctrl+PageUp 向右切换当前窗口的标签页。
Alt+Shift+1 窗口分屏,恢复默认1屏(非小键盘的数字)
Alt+Shift+2 左右分屏-2列
Alt+Shift+3 左右分屏-3列
Alt+Shift+4 左右分屏-4列
Alt+Shift+5 等分4屏
Alt+Shift+8 垂直分屏-2屏
Alt+Shift+9 垂直分屏-3屏
Ctrl+K+B 开启/关闭侧边栏。
F11 全屏模式
Shift+F11 免打扰模式
三、编译器之神-vim
1、vi简介
vi是“Visual interface”的简称,它在Linux上的地位就仿佛Edit程序在DOS上一样。它可以执行输出、删除、查找、替换、块操作等众多文本操作,而且用户可以根据自己的需要对其进行定制。vi不是一个排版程序,它不像Word或PS那样可以对字体、格式、段落等其他属性进行编排,它只是一个文本编辑程序。vi没有菜单,只有命令,且命令繁多
vi有三种工作模式:
+ 命令模式
+ 文本输入模式
+ 末行模式
命令行模式
任何时候,不管用户处于何种模式,只要按一下ESC键,即可使vi进入命令模式;我们在shell环境(提示符为$)下输入启动vi命令,进入编辑器时,也是处于该模式下。在该模式下,用户可以输入各种合法的vi命令,用于管理自己的文档。此时从键盘上输入的任何字符都被当做编辑器命令来解释,若输入的字符是合法的vi命令,则vi在接受用户命令之后完成相应的动作。但需注意的是,所输入的命令并不在屏幕上显示出来。若输入的字符不是vi的合法命令,vi会响铃报警
文本输入模式
在命令模式下输入插入命令i、附加命令a、打开命令o、修改命令c、取代命令r或替换命令s都可以进入文本输入模式。在该模式下,用户输入的任何字符都被vi当做文件内容保存起来,并将其显示在屏幕上。在文本输入过程中,若想回到命令模式下,按键ESC即可。
末行模式
末行模式也称ex转义模式。在命令模式下,用户按“:”键即可进入末行模式下,此时vvi会在显示窗口的最后一行(通常也是屏幕的最后一行)显示一个“:”作为末行模式的提示符,等待用户输入命令。多数文件管理命令都是在此模式下执行的(如把编辑器缓冲区的内容写到文件中等)。末行命令执行完后,vi自动回到命令模式。例如:
:sp newfile
则分出一个窗口编辑newfile文件。如果要从命令模式转换到编辑模式,可以键入命令a或者i;如果需要从文本模式返回,则按ESC键即可。在命令模式下输入“:”即可切换到末行模式,然后输入命令。
2、vim基本操作
vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富
进入插入模式:
i: 插入光标前一个字符 I: 插入行首 a: 插入光标后一个字符 A: 插入行未 o: 向下新开一行,插入行首 O: 向上新开一行,插入行首
进入命令模式:
ESC:从插入模式或末行模式进入命令模式
移动光标:
h: 左移 j: 下移 k: 上移 l: 右移 M: 光标移动到中间行 L: 光标移动到屏幕最后一行行首 G: 移动到指定行,行号 -G w: 向后一次移动一个字 b: 向前一次移动一个字 {: 按段移动,上移 }: 按段移动,下移 Ctr-d: 向下翻半屏 Ctr-u: 向上翻半屏 Ctr-f: 向下翻一屏 Ctr-b: 向上翻一屏 gg: 光标移动文件开头 G: 光标移动到文件末尾
删除命令:
x: 删除光标后一个字符,相当于 Del X: 删除光标前一个字符,相当于 Backspace dd: 删除光标所在行,n dd 删除指定的行数 D: 删除光标后本行所有内容,包含光标所在字符 d0: 删除光标前本行所有内容,不包含光标所在字符 dw: 删除光标开始位置的字,包含光标所在字符
撤销命令
u: 一步一步撤销 Ctr-r: 反撤销
重复命令:
.: 重复上一次操作的命令
文本行移动:
>>: 文本行右移 <<: 文本行左移
复制粘贴:
yy: 复制当前行,n yy 复制 n 行 p: 在光标所在位置向下新开辟一行,粘贴
可视模式:
v: 按字符移动,选中文本 V: 按行移动,选中文本可视模式可以配合 d, y, >>, << 实现对文本块的删除,复制,左右移动
替换操作:
r: 替换当前字符 R: 替换当前行光标后的字符
查找命令:
/: str查找 n: 下一个 N:上一个
替换命令:
把abc全部换成123
末行模式下,将光标所在行的abc替换成123 :%s/abc/123/g 末行模式下,将第一行至第10行之间的abc替换成123 :1, 10s/abc/123/g
vim里执行shell下命令:
末行模式里输入!,后面跟命令
四、ubuntu软件安装与卸载
更新Ubuntu软件下载地址
1、寻找国内镜像源
所谓的镜像源:可以理解为提供下载软件的地方,比如Android手机上可以下载软件的91手机助手;ios手机上可以下载软件的AppStore
使用说明
图形界面配置(新手推荐)
依次打开:系统设置,软件和更新。在 下载自
中选择 其他站点
,然后在中国的条目 下选择 mirrors.ustc.educ.cn
。
下面是 Ubuntu 16.04 的操作示意图:
手动更改配置文件
警告
操作前请做好相应备份
一般情况下,将 /etc/apt/sources.list
文件中 Ubuntu 默认的源地址 http://archive.ubuntu.com/
替换为 http://mirrors.ustc.edu.cn
即可。
可以使用如下命令:
sudo sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list .. tip:: 如果你在安装时选择的语言不是英语,默认的源地址通常不是 ``http://archive.ubuntu.com/`` ,而是 ``http://.archive.ubuntu.com/ubuntu/`` 例如: ``http://cn.archive.ubuntu.com/ubuntu/`` ,此时秩序将上面的命令进行相应的替换即可,如: `` sudo sed -i 's/cn.archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list`` 。
当然也可以直接编辑 /etc/apt/sources.list
文件(需要使用 sudo)。以下是 Ubuntu 16.04 参考配置内容:
# 默认注释了源码仓库,如有需要可自行取消注释deb https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiversedeb https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse# 预发布软件源,不建议启用# deb https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse# deb-src https://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
更改完 sources.list
文件后请运行 sudo apt-get update
更新索引以生效。
小技巧
使用 HTTPS 可以有效避免国内运营商的缓存劫持。
2、备份Ubuntu默认的源地址
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
3、更新源服务器列表
4、更新源
做完此步骤之后,就可以进行apt-get install下载了
五、Ubuntu软件操作的相关命令
sudo apt-get update 更新源 sudo apt-get install package 安装包 sudo apt-get remove package 删除包 sudo apt-cache search package 搜索软件包 sudo apt-cache show package 获取包的相关信息,如说明、大小、版本等 sudo apt-get install package --reinstall 重新安装包 sudo apt-get -f install 修复安装 sudo apt-get remove package --purge 删除包,包括配置文件等 sudo apt-get build-dep package 安装相关的编译环境 sudo apt-get upgrade 更新已安装的包 sudo apt-get dist-upgrade 升级系统 sudo apt-cache depends package 了解使用该包依赖那些包 sudo apt-cache rdepends package 查看该包被哪些包依赖 sudo apt-get source package 下载该包的源代码 sudo apt-get clean && sudo apt-get autoclean 清理无用的包 sudo apt-get check 检查是否有损坏的依赖
1、安装Sublime 3
Sublime-text-3的安装步骤
添加Sublime-text-3软件包的软件源
sudo add-apt-repository ppa:webupd8team/sublime-text-3
使用以下命令更新系统软件源
sudo apt-get update
使用以下命令安装Sublime-text-3
sudo apt-get install sublime-text-installer
等待安装完成
最后可在Dash Home中见到Sublime-text的软件图标,点击就可使用了.
从命令行启动
subl
2安装vim
在命令行敲入“vi”后按"tab"键,可以看到目前系统中只安装了vi和vim.tiny。
vim是从VI发展而来的一个文本编辑器,功能更强大。而vim.tiny是vim的精简版,所以,安装vim势在必行。
ubuntu系统:
普通用户下输入命令:sudo apt-get install vim-gtk
centos系统:
普通用户下输入命令:yum -y install vim*
图片以ubuntu为例
这里,输入“y”后,回车。
之后不需要任何操作,等待安装完成。
安装完成之后,在命令行敲入vi,按“tab”键。
可以看到,已经有vim命令的存在。
安装成功。
END
刚安装的VIM,可能界面并不是十分友好,这就需要我们去更改vim的配置文件,按照我们的需求去修改它。
在命令行下,输入命令:sudo vim /etc/vim/vimrc
必须加上sudo,否则你是没有权限编辑vimrc的。
在这个文件中,会有这么一句:
syntax on
意思是语法高亮,如果您的被注释掉了,请“让它出来”。就像下图所示
VIM配置。
请在您的VIM的最后一行,输入他们,可以让您的VIM变得更漂亮、舒服。
set nu // 在左侧行号
set tabstop //tab 长度设置为 4
set nobackup //覆盖文件时不备份
set cursorline //突出显示当前行
set ruler //在右下角显示光标位置的状态行
set autoindent //自动缩进
保存之后,配置完毕。
上面的配置,其实是非常简单的,比如一些配色方案等,小编并没有写入,如果您还有其他需求的话,建议百度。
OK,我们来编写一个小程序,入下图所示,可以看出,界面已经比较美观了,至少小编用他来写程序、看文档,还是感觉很友好的。
六、Linux常用服务器构建-ftp服务器
ftp服务器
FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。
用于Internet上的控制文件的双向传输。
同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。
在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。
"下载"文件就是从远程主机拷贝文件至自己的计算机上;
"上传"文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。
1.安装vsftpd服务器
sudo apt-get install vsftpd
2.配置vsftpd.conf文件
sudo vi /etc/vsftpd.conf
3.测试上传功能,登陆ftp服务器
ftp IP
4.上传命令,可以把文件上传到ftp服务器
put somefile
5.下载命令,可以把ftp服务器上的文件下载到本地
get somefile
图形界面的ftp客户端(filezilla)
七、ssh服务器和scp服务器
1、ssh
<1>ssh介绍
SSH为Secure Shell的缩写,由IETF的网络工作小组(Network Working Group)所制定;SSH为建立在
应用层和传输层基础上的安全协议
SSH是目前较可靠,专门远程登录会话和其他网络服务提供安全性的协议。常用于远程登录,以及用户之间进行资料拷贝
利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是Unix系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端使用于多种平台。几乎所有Unix平台包括HP-UX、Linux、AIX、Solaris、Digital UNIX、lrix,以及其他平台,都可运行SSH。
使用SSH服务,需要安装相应的服务器和客户端。客户端和服务器的关系:如果,A机器想被B机器远程控制,那么,A机器需要安装SSH服务器,B机器需要安装SSH客户端。
<2>安装ssh
A.安装ssh服务器
sudo apt-get install openssh-server
B.远程登录
ssh 用户名@IP
使用ssh访问,如访问出现错误。可查看是否有该文件~/.ssh/known_ssh尝试删除该文件解决
<3>使用ssh连接服务器
被连接的机器
主动连接的机器:
SSH告知用户,这个主机不能识别,这时键入“yes”,SSH就会将相关信息,写入“~/.ssh/know_hosts”中,再次访问,就不会有这些信息了。然后输入完口令,就可以登录到主机了。
接着,提示输入登录密码:
登录成功:
2、scp
远程拷贝文件,scp -r的常用方法:
1、使用该命令的前提条件要求目标主机已经成功安装openssh-server
如没有安装使用 sudo apt-get install openssh-server 来安装
2、使用格式:
scp -r 目标用户名@目标主机IP地址:/目标文件的绝对路径 /保存到本机的绝对/相对路径 举例: scp -r [email protected]:/home/itcast/QQ_dir/ ./mytest/lisi 在后续会提示输入“yes”此时,只能输“yes”而不能简单输入“Y”
拷贝单个文件可以不加-r参数,拷贝目录必须要加
本地文件复制到远程:
scp FileName RemoteUserName@RemoteHostIp:RemoteFile scp FileName RemoteHostIp:RemoteFolder scp FileName RemoteHostIp:RemoteFile
本地目录复制到远程
scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder scp -r FolderName RemoteHostIp:RemoteFolder
远程目文件复制到本地
scp RemoteUserName@RemoteHostIp:RemoteFile FileName scp RemoteHostIp:RemoteFolder FileName scp RemoteHostIp:RemoteFile FileName
远程目录复制到本地
scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName scp -r RemoteHostIp:RemoteFolder FolderName
拷贝远程的文件:
拷贝远程的文件可以任意修改其名字:
拷贝远程的文件可以指定存放路径: