1.Linux
1.1 Windows服务器消耗过大,linux一般公司都采用,很少用windos做服务器的
1.2区别:
Windows 性能消耗过大,linux终端化操作最大化利用系统性能
1.3安全性
使用工具连接时,尽量去官网下载,因为有黑客为连接工具汉化后挂马,
导致服务器瘫痪!(有过先例)
1.4 命令的使用
任何操作系统最早打交道一定是磁盘管理
ifconfig
查询ip地址:inet addr即是本机地址
获取管理员权限
sudo ls:
这里ls是权限列目录,可以不加
sudo:
通过sudo,我们能把某些超级权限有针对性的下放,
并且不需要普通用户知道root密码,
所以sudo 相对于权限无限制性的su来说,还是比较安全的,
所以sudo 也能被称为受限制的su ;
另外sudo 是需要授权许可的,所以也被称为授权许可的su;
su: 可以直接切换到root,任务结束后退出即可.
案例:
比如我们想用beinan普通用户通过more/etc/shadow文件的内容时,
可能会出现下面的情况:
*[beinan@localhost ~]?
more/etc/shadow/etc/shadow:权限不够这时我们可以用sudomore/etc/shadow来读取文件的内容;就就需要在/etc/soduers中给beinan授权于是我们就可以先su到root用户下通过visudo来改/etc/sudoers;(比如我们是以beinan用户登录系统的)∗[beinan@localhost ]?
su
Password: 注:在这里输入root密码
下面运行visodu;
*[root@localhost beinan]# visudo 注:运行visudo 来改 /etc/sudoers
加入如下一行,退出保存;退出保存,在这里要会用vi,visudo也是用的vi编辑器;
至于vi的用法不多说了;beinan ALL=/bin/more表示beinan可以切换到root
下执行more 来查看文件;退回到beinan用户下,用exit命令;
路径
/ 根目录
./ 当前目录
../ 当前上级目录
显示目录文件
ls -l -a:
-l长目录(详细信息) -a(显示隐藏)
当使用 -l参数时.d开头的信息代表文件夹,l代表link链接,本质有区别可以这么理解
当使用 -a参数时.显示所有隐藏文件,其中有2个文件夹.和..,.代表当前目录,..代表
当前目录的上层目录,而进入/目录后,也有这2个文件夹,/目录下的..也是根目录
当前所在位置
pwd
创建新目录
mkdir: make(创建)dir(文件夹)
mkdir -p: -p 递归创建目录
如:mkdir -p a/b/c/d,b和c2个目录不存在,要创建d目录,则使用递归创建
删除空目录
rmdir
复制文件或目录
-r 复制目录
-p 保留文件属性
cp -rp 原文件或目录 目标目录
剪切文件、改名
mv 原文件或目录 目标目录
rm 删除文件
-r 删除目录
-f 强制执行
rm -rf 文件或目录
rm -rf aaa bbb 同时删除2个文件夹及里面的东西
touch 创建空文件
touch 文件名
显示文件内容
cat
-n 显示行号
cat 文件名
more 分页显示文件内容
空格或f 翻页
enter 换行
q或Q 退出
more 文件名
改变文件或目录权限
chmod -R 递归修改
chmod [(ugoa) (+-=) (rwx)] [文件或目录]
chmod g+w test
给予文件test所属组写权限
chmod [mode=421] [文件或目录]
chmod -R 777 testdir
修改目录testdir及目录下所有文件为所有用户具有读写执行全部权限
切换目录
cd 后面跟相对路径或绝对路径,切换指定的目录
cd .. 回到上一级目录
2.VIM
号称:Emacs是神的编辑器,而Vim是编辑器之神。
2.1 安装
apt-get insatall vim(联网情况下)
2.2 插入模式(INSERT模式)
a → 在光标所在字符后插入
A → 在光标所在行尾插入
i → 在光标所在字符前插入
I → 在光标所在行行首插入
o → 在光标下插入新行
O → 在光标上插入新行
cw → 替换从光标所在位置后到一个单词结尾的字符
2.3 命令模式下
:set nu 显示行号
:set nonu 取消行号
窗口分隔
:vs 或者 :vsplit
–vertical split,将当前窗口竖直分割,当前文件在两个窗口中显示
:vs filename 将当前窗口竖直分割,文件filename在新窗口中显示
:sp 或者 :split 将当前窗口水平分割,当前文件在两个窗口中显示
:sp filename 将当前窗口竖直分割,文件filename在新窗口中显示
关闭多窗口
可以用:q!,也可以使用:close,最后一个窗口不能使用close关闭。
使用close只是暂时关闭窗口,其内容还在缓存中,只有使用q!、w!或x才能真能退出。
:tabc 关闭当前窗口
:tabo 关闭所有窗口
窗口切换
:ctrl+w+j/k,通过j/k可以上下切换,或者:ctrl+w加上下左右键,
还可以通过快速双击ctrl+w依次切换窗口。
此处参考资料[^1]:http://blog.csdn.net/devil_2009/article/details/7006113
定位命令
gg 到第一行
G 到最后一行
nG 到第n行,如到第6行 6G
:n 到第n行
$ 移至行尾
0 移至行首
删除命令
x 删除光标所在处字符
nx 删除光标所在处后n个字符
dd 删除光标所在行
ndd 剪切当前行以下n行
dG 删除光标所在行到文件末尾内容
D 删除光标所在处到行尾内容
:n1,n2d 删除指定范围的行
复制和剪切命令
yy 复制当前行
nyy 复制当前行以下n行
dd 剪切当前行
P 粘贴在当前光标所在行下或行上
替换和取消命令
r 取代光标所在处字符
R 从光标所在处开始替换字符,按ESC结束
u 取消上一步操作
搜索和搜索替换命令
搜索
/ 和 ? 来查找字符串
区别:
/string 会高亮显示光标后匹配的第一个字符串,回车后光标移到该字符串的第一个字母;
?string 会高亮显示光标前匹配的第一个字符串,回车后光标移到该字符串的第一个字母。
在回车之后,按n键同方向转到下一个匹配的字符串,按N键反方向转到上一个匹配的字符串。
用命令 :set ic 和 :set noic 来分别设置查找时不区分和区分大小写。
替换
用 : s 命令来替换字符串,具体如下:
:s/str1/str2/ 替换当前行第一个 str1 为 str2
:s/str1/str2/g 替换当前行中所有 str1 为 str2
:m,ns/str1/str2/ 替换第 n 行开始到最后一行中每一行的第一个 str1 为 str2
:m,ns/str1/str2/g 替换第 n 行开始到最后一行中所有的 str1 为 str2
(注:m和n 为数字,若m为 .,表示为当前行开始;若n为$,则表示到最后一行结束)
如果使用 # 作为分隔符,则中间出现的 / 不会作为分隔符,比如:
:s#str1/#str2/# 替换当前行第一个 str1/ 为 str2/
:%s/要替换的字符串/替换成的字符串/g 全文替换指定的字符串
%s+/oradata/apras/+/user01/apras1+ (使用+ 来 替换 / ):
/oradata/apras/替换成/user01/apras1/