linux常用命令
XShell连接: ssh 用户名@IP地址 例:ssh root@192.168.11.110
简单命令
(1)ctrl+c 停止(或者ctrl+z均可) esc退出
(2)type查看一条命令是内部命令或者外部命令
内部命令:shell builtin
(3)help 命令:查看内部命令帮助手册;man 命令:查看外部命令帮助手册
yum install man -y安装外部命令帮助手册
yum install man-pages -y 相对于man更详细
(4)whereis : 定位命令位置,which也可以
(5)file:文件类型 ELF文件格式,表示二进制文件
(6)echo:打印到标准输出 echo $$ 表示当前shell的进程号
例:
(7)ps -fe 查看系统当前进程列表
(8)$PATH: 环境变量:路径
文件系统命令
(1)挂载分区:mount /dev/sda1 /boot
卸载分区:omount /boot,boot分区中的文件不会显示,但是boot目录仍然存在
(2)df -h:查看挂载分区
df:显示磁盘使用情况 du:显示文件系统使用情况
(3)ls显示对应目录下内容,可以跟多个目录,显示时,优先显示较外层目录;如果两个目录同级,按照目录名称的字母顺序显示。
(4)cd:切换工作目录
pwd显示当前工作目录
常用目录:
/:根目录
/dev: 设备文件
/etc:配置文件
/home:用户的家目录,每一个用户的家目录通常默认为/home/USERNAME
/lib:库文件 :没有执行入口的应用程序
/mnt:挂载点目录,额外的临时文件系统
/opt:可选目录,第三方程序的安装目录
(5)mkdir:创建目录 mkdir
mkdir -p .a/b/c 在a目录下创建b目录,在b目录下创建c目录
mkdir a/{1,2,3}dir 在a目录下创建1dir,2dir,3dir,前提是a目录存在的情况
(6)rm:删除 rm -rf 文件名称/目录s
(7)cp:复制
cp -r x y相当于改名复制到当前目录
cp -r x /boot/y 将x复制到/boot/y目录下(注意:目录需要从根目录写起)
(8)mv:移动
mv 123 /root 将123移动到/root目录下
mv 123 123.bak 相当于将123进行重命名
(9)ln:链接,给某个文件创建链接,相当于超链接(感觉用的很少吧)
ln 文件名 重命名 注:硬链接:一个改变,都会改变,源文件删除,不会影响链接文件。
ln -s 文件名 重命名 注:软链接:一个改变都会改变,但是如果原文件被删除,会影响链接文件。
(10)touch:当文件存在,则刷新文件的修改时间,访问时间;若文件不存在,则创建相应文件。
(11)stat:元数据,查看某个文件的访问时间,修改时间(modify)和元数据的修改时间(change)。 感觉也很少用
文本操作命令
(1) cat查看文件
(2) 分页查看
more: 只能从上而下查看,可以使用空格进行翻页,使用b返回查看,但是查看到最后直接退出该文件,还有搜索的功能。
less :与more相似,可以上下翻滚查看,但是会加载到内存中,less 在查看之前不会加载整个文件,如果内存小于文件大小,则看不到超出内存大小部分的内容。
head :默认查看前10行,head -5 文件名 查看前10行
tail :默认查看最后10行
tail -f 文件名 实时更新该文件最尾部的内容显示在屏幕上,并且不断刷新,常用于查阅正在改变的日志文件。
(3) | 管道:完成命令直接的数据传递
例:cat b.txt | head -3 查看b.txt并且只输出前三行
(4) xargs:它擅长将标准输入数据转换成命令行参数
命令
1,在标准输入中读取到的内容!
2,自己的参数理解为一个字符串
模仿shell,做blank切分,第一个子字符串为命令
3,将步骤1的内容做为步骤2的命令的选项参数拼接起来
4,执行得到的结果
例: echo “/” |xargs ls -l
vi全屏文本编辑器
(1) 打开文件
vim /path/to/somefile 打开文件,定位至第一行
vim +n 文件名:打开文件,并定位于第n行
vim + 文件名:打开文件,定位至最后一行
vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首
(2)模式
编辑模式:(命令模式)按键具有编辑文本功能:默认打开进入编辑模式
输入模式:按键本身意义
末行模式:接受用户命令输入
各种模式的切换(多半是记不住)
编辑–>输入:
i: 在当前光标所在字符的前面,转为输入模式;
a: 在当前光标所在字符的后面,转为输入模式;
o: 在当前光标所在行的下方,新建一行,并转为输入模式;
O:在当前光标所在行的上方,新建一行,并转为输入模式;
I:在当前光标所在行的行首,转换为输入模式
A:在当前光标所在行的行尾,转换为输入模式
输入–>编辑:
ESC
编辑–>末行:
:
末行–>编辑:
ESC, ESC
(3)关闭文件
:q 退出 没有动过文件
:wq 保存并退出 动过了,不后悔
:q! 不保存并退出 动过了,后悔了
:w 保存
:w! 强行保存
:wq --> :x
命令模式下:
ZZ: 保存并退出 不需要冒号,编辑模式
(4) 编辑模式(想多了吧,这么多,我反正记不住,不过呢多敲几遍就好了啊,一言不合撸代码)
一.移动光标
1.字符
h: 左;j: 下;k: 上;l: 右
2.单词
w: 移至下一个单词的词首
e: 跳至当前或下一个单词的词尾
b: 跳至当前或前一个单词的词首
3.行内
0: 绝对行首
^: 行首的第一个非空白字符
$: 绝对行尾
行间
G:文章末尾
3G:第3行
gg:文章开头
4.翻屏
ctrl:f,b ctrl+f下一屏 , ctrl+b上一屏
二.删除&替换单个字符
x:删除光标位置字符
3x:删除光标开始3个字符
r:替换光标位置字符
删除命令 d
dw删除光标所在行的一个单词 ,dd删除光标所在的一整行行
三.复制粘贴&剪切
yw复制一个单词,yy复制一整行
p粘贴
四.撤销&重做
u 撤销(相当于上一步)
ctrl+r 重做 撤销的操作(相当于下一步,必须使用过命令u才能使用)
. 重复上一步的操作(前提必须有操作)
五.set:设置
set nu 打开文件内容前会显示行数
set nonu 打开文件内容前不会显示行数
set readonly 设置文件只读
修改vi的配置文件 /etc/virc
六./:查找
/要查找的内容
N向下查找 N向上查找
?向上查找
!:执行命令(较常用)
例: :!ls -l /
七.s查找并替换
范围,s/str1/str2/gi 将该范围每行出现的str1替换成str2忽略大小写
/:临近s命令的第一个字符为边界字符:/,@,#
g:一行内全部替换
i:忽略大小写
范围
n:行号
.:当前光标行
+n:偏移n行
$ :末尾行,$-3
%:全文