全文参考
关于路径
![](https://img-blog.csdnimg.cn/img_convert/c508b5c2d0de82c6955e964364cc6e51.png)
root用户
切换用户su
su [-] [用户名]
![](https://img-blog.csdnimg.cn/img_convert/0f7aed723081d1d75b40d69bf18e4552.png)
![](https://img-blog.csdnimg.cn/img_convert/122dfc3dc484bad0b65e555bc2b46b3b.png)
用户临时授权sudo
sudo 其他命令
![](https://img-blog.csdnimg.cn/img_convert/76ba23799d4362db1a0b5f44be9288e2.png)
![](https://img-blog.csdnimg.cn/img_convert/7e47b2a6a2bd56511a5bd56f250b6b1a.png)
用户组管理
创建用户组groupadd
groupadd 用户组名
删除用户组group
groupdel 用户组名
查看系统中有哪些组getent
getent group
![](https://img-blog.csdnimg.cn/img_convert/b509afa4ee1e2ccc5c6bb16249ba5ea3.png)
用户管理
创建用户useradd
useradd [-g -d]
![](https://img-blog.csdnimg.cn/img_convert/417fd3d3a8f69d217a9f336bfa7b3859.png)
删除用户userdel
userdel [-r] 用户名
![](https://img-blog.csdnimg.cn/img_convert/bb87b255cb3f171dd699fe476fc4be3b.png)
查看用户所属组id
id [用户名]
![](https://img-blog.csdnimg.cn/img_convert/77f15bd29396b04c059d367999699d1f.png)
修改用户所属组usermod
usermod -aG 用户组 用户名
将指定用户加入指定组
查看系统有哪些用户getent
getent passwd
![](https://img-blog.csdnimg.cn/img_convert/64d9d556ba292ef2cf3c663ef4b7ccda.png)
更改用户默认Shell
列出您的Linux系统上的所有可用shell
cat /etc/shells
结果:
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/dash
用户可以将自己的shell更改为任何事物:但是必须列在/ etc / shells文件中。
只有root可以运行未列在/ etc / shells文件中的shell
检查用户howtoing的帐户信息以查看他的默认登录shell
grep [用户名] /etc/passwd
三种不同的方式来改变Linux用户shell
一、
usermod --shell /bin/bash [用户名]
二、
chsh --shell /bin/sh [用户名]
三、
文本编辑器打开/ etc / passwd文件
vi /etc/passwd
![](https://img-blog.csdnimg.cn/img_convert/5df71c6168e177d06373fb3619659fee.png)
参考:
https://blog.csdn.net/weixin_26732855/article/details/116876860
设置用户密码
https://blog.csdn.net/cnds123321/article/details/124915349
passwd [用户名]
![](https://img-blog.csdnimg.cn/img_convert/a0d232d7aa0409dcc160692f4bd45fa0.png)
修改自己的密码
passwd
设置普通用户的密码
passwd 用户名
显示账户密码信息
passwd -S 用户名
删除用户密码
passwd -d 用户名
Linux目录结构
Linux目录结构是一个树形结构
只有一个根目录
层级关系用: / 来表示(win中用\表示)
目录操作
ls列出目录
ls [-a -l -h] [路径]
![](https://img-blog.csdnimg.cn/img_convert/f6b0386dfd30653868a71001c1b6af2d.png)
![](https://img-blog.csdnimg.cn/img_convert/57b67309cbef0ff9dc2e96f7df7302b3.png)
-a显示全部的文件,包括隐藏文件(即以 . 开头的文件)
-l长数据列出文件信息,包括文件的属性与权限等信息。等价于 ll
-r将文件以相反次序显示,默认是按照英文字母顺序显示
-t按照最后的修改时间排序显示
-A同 -a,但不显示 . 当前目录及 .. 父目录
-S根据文件大小排序
-R递归列出所有子目录
-d查看目录的信息,而不是里面子文件的信息
-i输出文件的 inode 结点的信息
-m水平列出的文件,以逗号间隔
-X按照文件扩展名排序
–color输出信息中带有着色效果。其中蓝色表示目录;绿色表示可执行文件;红色表示压缩文件;浅蓝色表示链接文件;灰色表示其他文件。
-h以人类可阅读的方式显示
-F在列出的文件名称后面加一个符号,如可执行文件加 *,目录加 /
原文链接:https://blog.csdn.net/cnds123321/article/details/124890793
cd切换目录
cd [路径]
![](https://img-blog.csdnimg.cn/img_convert/0894b3410e204abf3a6d7e7bf6bebc84.png)
pwd查看当前工作目录
pwd
mkdir创建新目录
mkdir [-p] 路径
![](https://img-blog.csdnimg.cn/img_convert/0d9fe43dd62d1a5847809e9e1b4ec07b.png)
文件操作
touch创建文件
touch 路径
![](https://img-blog.csdnimg.cn/img_convert/c352fe95033ca51a649412fe3cc00445.png)
cat查看文件内容
cat 路径
![](https://img-blog.csdnimg.cn/img_convert/80752b0180f9eb32c595163957cfb549.png)
more查看文件内容
more 路径
![](https://img-blog.csdnimg.cn/img_convert/23ac970b12a9772b7075a3f6284a85c0.png)
![](https://img-blog.csdnimg.cn/img_convert/c45014172ebf2211f3bb916af7ab1109.png)
cp复制文件、文件夹
cp [-r] 参数1 参数2
![](https://img-blog.csdnimg.cn/img_convert/122f1a82cf8ec5f855b6b68d81a60270.png)
mv移动文件、文件夹
mv 参数1 参数2
![](https://img-blog.csdnimg.cn/img_convert/0496cebfabe0155c25171a7320aa2443.png)
rm删除文件、文件夹
rm [-r -f] 参数1 参数2...参数N
![](https://img-blog.csdnimg.cn/img_convert/3c297c3d113f245c3bf5edb811cf05ec.png)
which查找命令
which 要查找的命令
![](https://img-blog.csdnimg.cn/img_convert/949a00d91d345d38e6406f3d1575be36.png)
find按文件名查找文件
find 起始路径 -name "被查找的文件名"
起始路径:从哪里开始搜索
![](https://img-blog.csdnimg.cn/img_convert/835396c553e6a8a2bd0707a527342b27.png)
find 起始路径 -size +|-n[kMG]
![](https://img-blog.csdnimg.cn/img_convert/d482b601ea7f2f078ed84172f8b937bf.png)
grep从文件中通过关键字过滤文件行
grep [-n] 关键字 文件路径
![](https://img-blog.csdnimg.cn/img_convert/b084741f929268648c751df15b9257f6.png)
wc统计文件行数、单词数量等
wc [-c -m -l -w] 文件路径
![](https://img-blog.csdnimg.cn/img_convert/7921ce31bd4348d805c1c086434d5d45.png)
less 查看命令
less [参数] 文件
less 与 more 类似,但使用 less 可以随意浏览文件,而且 less 在查看之前不会加载整个文件。显示方面,显示内容方式不是输出到窗口,而是类似vi打开的文件一样,退出按q。
字符操作
剪切字节、字符和字段cut
cut [选项参数] filename
-d:分隔符,按照指定分隔符分割列。与 -f 一起使用
-f:依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思(列号,提取第几列)
-c:以字符 (characters) 的单位取出固定字符区间
-b:以字节为单位进行分割
管道符
|
含义:将管道左边命令的结果,作为右边命令的输入
使用方式:
查找关键字
统计行数
。。。
其它操作
echo输出指定内容
echo 输出的内容
![](https://img-blog.csdnimg.cn/img_convert/2db3c183e1c8101487d93fd817104805.png)
![](https://img-blog.csdnimg.cn/img_convert/c181839566f69d9c6b9a3b29cde3f1b9.png)
`反引号
`
反引号包围的内容,会被当做命令执行,而非普通字符
>和>> 重定向符
>
>>
![](https://img-blog.csdnimg.cn/img_convert/71b091f5e598b22047b88f32a6af38ab.png)
tail查看文件尾部内容,跟踪文件的最新更改
tail [-f -num] 路径
![](https://img-blog.csdnimg.cn/img_convert/488f738231d8ef1db3efe430ceed9df6.png)
num是具体数字
-f持续追踪文件最新的内容,ctrl+c可以强制停止运行
vi/vim编辑器
vi/vim编辑器,命令行模式下的文本编辑器,用来编辑文件
vim是vi的升级版,一般用vim即可,包含vi全部功能
vi 文件路径
vim文件路径
![](https://img-blog.csdnimg.cn/img_convert/099b0a522ed1d23b4fef3642bedc5798.png)
![](https://img-blog.csdnimg.cn/img_convert/2d17a9c15a767e598fb2bcea9545271a.png)
权限
查看权限控制信息
ll 文件名加后缀
使用 ll 或者 ls –l 命令来显示一个文件的属性以及文件所属的用户和组
dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin
dr-xr-xr-x 4 root root 4096 Apr 19 2012 boot
在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。
当为 d 则是目录
当为 - 则是文件;
若是 l 则表示为链接文档(link file);
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
![](https://img-blog.csdnimg.cn/img_convert/d0312d0190ff3b19a64b91cb5763dc96.png)
![](https://img-blog.csdnimg.cn/img_convert/487729f65ba379bd4b024ca267fc2207.png)
r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。没有权限,就会出现减号 -
chmod修改权限控制
chmod [-R] 权限 文件或文件夹
只有文件、文件夹的所属用户或root用户可以修改
![](https://img-blog.csdnimg.cn/img_convert/1e840424edba87954fb0c58d05571bf3.png)
![](https://img-blog.csdnimg.cn/img_convert/8df852b7cedb9993afaee76e5a468f8a.png)
快捷写法
chmod 751 hello.txt
![](https://img-blog.csdnimg.cn/img_convert/cdc9b3d249084d5b5bd92ed41ac0fb2a.png)
r=4
w=2
x=1
chown修改文件、文件夹所属用户、用户组
chown [-R] [用户][:][用户组] 文件或文件夹
![](https://img-blog.csdnimg.cn/img_convert/274f79f0127498ea93284dd4f4c9c15c.png)
![](https://img-blog.csdnimg.cn/img_convert/337bb376a37d96b9ddcee781abfdacad.png)
![](https://img-blog.csdnimg.cn/img_convert/ac00ec87daf206d79e3ed0f93f289e2b.png)
执行文件
./文件名
比如文件名test.sh,执行方式为./test.sh
umask更改默认的访问权限
umask值的含义
创建一个新的文件或者目录的时候,这些新的文件或目录都会有默认的访问权限
用户创建一个文件,则文件的默认访问权限为 -rw-rw-rw- ,创建目录的默认权限drwxrwxrwx
umask值则表明了需要从默认权限中去掉哪些权限来成为最终的默认权限值。
使用命令 umask 来查看umask值
![](https://img-blog.csdnimg.cn/img_convert/ad3ff795cd350155daf32ecc457c57f7.png)
其中第一个0与特殊权限有关,可以暂时不用理会,后三位002则与普通权限(rwx)有关
其中002中第一个0与用户(user)权限有关,表示从用户权限减0,也就是权限不变,所以文件的创建者的权限是默认权限(rw),
第二个0与组权限(group)有关,表示从组的权限减0,所以群组的权限也保持默认权限(rw),
最后一位2则与系统中其他用户(others)的权限有关,由于w=2,所以需要从其他用户默认权限(rw)减去2,也就是去掉写(w)权限,则其他人的权限为rw - w = r
还可以使用命令 umask -S 来显示umask的符号值:
umask -S
![](https://img-blog.csdnimg.cn/img_convert/ead5cfb9d931b09b68fee96ca7daf044.png)
更改umask值
umask 值
可以通过命令 umask 值 的方式来更改umask值,比如我要把umask值改为027,则使用命令 umask 027 即可。改成027后,用户权限不变,群组权限减掉2,也就是去掉写(w)权限,其他用户减7,也就是去掉读写执行权限(rwx),所以其他用户没有访问权限。
hadoop@sench-pc:~$ umask 027
hadoop@sench-pc:~$ umask
hadoop@sench-pc:~$ touch test.txt
hadoop@sench-pc:~$ ls -l test.txt
-rw-r----- 1 hadoop hadoop 0 4月 24 20:49 test.txt
hadoop@sench-pc:~$ mkdir test
hadoop@sench-pc:~$ ls -al test
总用量 8
drwxr-x--- 2 hadoop hadoop 4096 4月 24 20:49 .
drwxr-xr-x 52 hadoop hadoop 4096 4月 24 20:49 ..
[itheima@localhost ~]$ umask 077
[itheima@localhost ~]$ touch test2.sh
[itheima@localhost ~]$ ls -l test2.sh
-rw-------. 1 itheima itheima 0 Apr 4 02:44 test2.sh
可以看到文件的默认访问权限变为了 -rw-r----- ,目录test的默认访问权限变为了 drwxr-x--- 。这种方式并不能永久改变umask值,只是改变了当前会话的umask值,打开一个新的terminal输入umask命令,可以看到umask值仍是默认的002。要想永久改变umask值,则可以修改文件/etc/bashrc,在文件中添加一行 umask 027 。
小技巧快捷键
强制停止
ctrl+c
退出、登出
ctrl+d,退出账户的登录
不能用于退出vi、vim
历史命令搜索
1)history
2)!命令前缀,自动执行上一次匹配前缀的命令
比如历史命令执行过python
!p就会找p开头的命令执行
3)ctrl+r 输入内容去匹配历史命令
![](https://img-blog.csdnimg.cn/img_convert/6f87081ccb5cad6533c72ae4709b637e.png)
光标移动
ctrl+a,跳到命令开头
ctrl+e,跳到命令结尾
ctrl+键盘左键,向左跳一个单词
ctrl+键盘右键,向右跳一个单词
清屏
ctrl+l或者命令clear