设为首页 加入收藏

TOP

Linux实战教学笔记04:Linux命令基础(一)
2017-10-13 10:32:53 】 浏览:677
Tags:Linux 实战 教学 笔记 04:Linux 命令 基础

第四节:Linux命令基础

标签(空格分隔):Linux实战教学笔记


第1章 认识操作环境

QQ20161225-104727@2x.png-38.5kB

  • root:当前登陆的用户名
  • @分隔符
  • chensiqi:主机名
  • ~:当前路径位置
  • 用户的提示符

1.1 Linux系统命令操作语法的格式

屏幕快照 2016-12-25 上午11.19.32.png-429.1kB

提示:

  1. 一般情况下命令中的[]表示可选,既命令的参数及文件是可选的。
  2. 参数选项===>一个命令的不同的功能(不同的条件)。

屏幕快照 2016-12-25 上午11.22.51.png-685.8kB

1.2 Linux目录结构

QQ20161225-112602@2x.png-67.8kB

第2章 认识常用的Linux基础命令

简单粗暴贯穿常用命令,对命令使用框架有个整体认识

2.1 创建一个目录/data

windows下面

新建===>文件夹

Linux下面

  • 创建目录 ===>make directory===>mk dir ===>mkdir

mkdir /data 在当前目录下创建子目录
cd / 回到根目录下
mkdir data 创建data子目录

  • 查看目录===>列表===>list===>ls

ls 查看当前目录内容
ls -ld /data 查看/data目录详细内容
举例
ls / 查看根目录内容
ls -l / 查看根目录下详细内容

2.2相对路径与绝对路径

绝对路径:从根开始的路径

C:\Program Files (x86)\Microsoft Office

从根开始的路径就是绝对路径

绝对路径:/etc/sysconfig/network-scripts/ifcfg-eth0

相对路径:不从“/”根开始,而是把当前所在路径当作根,目标文件或目录距离当前路径的“距离”。
示例:
QQ20161225-114958@2x.png-15.2kB
小结

多练
多给别人讲解
讨论相对路径与绝对路径

mkdir 创建目录
ls 查看目录内容
cd 进入xxxx
pwd 查看当前绝对路径

2.3 在/data 下面创建文件 chensiqi.txt

创建单个文件
屏幕快照 2016-12-25 上午11.56.08.png-13.8kB
创建多个文件
屏幕快照 2016-12-25 上午11.58.14.png-113.9kB

小结:

touch 触摸 创建文件或修改文件时间戳(文件的属性)

2.4 为chensiqi.txt 增加内容“I am studying linux"

vi===>直接写入(关于vi和vim使用方法请自行查询vim tutor)
echo进行追加
屏幕快照 2016-12-25 下午12.03.55.png-25.8kB
注意:
1,我们通常在直接操作文件前要备份文件
2,操作前先看一眼cat 一下

特殊符号:
“>” 重定向,清除原文件里面所有内容,然后把内容追加到文件的末尾
“>>” 追加重定向,追加内容,到文件的尾部
“1>" 输出重定向:把前面输出的东西输入到后边的文件中,会清除文件原有内容。
“1>>" 追加输出重定向:把前面输出的东西输入到后边的文件中,不会清除文件原有内容,只是追加到最后一行。
屏幕快照 2016-12-25 下午12.20.32.png-24kB
<或0< 输入重定向:后跟字符串(不常用)
<<或0<< 追加输入重定向:后跟字符串(不常用) 2> 错误重定向:把错误信息输入到后面的文件中,会删除文件原有内容
2>> 错误追加重定向:把前面错误信息追加到后边的文件中,不会清除文件原有内容
屏幕快照 2016-12-25 下午12.36.32.png-23.1kB

重定向小节:
重定向:改变命令执行时,数据传输的方向
箭头方向就是数据方向===>水流方向
屏幕快照 2016-12-25 下午12.40.03.png-949kB

2.5 把chensiqi.txt拷贝到/tmp目录下

windows复制粘贴

ctrl+c
ctrl+v

Linux下:
复制====>copy===>cp
屏幕快照 2016-12-25 下午1.26.13.png-29.4kB
小结:

cp 复制文件或目录(默认不能拷贝目录)
-r:递归,复制目录,目录及其子孙后代
-p:复制文件同时保持文件属性不变,
-a ===-pdr

