主要介绍日常工作中一些常用的命令,内容均整理自慕课网
- 命令提示符
[root@hgs ~]#
其中:
root : 当前登录用户
hgs : 主机名
~ : 当前所在目录(家目录),对于root用户,家目录为:/root , 对于普通用户,家目录为:/home/{userName}
# : 超级用户的提示符,普通用户的提示符为:$
- 帮助命令 : man(该命令非常实用)
- man 命令
#获取指定命令的帮助信息
-
- 退出man,按Q键
- 管道符 : |(命令1的正确输出,作为命令2的操作对象,既命令2必须能操作命令1的正确结果)
- 命令1 | 命令2
- 举例(查看记录) : netstat -ano | grep ESTABLISHED
- 举例(统计记录行数) : netstat -ano | grep ESTABLISHED | wc -l
- 切换所在目录 : cd
英文原意:change directory
-
- 简化操作:
- cd ~ 进入当前用户家目录
- cd - 进入上次目录
- cd .. 进入上一级目录
- 简化操作:
- 查询用户当前所在目录 : pwd
英文原意 : pring working directory
- 查看系统PATH变量 : echo $PATH
- 查询目录中内容 : ls
- ls [选项] [文件或目录]
- 选项 :
- -a 显示所有文件,包括隐藏文件(以“.”开头的文件)
- -l 显示详细信息
- -d 查看目录属性
- -h 人性化显示文件大小
- -i 显示inode
例如,执行 : ls -lh得到如下结果:
-
- -rw-r--r-- (r读 w写 x可执行)
- - 文件类型(-文件 d目录 l软链接文件)
- rw- u所有者
- r-- g所属群组
- r-- o其他人
- -rw-r--r-- (r读 w写 x可执行)
文件目录操作-----------------------------------------------------------------
- 建立目录 : mkdir
- mkdir -p [目录名]
- -p 递归创建
- 删除文件或目录 : rm
- rm -rf [文件或目录]
英文原意 : remove
-
- 选项:
- -r 删除目录
- -f 强制
- 选项:
- 复制命令 : cp(copy)
- cp [选项] [源文件或目录] [目标目录]
- 常用 : cp -dr 源 目标
- 选项 :
- -r 复制目录
- -p 连带文件属性复制
- -d 若源文件是链接文件,则复制链接属性
- -a 相当于 -pdr
- 剪切或改名命令 : mv(move)
- mv [源文件或目录] [目标目录]
搜索操作--------------------------------------------
- 文件搜索命令 : locate
- 命令搜索命令whereis于which
- 文件搜索命令 : find
- 字符串搜索命令 : grep
- find命令于grep命令的区别
---------------------
- locate命令格式
- locate 文件名
在后台数据库中按文件名搜索,搜索速度快
-
-
- /var/lib/mlocate(locate命令所搜索的后台数据库)
-
- 搜索命令的命令 : whereis
#搜索命令所在路径及帮助文档所在位置
-
- 选项 :
- -b : 只查找可执行文件
- -m : 只查找帮助文件
- 选项 :
- 搜索命令的命令 : which
#搜索命令所在路径及别名
- linux中的通配符 :
- * 匹配任意内容
- ? 匹配任意一个字符
- [] 匹配任意一个中括号内的字符
- find命令
- find [搜索范围] [搜索条件]
#搜索文件
-
-
- find / -name install.log //根目录下搜索 install.log文件
- find /root -iname install.log //不区分大小写搜索install.log文件
- find /root -user root //按照所有者搜索
- find / -name "*install.log" //根目录下搜索以install.log结尾的文件
-
#实际使用中需避免大范围搜索,会非常耗费系统资源
#find 是在系统中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配
- 搜索字符串命令 : grep
- grep [选项] 字符串 文件名
#在文件中匹配符合条件的字符串
-
- 选项 :
- -i 忽略大小写
- -v 排除指定字符串
- 选项 :
find命令与grep命令的区别 :
- find命令 : 在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配
- grep命令 : 在文件当中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配。
解压缩操作------------------------------------
- 常用压缩格式 :
- 。zip .gz .bz2
- .tar.gz .tar.bz2
- .zip格式解压缩
- .zip 压缩文件名 源文件 # 压缩文件
- .zip -r 压缩文件名 源目录 #压缩目录
- unzip 压缩文件 #解压缩.zip文件
- .gz格式解压缩
- gzip 源文件
#压缩为.gz格式的压缩文件,源文件会消失
-
- gzip -c 源文件 > 压缩文件
#压缩为.gz文件,源文件保留
例如 : gzip -c cangls > cangls.gz
-
- gzip -r 目录
#压缩目录下所有子文件,但是不能压缩目录(既压缩目录时会给每隔文件生成一个压缩文件)
- gzip -d 压缩文件 #解压缩文件
- gunzip 压缩文件 #解压缩文件
- 打包命令tar
- tar -cvf 打包文件名 源文件
- 选项 :
- -c : 打包
- -v : 显示过程
- -f : 指定打包后的文件名
- 例如 : tar -cvf test.tar test
- 解包命令
- tar -xvf 打包文件名
- 选项 :
- -x 解包
- 例如 : tar -xvf test.tar
- .tar.gz格式解压缩
#其原理是先打包为.tar格式,再压缩为.gz格式
-
- tar -zcvf 压缩包名.tar.gz 源文件
- 选项 :
- -z : 压缩为.tar.gz格式
- tar -zxvf 压缩包名.tar.gz
- 选项:
- -x : 解压缩.tar.gz格式
- -x : 解压缩.tar.gz格式
- .tar.bz2格式解压缩
- tar -jcvf 压缩包名.tar.bz2 源文件
- 选项 :
- -j : 压缩为.tar.bz2格式
- tar -jxvf 压缩包名.tar.bz2
- 选项 :
- -x : 解压缩.tar.bz2格式
关机重启命令=============================
- shutdown命令
- shutdown [选项] 时间
- 选项 :
- -c 取消前一个关机命令
- -h 关机
- -r 重启
- 退出登录命令: logout
- 重启命令 : reboot(简化命令)
挂载==================================
linux系统中访问外部存储设备(光盘、U盘等)前,需先挂载外部存储设备(否则无法访问到其中的数据),该部分就来介绍介绍一下挂载相关命令使用
需要注意是的Linux默认是不支持NTFS文件系统的,这就解释了一些移动硬盘(NTFS格式)在linux为什么不能读取的原因
- 查询与自动挂载
- mount
#查询系统中已经挂载的设备
-
- mount -a
#依据配置文件/etc/fstab的内容,自动挂载
- 挂载命令格式(推荐挂载点建立在/mnt目录下),设备文件名是固定的
- mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点
- 选项 :
- -t 文件系统 : 加入文件系统类型来指定挂载的类型,可以ext3,ext4,iso9660(光盘)等文件系统
- -o 特殊选项 : 可以指定挂载的额外选项
挂载光盘 :
1 [root@hgs mnt]# mkdir cdrom 2 #建立挂载点 3 [root@hgs mnt]# mount -t iso9660 /dev/cdrom /mnt/cdrom 4 #挂载光盘,iso9660对应文件系统,此处代表光盘文件系统5 #还可使用如下命令挂载光盘 6 #[root@hgs mnt]# mount -t iso9660 /dev/sr0 /mnt/cdrom
挂载U盘 :
1 [root@hgs mnt]# fdisk -l
2 #查看U盘设备文件名
3 [root@hgs mnt]# mount -t vfat /dev/sdb1 /mnt/usb
4 #挂载U盘
- 卸载挂载点(此步骤很重要,挂载点不用后必需卸载掉)
- umount 设备文件名或挂载点(二则选其一)
- 卸载以上创建的挂载点 :[root@hgs mnt]#umount /mnt/cdrom
查看用户========================================
#查看登录用户信息
- W [用户名]
- 命令输出 :
- USER : 登录的用户名
- TTY : 登录终端
- FROM : 从哪个IP地址登录
- LOGIN@ : 登录时间
- IDLE : 用户闲置时间
- JCPU :指的是和该终端连接的所有进程占有的时间。这个时间里并不包含过去的后台作业时间,但包括当前正在进行的后台作业所占有的时间
- PCPU : 当前进程锁占有的时间
- WHAT : 当前正在运行的命令
例如:
- who [用户名]
- 命令输出 :
- -用户名
- -登录终端
- -登录时间(登录来源IP地址)
例如:
- 命令输出 :
#查询当前登录和过去登录的用户信息(通过该命令可查看系统用户登录历史,以及系统重启记录,通过该命令可协助分析系统是否有人入侵)
- last(查看的是登录历史,显示的是已登录用户的历史记录)
- last默认是读取/var/log/wtmp文件数据
- 命令输出 :
- -用户名
- -登录终端
- 登录IP
- 登录时间
- 退出时间(在线时间)
例如:执行last,输出如下
#查看所有用户的最后一次登录时间
- lastlog(包含从未登录的用户)
- lastlog 命令默认是读取/var/log/lastlog文件内容
- 命令输出 :
- -用户名
- -登录终端
- -登录IP
- 最后一次登录时间
别名操作==============================================
#查看与设定别名
- alias
#查看系统中所有的命令别名
- alias 别名 = ‘原命令’(此设置非永久生效)
#设定命令别名
#若想别名永久生效,可通过编辑环境变量配置文件,如下所示 :
- vi ~/.bashrc
#删除别名,如下所示:
- ualias 别名
历史命令==============================================
通过如下命令可以查看系统(执行过)的历史命令
- history [选项] [历史命令保存文件]
- 选项 :
- -c : 清除历史命令
- -w : 把缓存中的历史命令写入历史命令保存文件(~/.bash_history)
- 历史命令默认会保存1000条,可以再环境变量配置文件(/etc/profile)中进行修改
- 选项 :
注意 : 默认情况下,终端缓存中的历史命令只会在用户退出登录(logout)时同步到文件中,若需强制同步,可通过-W选项实现
- 历史命令的调用
- 使用上、下箭头调用以前的历史命令
- 使用 “!字串”,重复执行最后一条以该字串开头的命令