Linux常用基本命令(上)
一、帮助命令
1.man 获得帮助信息
1.1 基本语法
man [命令或配置文件] (功能描述:获得帮助信息)
1.2显示说明
| 信息 | 功能 |
|---|---|
| NAME | 命令的名称和单行描述 |
| SYNOPSIS | 怎样使用命令 |
| DESCRIPTION | 命令功能的深入讨论 |
| EXAMPLES | 怎样使用命令的例子 |
| SEE ALSO | 相关主题(通常是手册页) |
1.3案例实操
查看ls命令的帮助信息
[root@hadoop101 ~]# man ls
2.help 获得shell内置命令的帮助信息
2.1 基本语法
help 命令 (功能描述:获得shell内置命令的帮助信息)
2.2案例实操
查看cd命令的帮助信息
[root@hadoop101 ~]# help cd
3. 常用快捷键
| 常用快捷键 | 功能 |
|---|---|
| ctrl + c | 停止进程 |
| ctrl+l | 清屏 |
| reset | 彻底清屏 |
| ctrl + q | 退出 |
| 善于用tab键 | 提示(更重要的是可以防止敲错) |
| 上下键 | 查找执行过的命令 |
| ctrl +alt | linux和Windows之间切换 |
二、文件目录类
1.pwd
pwd:print working directory 打印工作目录,显示当前工作目录的绝对路径
1.1基本语法
pwd(功能描述:显示当前工作目录的绝对路径)
1.2案例实操
显示当前工作目录的绝对路径
[root@hadoop101 ~]# pwd
/root
2. ls
ls:list 列出目录内容
2.1基本语法
ls [选项] [目录或是文件]
2.2选项说明
| 选项 | 功能 |
|---|---|
| -a | 全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用) |
| -l | 长数据串列出,包含文件的属性与权限等等数据;(常用) |
2.3显示说明
每行列出的信息依次是
|文件类型与权限|链接数|文件属主|文件属组|文件大小byte表示|建立或最近修改时间|名字|
2.4案例实操
查看当前目录的所有内容信息
[atguigu@hadoop101 ~]$ ls -al
总用量 44
drwx------. 5 atguigu atguigu 4096 5月 27 15:15 .
drwxr-xr-x. 3 root root 4096 5月 27 14:03 ..
drwxrwxrwx. 2 root root 4096 5月 27 14:14 hello
-rwxrw-r--. 1 atguigu atguigu 34 5月 27 14:20 test.txt
3.cd
cd:Change Directory切换路径
3.1基本语法
cd [参数]
3.2参数说明
| 参数 | 功能 |
|---|---|
| cd 绝对路径 | 切换路径 |
| cd相对路径 | 切换路径 |
| cd ~或者cd | 回到自己的家目录 |
| cd - | 回到上一次所在目录 |
| cd … | 回到当前目录的上一级目录 |
| cd -P | 跳转到实际物理路径,而非快捷方式路径 |
3.3案例实操
(1)使用绝对路径切换到root目录
[root@hadoop101 ~]# cd /root/
(2)使用相对路径切换到“公共的”目录
[root@hadoop101 ~]# cd 公共的/
(3)表示回到自己的家目录,亦即是 /root 这个目录
[root@hadoop101 公共的]# cd ~
(4)cd- 回到上一次所在目录
[root@hadoop101 ~]# cd -
(5)表示回到当前目录的上一级目录,亦即是 “/root/公共的”的上一级目录的意思;
[root@hadoop101 公共的]# cd ..
4.mkdir 创建一个新的目录
mkdir:Make directory 建立目录
4.1基本语法
mkdir [选项] 要创建的目录
4.2选项说明
| 选项 | 功能 |
|---|---|
| -p | 创建多层目录 |
4.3案例实操
(1)创建一个目录
[root@hadoop101 ~]# mkdir xiyou
[root@hadoop101 ~]# mkdir xiyou/mingjie
(2)创建一个多级目录
[root@hadoop101 ~]# mkdir -p xiyou/dssz/meihouwang
5.rmdir 删除一个空的目录
rmdir:Remove directory 移动目录
5.1基本语法:
rmdir 要删除的空目录
5.2案例实操
(1)删除一个空的文件夹
[root@hadoop101 ~]# rmdir xiyou/dssz/meihouwang
6. touch 创建空文件
6.1基本语法
touch 文件名称
6.2案例实操
[root@hadoop101 ~]# touch xiyou/dssz/sunwukong.txt
7. cp 复制文件或目录
7.1基本语法
cp [选项] source dest (功能描述:复制source文件到dest)
7.2选项说明
| 选项 | 功能 |
|---|---|
| -r | 递归复制整个文件夹 |
7.3参数说明
| 参数 | 功能 |
|---|---|
| source | 源文件 |
| dest | 目标文件 |
7.4经验技巧
强制覆盖不提示的方法:\cp
7.5案例实操
(1)复制文件
[root@hadoop101 ~]# cp xiyou/dssz/suwukong.txt xiyou/mingjie/
(2)递归复制整个文件夹
[root@hadoop101 ~]# cp -r xiyou/dssz/ ./
8. rm 移除文件或目录
8.1基本语法
rm [选项] deleteFile (功能描述:递归删除目录中所有内容)
8.2选项说明
| 选项 | 功能 |
|---|---|
| -r | 递归删除目录中所有内容 |
| -f | 强制执行删除操作,而不提示用于进行确认。 |
| -v | 显示指令的详细执行过程 |
8.3案例实操
(1)删除目录中的内容
[root@hadoop101 ~]# rm xiyou/mingjie/sunwukong.txt
(2)递归删除目录中所有内容
[root@hadoop101 ~]# rm -rf dssz/
9. mv 移动文件与目录或重命名
9.1基本语法
(1)mv oldNameFile newNameFile (功能描述:重命名)
(2)mv /temp/movefile /targetFolder (功能描述:移动文件)
9.2案例实操
(1)重命名
[root@hadoop101 ~]# mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
(2)移动文件
[root@hadoop101 ~]# mv xiyou/dssz/houge.txt ./
10. cat 查看文件内容
查看文件内容,从第一行开始显示。
10.1基本语法
cat [选项] 要查看的文件
10.2选项说明
| 选项 | 功能描述 |
|---|---|
| -n | 显示所有行的行号,包括空行。 |
10.3经验技巧
一般查看比较小的文件,一屏幕能显示全的。
10.4案例实操
查看文件内容并显示行号
[atguigu@hadoop101 ~]$ cat -n houge.txt
11. more 文件内容分屏查看器
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键,详见操作说明。
11.1基本语法
more 要查看的文件
11.2操作说明
| 操作 | 功能说明 |
|---|---|
| 空白键 (space) | 代表向下翻一页 |
| Enter | 代表向下翻一行 |
| q | 代表立刻离开 more ,不再显示该文件内容 |
| Ctrl+F | 向下滚动一屏 |
| Ctrl+B | 返回上一屏 |
| = | 输出当前行的行号 |
| :f | 输出文件名和当前行的行号 |
11.3案例实操
采用more查看文件
[root@hadoop101 ~]# more smartd.conf
12 less 分屏显示文件内容
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
12.1基本语法
less 要查看的文件
12.2操作说明
| 操作 | 功能说明 |
|---|---|
| 空白键 | 向下翻动一页 |
| pagedown | 向下翻动一页 |
| pageup | 向上翻动一页 |
| /字串 | 向下搜寻『字串』的功能;n:向下查找;N:向上查找 |
| ?字串 | 向上搜寻『字串』的功能;n:向上查找;N:向下查找 |
| q | 离开 less 这个程序 |
12.3经验技巧
用SecureCRT时[pagedown]和[pageup]可能会出现无法识别的问题。
12.4案例实操
采用less查看文件
[root@hadoop101 ~]# less smartd.conf
13. echo
echo输出内容到控制台
13.1基本语法
echo [选项] [输出内容]
-e:支持反斜线控制的字符转换
| 控制字符 | 作用 |
|---|---|
| \ | 输出\本身 |
| \n | 换行符 |
| \t | 制表符,也就是Tab键 |
13.2案例实操
[atguigu@hadoop101 ~]$ echo "hello\tworld"
hello\tworld
[atguigu@hadoop101 ~]$ echo -e "hello\tworld"
hello world
14. head 显示文件头部内容
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。
14.1基本语法
head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件(功能描述:查看文件头5行内容,5可以是任意行数)
14.2选项说明
| 选项 | 功能 |
|---|---|
| -n<行数> | 指定显示头部内容的行数 |
14.3案例实操
查看文件的头2行
[root@hadoop101 ~]# head -n 2 smartd.conf
15. tail 输出文件尾部内容
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的前10行内容。
15.1基本语法
(1)tail 文件 (功能描述:查看文件头10行内容)
(2)tail -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
(3)tail -f 文件 (功能描述:实时追踪该文档的所有更新)
15.2选项说明
| 选项 | 功能 |
|---|---|
| -n<行数> | 输出文件尾部n行内容 |
| -f | 显示文件最新追加的内容,监视文件变化 |
15.3案例实操
(1)查看文件头1行内容
[root@hadoop101 ~]# tail -n 1 smartd.conf
(2)实时追踪该档的所有更新
[root@hadoop101 ~]# tail -f houge.txt
16. > 输出重定向和 >> 追加
16.1基本语法
(1)ls -l >文件 (功能描述:列表的内容写入文件a.txt中(覆盖写))
(2)ls -al>>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
(3)cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
(4)echo “内容” >> 文件
16.2案例实操
(1)将ls查看信息写入到文件中
[root@hadoop101 ~]# ls -l>houge.txt
(2)将ls查看信息追加到文件中
[root@hadoop101 ~]# ls -l>>houge.txt
(3)采用echo将hello单词追加到文件中
[root@hadoop101 ~]# echo hello>>houge.txt
17. ln 软链接
软链接也成为符号链接,类似于windows里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。
17.1基本语法
ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)
17.2经验技巧
删除软链接: rm -rf 软链接名,而不是rm -rf 软链接名/
查询:通过ll就可以查看,列表属性第1位是l,尾部会有位置指向。
17.3案例实操
(1)创建软连接
[root@hadoop101 ~]# mv houge.txt xiyou/dssz/
[root@hadoop101 ~]# ln -s xiyou/dssz/houge.txt ./houzi
[root@hadoop101 ~]# ll
lrwxrwxrwx. 1 root root 20 6月 17 12:56 houzi -> xiyou/dssz/houge.txt
(2)删除软连接
[root@hadoop101 ~]# rm -rf houzi
(3)进入软连接实际物理路径
[root@hadoop101 ~]# ln -s xiyou/dssz/ ./dssz
[root@hadoop101 ~]# cd -P dssz/
18. history 查看已经执行过历史命令
18.1基本语法
history (功能描述:查看已经执行过历史命令)
18.2案例实操
查看已经执行过的历史命令
[root@hadoop101 test1]# history
三、时间日期类
1.基本语法
date [OPTION]… [+FORMAT]
2.选项说明
| 选项 | 功能 |
|---|---|
| -d<时间字符串> | 显示指定的“时间字符串”表示的时间,而非当前时间 |
| -s<日期时间> | 设置系统日期时间 |
3.参数说明
| 参数 | 功能 |
|---|---|
| <+日期时间格式> | 指定显示时使用的日期时间格式 |
1.date 显示当前时间
1.1基本语法
(1)date (功能描述:显示当前时间)
(2)date +%Y (功能描述:显示当前年份)
(3)date+%m (功能描述:显示当前月份)
(4)date +%d (功能描述:显示当前是哪一天)
(5)date “+%Y-%m-%d %H:%M:%S” (功能描述:显示年月日时分秒)
1.2案例实操
(1)显示当前时间信息
[root@hadoop101 ~]# date
2017年 06月 19日 星期一 20:53:30 CST
(2)显示当前时间年月日
[root@hadoop101 ~]# date +%Y%m%d
20170619
(3)显示当前时间年月日时分秒
[root@hadoop101 ~]# date "+%Y-%m-%d %H:%M:%S"
2017-06-19 20:54:58
2.date 显示非当前时间
2.1基本语法
(1)date -d ‘1 days ago’ (功能描述:显示前一天时间)
(2)date -d ‘-1 days ago’ (功能描述:显示明天时间)
2.2案例实操
(1)显示前一天
[root@hadoop101 ~]# date -d '1 days ago'
2017年 06月 18日 星期日 21:07:22 CST
(2)显示明天时间
[root@hadoop101 ~]#date -d '-1 days ago'
2017年 06月 20日 星期日 21:07:22 CST
3. date 设置系统时间
3.1基本语法
date -s 字符串时间
3.2案例实操
设置系统当前时间
[root@hadoop101 ~]# date -s "2017-06-19 20:52:18"
4. cal 查看日历
4.1基本语法
cal [选项] (功能描述:不加选项,显示本月日历)
4.2选项说明
| 选项 | 功能 |
|---|---|
| 具体某一年 | 显示这一年的日历 |
4.3案例实操
(1)查看当前月的日历
[root@hadoop101 ~]# cal
(2)查看2017年的日历
[root@hadoop101 ~]# cal 2017
四、用户管理命令
1. useradd 添加新用户
1.1基本语法
useradd 用户名 (功能描述:添加新用户)
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)
1.2案例实操
添加一个用户
[root@hadoop101 ~]# useradd tangseng
[root@hadoop101 ~]#ll /home/
2.passwd 设置用户密码
2.1基本语法
passwd 用户名 (功能描述:设置用户密码)
2.2案例实操
设置用户的密码
[root@hadoop101 ~]# passwd tangseng
3. id 查看用户是否存在
3.1基本语法
id 用户名
3.2案例实操
查看用户是否存在
[root@hadoop101 ~]#id tangseng
4.cat /etc/passwd 查看创建了哪些用户
基本语法
[root@hadoop101 ~]# cat /etc/passwd
5. su 切换用户
su: swith user 切换用户
5.1基本语法
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
su -用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
5.2案例实操
切换用户
[root@hadoop101 ~]#su tangseng
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@hadoop101 ~]#exit
[root@hadoop101 ~]#su - tangseng
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/tangseng/bin
6.userdel 删除用户
6.1基本语法
(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)
(2)userdel -r用户名 (功能描述:用户和用户主目录,都删除)
6.2选项说明
| 选项 | 功能 |
|---|---|
| -r | 删除用户的同时,删除与用户相关的所有文件 |
6.3案例实操
(1)删除用户但保存用户主目录
[root@hadoop101 ~]#userdel tangseng
[root@hadoop101 ~]#ll /home/
(2)删除用户和用户主目录,都删除
[root@hadoop101 ~]#useradd zhubajie
[root@hadoop101 ~]#ll /home/
[root@hadoop101 ~]#userdel -r zhubajie
[root@hadoop101 ~]#ll /home/
7.who 查看登录用户信息
7.1基本语法
(1)whoami (功能描述:显示自身用户名称)
(2)who am i (功能描述:显示登录用户的用户名)
7.2案例实操
(1)显示自身用户名称
[root@hadoop101 opt]# whoami
(2)显示登录用户的用户名
[root@hadoop101 opt]# who am i
8.sudo 设置普通用户具有root权限
8.1添加atguigu用户,并对其设置密码。
[root@hadoop101 ~]#useradd atguigu
[root@hadoop101 ~]#passwd atguigu
8.2修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下所示:
Allow root to run any commands anywhere
root ALL=(ALL) ALL
atguigu ALL=(ALL) ALL
或者配置成采用sudo命令时,不需要输入密码
Allow root to run any commands anywhere
root ALL=(ALL) ALL
atguigu ALL=(ALL) NOPASSWD:ALL
修改完毕,现在可以用atguigu帐号登录,然后用命令 sudo ,即可获得root权限进行操作。
8.3案例实操
用普通用户在/opt目录下创建一个文件夹
[atguigu@hadoop101 opt]$ sudo mkdir module
[root@hadoop101 opt]# chown atguigu:atguigu module/
9.usermod 修改用户
9.1基本语法
usermod -g 用户组 用户名
9.2选项说明
| 选项 | 功能 |
|---|---|
| -g | 修改用户的初始登录组,给定的组必须存在。默认组id是1 |
9.3案例实操
将用户加入到用户组
[root@hadoop101 opt]#usermod -g root zhubajie
五、 用户组管理命令
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,
如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。
1. groupadd 新增组
1.1基本语法
groupadd 组名
1.2案例实操
添加一个xitianqujing组
[root@hadoop101 opt]#groupadd xitianqujing
2.groupdel 删除组
2.1基本语法
groupdel 组名
2.2案例实操
删除xitianqujing组
[root@hadoop101 opt]# groupdel xitianqujing
3.groupmod 修改组
3.1基本语法
groupmod -n 新组名 老组名
3.2选项说明
| 选项 | 功能描述 |
|---|---|
| -n<新组名> | 指定工作组的新组名 |
3.3案例实操
修改atguigu组名称为atguigu1
[root@hadoop101 ~]#groupadd xitianqujing
[root@hadoop101 ~]# groupmod -n xitian xitianqujing
4.cat /etc/group 查看创建了哪些组
基本操作
[root@hadoop101 atguigu]# cat /etc/group
六、文件权限类
1. 文件属性
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。
1.1从左到右的10个字符表示

