Linux常用命令大全(一)https://developer.aliyun.com/article/1424049
1.8 Linux命令-搜索查找类
1.8.1 查找文件或者目录【find】
find
指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
- 基本语法
find [搜索范围] [选项]
- 选项说明
选项 | 功能 |
-name<查询方式> | 按照指定的文件名查找模式查找文件 |
-user<用户名> | 查找属于指定用户名所有文件 |
-size<文件大小> | 按照指定的文件大小查找文件。 |
- 案例实操
- 按文件名:根据名称查找/目录下的filename.txt文件。
[root@java137 ~]# find xiyou/ -name “*.txt”
- 按拥有者:查找/opt目录下,用户名称为-user的文件
[root@java137 ~]# find opt/ -user zhangsan
- 按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)
[root@java137 ~]find /home -size +204800
1.8.2 过滤查找【grep 】及【|】管道 符
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
- 基本语法
grep 选项 查找内容 源文件
- 选项说明
选项 | 功能 |
-n | 显示匹配行及行号。 |
- 示例
查找root用户目录下 a.txt文件,以及在第几行
[root@java137 ~]# ll | grep -n a.txt
- 管道其实就是参数的意思。
相当于ll 和 grep -n a.txt两个方法
ll的方法执行完毕之后,将该方法的结果,传递给 grep -n a.txt 方法,做为参数
在linux中我们称为管道的
1.8.3 which 查找命令
查找命令在那个目录下
- 基本语法
which 命令
- 案例实操
[root@java137 ~]# which ll
1.9 Linux命令-VIM编辑器
VI是Unix操作系统和类Unix操作系统中最通用的文本编辑器。
VIM编辑器是从VI发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜色辨别语法的正确性,方便程序设计。VIM与VI编辑器完全兼容。如果安装的Linux操作系统是纯命令行的,即最小化安装,那么没有vim编辑器,需要在联网的情况下通过以下命令安装:yum -y install vim
VI有四种模式
正常模式(Normal-mode)
以vi/vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容, 也可以使用『复制、贴上』来处理你的文件数据。
语法 | 功能描述 |
yy | 复制光标当前一行 |
y数字y | 复制一段(从第几行到第几行) |
p | 箭头移动到目的行粘贴 |
u | 撤销上一步 |
dd | 删除光标当前行 |
d数字d | 删除光标(含)后多少行 |
x | 删除一个字母,相当于del,向后删 |
X | 删除一个字母,相当于Backspace,向前删 |
yw | 复制一个词 |
dw | 删除一个词 |
^ | 移动到行头 |
$ | 移动到行尾 |
gg或者1+G | 移动到页头(第一行) |
G | 移动到页尾(最后一行) |
数字+G(先输入数字,在按G) | 移动到目标行 |
插入模式(Insert-mode)
在一般模式中可以进行删除、复制、粘贴等的动作,但是无法编辑文件内容!要等到你按下『i, I, o, O, a, A』等任何一个字母之后才会进入编辑模式。
注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现『INSERT或 REPLACE』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下『Esc』这个按键即可退出编辑模式。
按键 | 功能 |
i |
当前光标前 |
a |
当前光标后 |
o | 当前光标行的下一行 |
I | 光标所在行最前 |
A | 光标所在行最后 |
O | 当前光标行的上一行 |
命令模式(Command-mode)
在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行。
在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、离开 vi 、显示行号等动作是在此模式中达成的!
命令 | 功能 |
:w | 保存 |
:q | 退出 |
:! | 强制执行 |
: %s/old字符/new字符 | 批量替换 |
/ 要查找的词 | n 查找下一个,N 往上查找 |
? 要查找的词 | n是查找上一个,N是往下查找 |
:set nu | 显示行号 |
:set nonu | 关闭行号 |
ZZ(shift+zz) :nohl | 没有修改文件直接退出,如果修改了文件保存后退**去除高亮显示** |
可视模式(Visual-mode)
1.10 Linux命令-重定向输出&系统命令
1.10.1 重定向【cat】
命令 |
cat /etc/passwd > a.txt 将输出定向到a.txt中 |
cat /etc/passwd >> a.txt 输出并且追加 |
1.10.2 系统命令
命令 |
ps –ef 查看所有进程 |
ps –ef | grep ssh 查找某一进程 |
kill 2868 杀掉2868编号的进程 |
==kill -9 2868 强制杀死进程== |
1.11 Linux命令-其他常见命令
- 【pwd】
显示当前所在目录
- 【touch】
创建一个空文件: touch a.txt
- 【clear/ crtl + L】
清屏
- 【history】
查看已经执行过的历史命令
二、用户管理命令
在公司中你没有这个权限
2.1 useradd 添加新用户
- 基本语法
useradd 用户名 (功能描述:添加新用户)
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)
- 案例实操
添加一个用户
[root@java137 ~]# useradd tangseng
[root@java137 ~]# ll /home/
2.2 passwd 设置用户密码
- 基本语法
passwd 用户名 (功能描述:设置用户密码)
- 案例实操
设置用户的密码
[root@java137~]# passwd tangseng
2.3 id 查看用户是否存在
- 基本语法
id 用户名
- 案例实操
查看用户是否存在
[root@java137~]# id tangseng
2.4 cat /etc/passwd 查看创建了哪些用户
- 基本语法
[root@java137~]# cat /etc/passwd
2.5 su 切换用户
su: swith user 切换用户
- 基本语法
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得当前用户环境变量,而是获取原用户的环境变量)
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
- 案例实操
切换用户
[root@java137 ~]#su tangseng
[root@java137 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
--------------------------------------------------------------------------------------------
[root@java137 ~]#exit
[root@java137 ~]#su - tangseng
[root@java137 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/tangseng/bin
2.6 userdel 删除用户
- 基本语法
userdel 用户名 (功能描述:删除用户但保存用户主目录)
userdel -r 用户名 (功能描述:用户和用户主目录,都删除)
- 选项说明
选项 | 功能 |
-r | 删除用户的同时,删除与用户相关的所有文件。 |
- 案例实操
删除用户但保存用户主目录
[root@java137 ~]#userdel tangseng
[root@java137 ~]#ll /home/
删除用户和用户主目录,都删除
[root@java137 ~]#useradd zhubajie
[root@java137 ~]#ll /home/
[root@java137 ~]#userdel -r zhubajie
[root@java137 ~]#ll /home/
2.7 who 查看登录用户信息
- 基本语法
whoami (功能描述:显示自身用户名称)
who am i (功能描述:显示【登录用户】的用户名)
- 案例实操
显示自身用户名称
[root@java137 opt]# whoami
显示登录用户的用户名
[root@java137 opt]# who am i
2.8 sudo 设置普通用户具有root权限
有一些情况下,我不用root用户登录,但是我还想有root用户的权限。
- 添加wangwu用户,并对其设置密码
[root@java137 ~]# useradd wangwu
[root@java137 ~]# passwd wangwu
- 修改配置文件
[root@java137 ~]# vi /etc/sudoers
- 修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下所示
\## Allow root to run any commands anywhere
root ALL=(ALL) ALL
wangwu ALL=(ALL) ALL
或者配置成采用sudo命令时,不需要输入密码
\## Allow root to run any commands anywhere
root ALL=(ALL) ALL
wangwu ALL=(ALL) NOPASSWD:ALL
- 修改完毕,现在可以用wangwu帐号登录,然后用命令 sudo ,即可获得root权限进行操作。
- 案例实操
用普通用户在/opt目录下创建一个文件夹
[wangwu@java137 opt]$ sudo mkdir module
[wangwu@java137 opt]# chown wangwu:wangwu module/
Linux常用命令大全(三)https://developer.aliyun.com/article/1424051