2.6 把/data 移动到 /root 目录下面

移动(搬家)====>move====>mv
屏幕快照 2016-12-25 下午1.52.53.png-101.8kB

cd /
mv /data /root
小结
/data ===> /data 及/data下面的子孙后代
/data/===> /data下面的子孙后代
注意:这里目录的移动,如果想仅仅移动目录下面文件而不移动目录使用mv /data/* /root 即可

2.7 进入/root 目录下的data目录,删除chensiqi.txt文件

删除===> remove ====>rm
屏幕快照 2016-12-25 下午1.57.47.png-70.5kB

cd /root/data
rm chensiqi.txt 默认只能删除文件
会提示是否删除 y 即可
rm -f chensiqi.txt 免提示一律yes
注意:删除前要思考操作后是否能够恢复,若不能恢复择应该先cp备份,或者采取移走mv的办法进行删除。

递归删除

rm -rf data 删除目录必须加-r,-f免提示 删除data目录及目录下的所有东西
注意:此命令非常危险,建议不用,采取移动mv的删除方式(在linux跟目录下建立一个垃圾箱文件夹,想删除的都mv过来)
请熟记,运维人员的职责:安全稳定高效

小结:

rm 无后缀只能删除文件
-f 免提式强制删除
-r 删除目录(递归删除目录下所有东西)
#慎用
替代方法:mv 移动文件或目录

提高删除的难度/门槛

通过find命令提高删除的准确度
屏幕快照 2016-12-25 下午2.15.21.png-68.9kB
find data -type f -name "chensiqi.txt"
-type:查找的目标的类型
f : 文件类型
-name + 文件名:文件的名字
第一步:先找出文件
第二步:再删除文件

find小结

find 查找范围 -type 文件类型 f(file) d(directory) -name 文件名

管道
管道命令:xargs
之前的删除文件操作还可以这么处理:
屏幕快照 2016-12-25 下午2.29.29.png-82.3kB

  • 如果前一条命令没法满足你的需求,那么需要续接一条命令来进行再处理,那么就需要管道符+管道命令(| xargs)来续接命令。
  • 也就是说,将管道符 | 左边的命令所执行的结果所为管道符 | 右边的命令的执行范围

2.8 讨论

生产环境下,运维人员如何最大限度的避免误删除文件

  1. 修改或删除数据前请务必备份,最好有异地备份,修改配置等先提交版本管理系统再发布到线上
  2. 运维新手删除应使用mv命令替代rm命令,无用的文件不要着急删除,而是移动到回收站/tmp里观察一段时间可以通过设置别名等手段屏蔽rm,这样一旦直接用到rm命令就是意识到(当然真想用有手段可以越过别名)。
  3. 如果非要删除数据,还可以find结合rm替代单纯的rm,包括设定定时任务等动作执行清理。
  4. 如果非要使用rm删除,请尽量先切换目录再删目录下的数据,能不用通配符就不用通配符
  5. 如果必须要使用rm -rf 命令强制且递归删除文件夹,最后的避免错误方法就是要用tab去不全文件夹名字,不要手敲任何字符,防止误删除
  6. 如果删除的不是目录,就不要用rm -rf,采用最小化的方法rm -f即可,甚至重要的少量文件,可以不用-f,以获得确认删除提示信息

总结:

a,删除数据后,多数情况是可以恢复的,但会影响业务
b,例如:需要停机恢复,且数据丢了,较长时间用户访问不了对应数据了
c,恢复工具诸如ext3grep等
d.事情发生前未雨绸缪永远比发生了在解决好得多
e,养成规范,专业科学的运维习惯,运维流程是避免当黑锅侠的关键!

企业面试题
问:linux下删除一个目录下的所有文件,但保留一个指定文件
方法一:find(最重要必须会)
屏幕快照 2016-12-25 下午2.54.49.png-52.2kB

!:取反,也就是说删除目录下文件类型为f的所有文件但是排除-name为 file9 的文件

方法二:grep过滤内容
屏幕快照 2016-12-25 下午3.00.22.png-52kB

通过find查出所有目标文件夹下的文件内容后,通过管道 | grep 过滤

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇分享一个MySQL分库分表备份脚本(.. 下一篇Linux硬件IO的优化简介

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目