一切皆文件
- ls -a 查看隐藏文件(所有的隐藏文件)( . 代表当前目录 ,.. 代表当前上级目录)
- ls -A 查看隐藏文件 (不包括 . .. 文件,其它隐藏文件全有)
- ls -al 详细查看文件(包括隐藏的)
- ls -lhi 最详细查看信息(在底层磁盘存储和查找,相当于一个信息编号:137477696)
- ll 相当于 ls -l 查看详细信息
- chmod [ u / g / o / a ] [ + / - / = ] [ r / w / x ] file
- 其中 :u表示User,是文件的所有者;g表示跟User同Group的用户;o表示Other,即其他用户;a表示ALL,所有用
- +表示增加权限;-表示取消权限;=表示取消之前的权限,并给予唯一的权限
- r表示Read,即读文件;w表示Write,即写文件;x表示运行文件。
- 例如:chmod u+x bb , chmod u-wrx bb , chmod u+wrx bb , chmod g+wrx bb , chmod o+wrx bb , chmod a- bb ,
- chmod a-wrx bb , chmod a+wrx bb , chmod a-wrx bb , chmod o=wrx bb
- chmod [xyz] file, 其中,x,y,z分别表示数字(最大不超过7),并分别对应User、Group、Other。x,y,z的值由r(r=4),w ( w=2 ),x ( x=1 )来确定。
- 例如:chmod 600 bb , chmod 777 bb
- # 表示当前root目录下,$ 表示在普通用户下。
- / 表示在根目录下 ( / (在/目录下的pwd查看的结果) ) ,~表示在家目录下 pwd查看的结果(/root (指在root目录下操作的),(/home/liqing (指在普通用户下操作的)
- 一般模式
- set nonu 关闭行标
- set nu 开启行标
- N + shift + g 跳到第N行
- dNd 删除N行(例:d3d ,删除的是包括光标所在位置,连续的三行)
- dd 删除一行
- u 撤销
- p 粘贴
- yNy 复制N行(例:上面是y7y,才能在下面一行 p才可以复制7行)
- yy 复制
14. 常用快捷键
Ctrl + U 删除写的命令(直接一行)例:{bigdata111 ~}# ls -l ,直接把ls -l 删除了
Ctrl + L 清屏命令
Ctrl + 删除 为删除错的命令
在windows : Home键也可以到最前面
END键也可以跳到最1后面
在Linux下:
Shift+6(^) 跳到最前面一行 (在没有进行编辑前提下)
Shift+4( $)跳到最后面一行(在没有进行编辑前提下)
15.编辑模式
- i 进入编辑模式
- o 进入下一行的编辑模式
16.退出命令
- w 保存
- q 退出
- ! 感叹号强制执行(不会对文件进行更改)
- 一般用wq保存(先w保存,在q退出)
- vim(可视化有,最小化没有)
17. 文件目录类
- mkdir 创建新目录
- ls 列出目录内容
- pwd 显示当前工作目录。例:/root/user(包含自己所在的位置)
- mkdir 创建新目录
- mkdir -p 递归创建 例子:mkdir -p cc/dd (cc和dd目录都不存在前提)
- touch 创建空文件
- cd 切换目录(#: cd /root/liqing/ 绝对路径)(~: cd liqing/)
- cp 复制文件或目录(文件到文件(有提示是否覆盖),文件到目录(有提示是否覆盖),目录不可以到目录之间复制)
- cp -r 递归复制 例:cp -r 66 88(66是目录里面有俩文件,递归复制到88的空目录里)可以目录到目录之间复制
- rm 删除文件(有提示是否删除)(命令删除就没了,没有回收站,删除后就找不回来了),无法删目录。
- rm -r 递归删除文件或目录(有提示是否删除)
- history 历史服务器(查看以前写的命令)
- echo 追加文件 (echo 99999999 >>bb (相当于99999999追加到bb文件中))
- tail -F 监控文件 (tail -f bb (可以实时查看向bb文件追加的内容)一般经常用来监控日志)
- more 分页查看文件
- more ctrl + B 返回上一屏, 空格显示是下一页。
- cat 查看目文件,大量的文件内容(几百万行的数据内容),如果一cat,就卡死了(注意)(适合查看小文件)
- mv 移动目录 (相当于剪切了,无提示),可以文件到文件(会提示是否覆盖 mv aa bb 相当于aa文件移动到bb)也 可以文件到目录,无提示),也可以目录到目录(无提示)
- Rm -fr 删除,无提示(核弹命令)过于牛批,rm -fr / 整个系统就凉凉了,gg了
- ln -s 软连接 ln -s aaaaa a123 (把aaaaa的目录 软连接到a123目录中,可以删除a123目录,对aaaaa目录没有影响)(也可以文件软连接,源文件内容修改,软连接的文件内容也会修改)
- l 是软连接的标志
- tab 自动补充键 (经常使用)
- cal 查看日历(cal -3 查看上中下三个月时间 ,cal -y 查看本年的所有月份 ,cal 1999 (查看1999年所有的月份)
- date 显示当前时间
- date -s 设置系统时间
- date -s ‘2019-03-09 23:23:23’(更改系统时间,手动的)
- useradd [用户] 添加新用户(useradd liqing )
- userdel [用户] 删除新用户 (userdel liqing)
- passwd [用户] 设置用户密码(切记:在普通用户下设置不了密码,只有在根用户下才可以设置密码)
- 【root etc】 vi /etc/sudoers 在内容最后面,可以把普通用户也设置成root用户
- root ALL=(ALL) ALL
- liqing ALL=(ALL) ALL (记住强制保存退出,因为他只可读,要强制退出,这是加的普通用户)
- root用户才能修改hosts. [liqing etc] sudo vi /etc/hosts (这样才可以,然后出现
- [sudo] password for plus : ****** (这是root的密码)输入后,就可以进入配置文件修改hosts.
- 添加 :192.168.1.121 bigdata111(主机名)
- id [用户] 判断用户是否存在(id liqing)
- su [用户] 切换用户 su liqing
- /etc/sudoers 设置普通用户具有root权限
- usermod 修改用户
- usermod -g dev itstar 把用户itstar加入到dev用户组
- groupadd itstar 新增用户组
- groupdel 删除组
- groupmod 修改组
- cat /etc/group 查看创建了哪些组(无论是在root还在liqing(普通用户已经设置了root权限) 能看到root,也可以看到普通目录,查看分组)
- 文件权限类
- chmod改变权限 chmod -R 777 用户名 (chmod -r 777 88) (88是目录,里面还有一个66目录,递归直接都是777权限)
- chown [最终用户][文件或目录]
- chown -R liqing:liqing [文件名] (改变拥有者)
- 根目录下有许多系统文件 ,比如/etc (/etc/bin 里面全是命令,底层写的也是一个文件,切记不要修改。颜色都是绿色的,都有执行权限)压缩包是红色的。(文件内容有加密的)
- 磁盘分区类
- fdisk 在root用户下查看分区
- df 查看硬盘(kb)df -h (Mb)显示。只有一个磁盘
- 老版本需要手动划分磁盘(6版本),新版本自动划分(7版本)
- mount /unmount 挂载/卸载 (CentOS就是个光盘)
- 搜索查找类(挺好用)
- find [搜索范围][匹配条件]
- 按文件名
- find / -name a (在根目录下查看文件名为a的文件)
- 按拥有者
- find /opt -user liqing
- 按文件大小(在某目录下查找大于1M的文件)
- find ~ -size +1024
- grep 管道符
- grep + 参数 + 查找内容 + 源文件
- rpm -qa|grep -i mysql 查找系统中是否有mysql的rpm包(i是不区分大小写)
- rpm -qa是查找条件
- grep "C\|A" A 注:区分大小写
- grep -i "C\|A" A 是不区分大小写
- 进程线程类
- ps -aux 查看系统中的进程
- top 查看系统的健康状态(实时的查看)可以设置时间,几秒更新一次
- kill 进程 kill -9 进程号、直接杀死进程
- 压缩和解压缩(压缩算法不一样,大小就不一样,效率就不一样)压缩种类很多
- tar -czvf mod.gz mod/ 创建一个gzip格式的压缩包(mod 是一个目录(可以改名字),文件也可以压缩,mod.gz(gz是一个压缩格式),mod/是指压缩哪个目录),解压的无论是文件还是目录都还在.
- tar -zxvf archive.gz 解压一个gzip格式的压缩包(可以解压出来,解压出来是里面的内容)
- zip + 文件名 + 要压缩的内容 (既可以压缩文件也可以压缩目录)zip aa11.zip mod (aa11是自己起的,后缀必须得有zip)
- unzip + *.zip 解压文件(解压出来得文件,到源目录下了,可以查看到)
- zip a.zip a 把a压缩成zip格式的文件
- Linux定时任务Crontab
- 基本语法
- crontab -e 编辑定时任务
- crontab -l 查询定时任务
- crontable -r 删除定时任务
- crontab -e进入编辑状态,* * * * * 执行的任务
项目 | 含义 | 范围 |
第一个“*” | 一小时当中的第几分钟(分) | 0-59 |
第二个“*” | 一天当中的第几小时(时) | 0-23 |
第三个“*” | 一个月当中的第几天(天) | 1-31 |
第四个“*” | 一年当中的第几月(月) | 1-12 |
第五个“*” | 一周当中的星期几(周) | 0-7(0和7都代表星期日) |
特殊符号
特殊符号 | 含义 |
* | 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。 |
, | 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令 |
特定时间执行命令
时间 | 含义 |
45 22 * * * 命令 | 在22点45分执行命令 |
0 17 * * 1 命令 | 每周1 的17点0分执行命令 |
0 5 1,15 * * 命令 | 每月1号和15号的凌晨5点0分执行命令 |
40 4 * * 1-5 命令 | 每周一到周五的凌晨4点40分执行命令 |
*/10 4 * * * 命令 | 每天的凌晨4点,每隔10分钟执行一次命令 |
0 0 1,15 * 1 命令 | 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。 |
案例:
6 20 17 9 2 mkdir /root/ccc(创建一个新的目录ccc)
10 20 17 9 2 touch /root/bb
11 20 17 9 2 echo 10 >> /root/bb (如果有bb存在就追加10到bb文件夹中)
*/1 * * * * echo “1” >> /opt/nn
翻译:每分钟把1追加到该目录中