如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
(1)0首位表示类型 在Linux中第一个字符代表这个文件是目录、文件或链接文件等等 ‘-’ 代表文件 d 代表目录 l链接文档(link file);
(2)第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User
(3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group
(4)第7-9位确定其他用户拥有该文件的权限 —Other
1.2rxw作用文件和目录的不同解释
(1)作用到文件:
[ r ]代表可读(read): 可以读取,查看
[ w ]代表可写(write):可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件.
[ x]代表可执行(execute):可以被系统执行
(2)作用到目录:
[ r ]代表可读(read): 可以读取,ls查看目录内容
[ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
[x ]代表可执行(execute):可以进入该目录
1.3案例实操
[root@hadoop101 ~]# ll
总用量 104
-rw-------. 1 root root 1248 1月 8 17:36 anaconda-ks.cfg
drwxr-xr-x. 2 root root 4096 1月 12 14:02 dssz
lrwxrwxrwx. 1 root root 20 1月 12 14:32 houzi -> xiyou/dssz/houge.tx

(1)如果查看到是文件:链接数指的是硬链接个数。创建硬链接方法
ln [原文件] [目标文件]
[root@hadoop101 ~]# ln xiyou/dssz/houge.txt ./hg.txt
(2)如果查看的是文件夹:链接数指的是子文件夹个数。
[root@hadoop101 ~]# ls -al xiyou/
总用量 16
drwxr-xr-x. 4 root root 4096 1月 12 14:00 .
dr-xr-x---. 29 root root 4096 1月 12 14:32 ..
drwxr-xr-x. 2 root root 4096 1月 12 14:30 dssz
drwxr-xr-x. 2 root root 4096 1月 12 14:04 mingjie
2. chmod 改变权限
2.1基本语法

第一种方式变更权限 chmod [{ugoa}{±=}{rwx}] 文件或目录
第二种方式变更权限 chmod [mode=421 ] [文件或目录]
2.2经验技巧
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
r=4 w=2 x=1 rwx=4+2+1=7
2.3案例实操
(1)修改文件使其所属主用户具有执行权限
[root@hadoop101 ~]# cp xiyou/dssz/houge.txt ./
[root@hadoop101 ~]# chmod u+x houge.txt
(2)修改文件使其所属组用户具有执行权限
[root@hadoop101 ~]# chmod g+x houge.txt
(3)修改文件所属主用户执行权限,并使其他用户具有执行权限
[root@hadoop101 ~]# chmod u-x,o+x houge.txt
(4)采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权限。
[root@hadoop101 ~]# chmod 777 houge.txt
(5)修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可执行权限。
[root@hadoop101 ~]# chmod -R 777 xiyou/
3. chown 改变所有者
3.1基本语法
chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有者)
3.2选项说明
| 选项 | 功能 |
|---|---|
| -R | 递归操作 |
3.3案例实操
(1)修改文件所有者
[root@hadoop101 ~]# chown atguigu houge.txt
[root@hadoop101 ~]# ls -al
-rwxrwxrwx. 1 atguigu root 551 5月 23 13:02 houge.txt
(2)递归改变文件所有者和所有组
[root@hadoop101 xiyou]# ll
drwxrwxrwx. 2 root root 4096 9月 3 21:20 xiyou
[root@hadoop101 xiyou]# chown -R atguigu:atguigu xiyou/
[root@hadoop101 xiyou]# ll
drwxrwxrwx. 2 atguigu atguigu 4096 9月 3 21:20 xiyou
4.chgrp 改变所属组
4.1基本语法
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
4.2案例实操
(1)修改文件的所属组
[root@hadoop101 ~]# chgrp root houge.txt
[root@hadoop101 ~]# ls -al
-rwxrwxrwx. 1 atguigu root 551 5月 23 13:02 houge.txt
其他命令:
Linux常用基本命令大全(下)
2004

被折叠的 条评论
为什么被折叠?



