Linux常用命令总结
Linux用很多常用到的命令,我把一些常用到的命令来总结一下
1.vi
set nu 显示行号
set nonu 不显示行号
N shift+g 移动到第N行,正确的用法是:在非输入的状态下,输入行数(界面不显示),然后按下shift+g
:wq 保存文档
:q! 不保存文档
/a 查找词语a,按下n往下查找,shift+n或者N往上查找
2.mkdir
mkdir -p /ho/aa/aa 创建目录不检查是否存在父目录,会依次创建
3.touch
touch a.txt 创建空文件a.txt
echo "6666" > b.txt 往文件中写入内容,如果b.txt不存在,则自动创建
4.rm
rm -rf dir 强制删除目录,rmdir自能删除空文件夹
5.mv
mv a.txt dir 移动文件夹到dir目录
mv a.txt aa.txt 重命名a.txt
6.cp
cp -r dir1 dir2 递归拷贝文件夹dir1到dir2目录下
7.cat
cat -n a.txt 显示行数来查看文件
8.more
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键
快捷键:
操作 功能说明
空白键 (space) 代表向下翻一页;
Enter 代表向下翻『一行』;
q 代表立刻离开 more ,不再显示该文件内容。
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
使用 more a.txt
9.less
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率,有一些快捷指令
操作 功能说明
空白键 向下翻动一页;
[pagedown] 向下翻动一页
[pageup] 向上翻动一页;
/字串 向下搜寻『字串』的功能;n:向下查找;N:向上查找;
q 离开 less 这个程序;
使用:less a.txt
10.head
head -n 100 a.txt 查看前100行内容
11.tail
tail -n 100 a.txt 查看最后100行内容
tail -f a.txt 追加查看动态增加的文件
12.>和>>
ls -l >文件 列表的内容写入文件a.txt中(覆盖写))
ls -al >>文件 功能描述:列表的内容追加到文件aa.txt的末尾)
cat 文件1 > 文件2 功能描述:将文件1的内容覆盖到文件2)
echo “内容” >> 文件 添加文件内容到末尾
13.ln
ln -s a.txt b 将a.txt链接到b
删除的使用,用rm -rf b即可
14.adduser/userdel/passwd/id/usermod/su
用户管理
adduser hadoop 添加用户hadoop
adduser hadoop -g test 添加用户test到用户组group中
passwd test 更改用户test的密码
id test 查看test用户是否存在
userdel test 删除test用户,但不删除主目录
userdel -r test 删除test用户,并且删除主目录
usermod -g hadoop test 将test用户添加到hadoop组中
usermod -d /home/t hadoop 将/home/t 设置为hadoop用户目录,如果出现bash-4.2$,可以查看修改:https://www.cnblogs.com/luxj/p/7654974.html
cat /etc/passwd 查看所有用户
su hadoop 切换用户,只能获得用户的执行权限,不能获得环境变量)
su - hadoop 切换到用户并获得该用户的环境变量及执行权限
15.sudo
sudo 设置普通用户具有root权限
需要修改/etc/sudoers文件,将hadoop用户添加root权限,操作如下
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
或者配置成采用sudo命令时,不需要输入密码
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
hadoop ALL=(ALL) NOPASSWD:ALL
16.chmod/chown/chgrp
chmod hadoop:hadoop test -R 递归更改test文件夹用户和用户组
chmod 777 /home/test -R 递归更改/home/test目录的权限为777
chgrp hadoop test -R 递归更改文件夹test的用户组weihadoop
17.find
find /home/ -name '*test*' 查找home目录下的*test文件或文件夹
find /home/ -user hadoop 查找用户为hadoop的文件或文件夹
18.|管道符
管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
19.grep查找
grep test /home/hadoop/t.txt 在t.txt中查找内容test
20.tar
tar -zcvf a.tar.gz a.txt b.txt 将a.txt,b.txt打包到a.tar.gz文件中
tar -zxvf a.tar.gz -C /opt 解压a.tar.gz到/opt目录
21.gzip/gunzip
gzip a.txt 压缩a.txt
gunzip a.txt.gz 解压a.txt.gz
注意:gzip不能压缩目录,不能保留原来文件
22.zip/unzip
zip aa.zip a.txt b.txt /test7 将a.txt,b.txt,test7目录打包到aa.zip中
unzip aa.zip -d /opt 将aa.zip解压到/opt目录
23.df/du
df -h 查看磁盘占用情况
du -sh 查看当前文件夹占用内存大小
du -sh * 分别列出当前目录文件夹和文件占用情况
24.ps
ps aux | grep xxx 查看系统中所有进程
ps -ef | grep xxx 查看子父进程之间的关系
ps有几个参数
-a 选择所有进程
-u 显示所有用户的所有进程
-x 显示没有终端的进程
25.pstree
pstree -p 25334 查看进程25334依赖关系
pstree -u 25444 查看进程25334用户依赖关系
26.netstat
netstat -anp |grep 进程号 查看该进程网络信息)
netstat -nlp | grep 端口号 查看网络端口号占用情况
27.rpm
rpm -qa |grep mysql 查看mysql安装情况
rpm -ivh --nodeps mysql***.rpm 不检查依赖安装文件,若检查则把--nodeps去掉
rpm -e --nodeps mysql-5.9.2-3.el7.x86_64 不检查依赖卸载包
28.which/whereis
which java 查看当前命令路径
whereis java 查看该命令的所有路径