---------------------------------------------------------vi下的一些基础命令-----------
I 为到该行行首并进行编辑
A 为到该行行尾并进行编辑;
kjhl分别为为上下左右光标移动命令
DD为删除行内内容,光标留在本行;
dd为删除一行,光标直接跳到上一行;
u为撤销刚才的操作
J为上下两行合并
r替换当前光标所执行的文件
R为进入替换命令,输入的文字将会替换光标所在的字符。esc才会退出替换的状态
x为删除光标所在字符。
cw修改光标所在位置的单词,即根据起始位置删除,删除后立刻进入插入模式;
dw则是根据光标删除一个单词不进去插入;
o为在光标所在行后插入一空行
O为在光标所在行前插入一空行
fs查看光标所处位置开始查找光标之后的第一个s字符
/bca快速查找bca n往下是继续查找下一个bca,N返回上一处的
:set nu 显示行号
:set nonu不显示行号
:7是跳到第7行
G快速到行末,加上o可以进行快速到文档末尾并进行继续编辑。
nyy为从光标开始复制n行。如n不填写,则默认复制一行
p为粘贴当前复制的内容
:%s @[email protected]@g 把所有的accd替换成abc,@为分隔符;
:%s @[email protected]@[email protected]把所有的accd不区分大小写替换成abc;
df 检查文件系统的磁盘空间占用情况
ZZ保存退出;ZQ不保存退出,:X保存退出 :q!强制退出。
------------------------------------------------------其他的一些基础命令---------------
使用这两条进行创建一个新用户
[[email protected] /]# useradd test01
[[email protected] /]# passwd test01
当我在root权限下修改test01用户的密码可以直接修改,其他用户无法修改别的用户权限
[[email protected] ~]$ passwd test02
passwd: Only root can specify a user name.
在管理员用户下删除用户
userdel test02
mkdir /u02 在根目录下创建u02文件夹
mkdir -p /u02/test1 级联增加目录
df 检查文件系统的磁盘空间占用情况。
cal日历
date日期
du -sh /home 查看home这个目录的大小
ln file2 test_dir/file5 硬连接当前文件下的file2 和test_dir/下的file5 ,硬连接修改5后2也修改了,但是删除2不会删除5,删除5也不会删除2
ln-s file2 test_dir/file5软连接 类似于windows快捷方式,删除2就没有5了。
cd ~ 返回家目录
rm -r表示删除目录 rm -rf强制删除目录
tar的相关用法
[[email protected] u02]# tar -cf test.tar ./test01/test02/1 打包当前路径下test01下test02下的1文件
[[email protected] u02]# tar -cf test.tar ./test01/test02/1 2 打包当前路径下test01下test02下的1和2文件
[[email protected] u02]# tar -tvf test.tar 查看u02写的test.tar文件的具体内容
[[email protected] u02]# tar -xf test.tar 导出test.tar里面的内容,包括路径,如果路径本身不存在将会新建
[[email protected] u02]# tar czvf test.tar.gz ./test01/test02/1 打包当前路径下test01下test02下的1文件并压缩
[[email protected] u02]# tar xzvf test.tar.gz 还原并解压缩test.tar.gz
[[email protected] u02]# tar tvf test.tar | more
rpm命令
rpm -i (rpm—install) 安装模式
rpm -U ( rpm—upgrade) 升级模式
rpm -e (rpm—unstall) 卸载安装模式
rpm -q (rpm—query) 查询模式
rpm -V 检验模式
chmod chgrp chown命令用法
chgrp 修改文件所属组
chown 修改文件所有者
chmod 修改文件属性
chgrp [-cfhRv][所属群组][文件或目录...]
-c 与-v类似,但是v表示无论如何也要显示结果,c表示只有更改组之后才会显
-h 只对符号连接的文件作修改,而不更动其他任何相关文件。
-R 表示递归处理
chgrp -R test test.txt
chown用法与chgrp类似
表示把test.txt文件的群组修改成test
chmod则是修改文件属性
u用户的当前权限
g组的当前权限
o其他用户的当前权限
$ chmod u+x file 给file的属主增加执行权限
$ chmod 751 file 给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
$ chmod u=rwx,g=rx,o=x file 上例的另一种形式
$ chmod =r file 为所有用户分配读权限
$ chmod 444 file 同上例
$ chmod a-wx,a+r file 同上例 a=all
$ chmod -R u+r directory 递归地给directory目录下所有文件和子目录的属主分配读的权限
$ chmod 4755 设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。
关于权限的数字的一些具体含义如下
r w x
0 0 0 0
0 0 1 1
0 1 0 2
0 1 1 3
1 0 0 4
1 0 1 5
1 1 0 6
1 1 1 7
a|b为管道符 指执行完a后,我在a的基础上执行b
which 查看可执行文件的位置。例如which ifconfig查找ifconfig的位置
grep 显示与条件匹配的行数
$ grep ‘test’ d*
显示所有以d开头的文件中包含 test的行。
$ grep ‘test’ aa bb cc
显示在aa,bb,cc文件中匹配test的行。
wc [选项]文件...
-c 统计字节数。
-l 统计行数。
[[email protected] u02]# wc -l 1
7 1
[[email protected] u02]# wc -c 1
267 1
分别指在1这个文件有7号和267个字节
diff 报告文本差异的内容
vimdiff 可视化报告文本差异,显示的更清晰。进入vimdiff后可以输入 :qa!不修改退出
>file2清空file2
find /home -name file1 -exec rm -rf{}\;
find /home -name file1 -ctime 2 -exec rm -rf{}\;在home目录下查找name为file1的文件删除两天前的数据
find /home -name file1 -ctime -2 -exec rm -rf{}\;在home目录下查找name为file1的文件删除前两天的数据
echo abc >file2插入abc到file2
echo abc >>file2插入2行abc到file2
alias设置别名
set查看全局环境变量
env查看当前环境变量
--全局设置文件
/etc/profile
/etc/bashrc
--用户设置文件
~/.bashrc --直接可以用
~/.bashrc_profile --进来还有source读一下相对的文件