Linux学习
搜索
locate 文件名
在后台数据库中按文件名搜索,搜索速度更快
locate数据库每天自动更新一次, 使用updatedb可更新数据库
配置文件
/etc/updatedb.conf
开启搜索限制
PRUNEFS=
搜索时,不搜索的文件系统
PRUNENAMES=
搜索时,不搜索的文件类型
PRUNEPATHS=
命令搜索命令的命令whereis
可以搜索到命令的位置和帮助文档的位置
选项
-b:只查看可执行文件
-m:只查找帮助文件
which
除了可以看到位置,还可以看到别名
文件搜索命令find
find [搜索范围]. [搜索条件]
避免大范围搜索,可能会耗费大量资源
完全匹配通配符
*:匹配任意
? 匹配任意一个单独字符
find /root -iname install.log 表示 不区分大小写
find /root -user root 按照所有者搜索
find /root -nouser 查找没有所有者的文件
find /var/log/ -mtime +10 查找10天前修改的 文件
-10 10天内修改文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
find /root -size 25k 查找文件大小是25KB的文件
-25K 小于25KB的文件
25 等于25KB的文件
+25K 大于25KB的文件
find /etc -size +20k -a -size -50k 查找/etc/目录下,大于20KB并且小于50KB的文件
-a and 逻辑与 ,两个条件都满足
-o or 逻辑或,两个条件满足一个即可
find /etc -size +20k -a -size -50k -exec ls -lh {} ;查找/etc/目录下,大于20k并且小于50k的文件,并显示详细信息
-exec/ -ok 命令 {} ;对搜索结果执行操作
搜索字符串命令grep
grep [选项] 字符串 文件名 在文件当中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除制定字符串
链接
ln 链接名 链接地址 硬链接
ln -l 链接名 链接地址 软链接
PATH环境变量
path环境变量:定义的是系统搜索命令的路径
echo $PATH
帮助命令
man 命令 获取指令命令的帮助
man -f 命令 查看命令拥有那个级别的帮助
相当于
whatis命令
man -k 命令 查看和命令相关的所有帮助
相当于
apropos 命令
--help 获取内部命令
info 命令 详细帮助文档
压缩与解压
.zip格式压缩
zip 压缩名 压缩文件 压缩文件
zip -r 压缩文件名 源目录 压缩目录
unzip 压缩文件 解压缩zip文件
.gz格式压缩
gzip 源文件 压缩为.gz格式的压缩文件,源文件会消失
gzip -c 源文件 > 压缩文件 压缩为.gz格式,源文件保留
gzip -r 目录 压缩目录下所有的子文件,但是不能压缩目录
gzip -d 压缩文件 解压缩文件
gunzip 压缩文件 解压缩文件
.bz2格式压缩
bzip2 源文件 压缩为.bz2格式,不保留源文件
bzip2 -k 源文件 压缩之后保留源文件
bzip2命令不能压缩目录
bzip2 -d 压缩文件 解压缩,-k保留压缩文件
bunzip2 压缩文件 解压缩 -k保留压缩文件
tar
tar -cvf 打包文件名 源文件
选项:
-c : 打包
-v: 显示过程
-f: 指定打包后的文件名
tar -xvf 打包文件名
选项 :
-x : 解打包
.tar.gz压缩格式
tar -zcxf 压缩包名.tar.gz 源文件
选项:
-z: 压缩为.tar.gz格式
tar -zxvf 压缩包名.tar.gz
选项:
-x: 解压缩.tar.gz格式
.tar.bz2压缩格式
tar -jcvf 压缩包名.tar.bz2 源文件
选项:
-z: 压缩为.tar.bz2格式
tar -jxvf 压缩包名.tar.bz2
选项:
-x: 解压缩.tar.bz2格式
关机重启命令
shutdown命令
shutdown [选项] 时间
选项:
-c: 取消前一个关机命令
-h: 关机
-r: 重启
reboot重启
编辑系统启动级别vim /etc/inittab
0 关机
1单用户
2不完全多用户,不含NFS服务
3完全多用户
4未分配
5是图形化界面
6重启
例如:
使用init 0 可以关机
查看系统级别 runlevel
退出登录命令 logout
挂载
查询与自动挂载
mount 查询系统中已经挂载的设备
mount -a 依据配置文件/etc/fstab的内容,自动挂载
挂载命令格式
mount [-t文件系统] . [-o特殊选项] 设备文件名 挂载点
选项:
-t文件系统: 加入文件系统类型来制定挂载的类型,可以ext3 , ext4 ,iso9660等文件系统
-o特殊选项: 可以指定挂载的额外选项
挂载光盘
mkdir /mnt/cdrom 建立挂载点
mount -t iso9660 /dev/sr0 /mnt/cdrom/ 挂载光盘
mount /dev/sr0/mnt/cdrom/
卸载命令
umount 设备文件名或挂载点
umount /mnt/cdrom
挂载U盘
fdisk -l 查看U盘设备文件名
mount -t vfat
查看登录用户信息
w 用户名
命令输出:
USER : 登陆的用户名
TTY: 登陆终端
FROM:从哪个IP地址登陆
LOGIN@:登陆时间
IDLE:用户闲置时间
JCPU:指的是和该终端连接的所有进程占用的时间,这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间
PCPU:是指当前进程所占用的时间
WHAT:当前正在运行的命令
who 用户名
命令输出:
用户名
登录终端
登录时间(登录来源IP地址)
last 查询当前登录和过去登录的用户信息
last命令默认是读取/var/log/wtmp文件数据
命令输出
用户名
登录终端
登录IP
登录时间
退出时间(在线时间)
lastlog 查看所有用户的最后一次登录时间
lastlog命令默认是读取/var/log/lastlog文件内容
命令输出:
用户名
登录终端
登录IP
最后一次登录时间
shell
echo输出命令
echo [选项] . [输出内容]
选项:
-e : 支持反斜线控制的字符转换
第一个脚本
vi hello.sh
#!/bin/bash
#The first program
echo -e "\e[1;34m天上掉下个林妹妹!\e[0m"
脚本执行
赋予执行权限,直接运行
chmod 755 hello.sh
./hello.sh
通过bash调用执行脚本
bash hello.sh
Bash的基本功能
别名永久生效与删除别名
vi ~/.bashrc 写入环境变量配置文件
unalias别名 删除别名
常用快捷键
ctril+ c 强制终止当前命令
ctril+l 清屏
ctril+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 从光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索
历史命令
history [选项] . [历史命令保存文件]
选项:
-c: 清空历史命令
-w: 把缓存中的历史命令写入历史命令保存文件~/.bash_history
历史命令的调用:
使用上下箭头调用以前的历史命令
使用"!n" 重复执行第n条历史命令
使用"!!" 重复执行上一条命令
使用"!字串" 重复执行最后一条以该字串开头的命令
输出重定向
标准输出重定向
命令 > 文件 以覆盖的方式,把命令的正确输出到制定的文件或设备中
命令 >> 文件 以追加的方式 输出到指定文件中
标准错误输出重定向
错误命令 2> 文件
错误命令 2>> 文件
正确输出和错误输出同时保存
命令 > 文件 2>&1 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 >> 文件 2>&1 以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &> 文件 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中
命令 &>> 文件 以追加的方式,把正确输出和错误输出都保存到同一个文件当中
命令>> 文件 1 2>> 文件2 把正确的输出追加到文件1中,把错误的输出追加到文件2中
输入重定向
wc [ 选项].[文件名]
选项:
-c统计字节数
-w统计单词数
-l统计行数
多命令顺序执行
; 命令;命令 多个命令顺序执行,命令之间没有任何逻辑联系
&& 命令1&&命令2 逻辑与 当命令1正确执行,则命令2才会执行 ,如果命令1执行不正确,则命令2不会执行
|| 命令1 ||命令2 逻辑或 如果命令1执行不正确,则命令2才会执行 如果命令1正确执行,则命令2不会执行
管道符
命令1 | 命令2 命令1的正确输出作为命令2的操作对象