Linux基础——第一关
来源:互联网 发布:霍华德站立摸高数据 编辑:程序博客网 时间:2024/06/06 20:27
整个Linux运维需要掌握的知识很多,所以在学习Linux运维之前,我们需要先检验一下自己Linux的水平。我们通过抛出例题的方式来检验一下目前为止我们的Linux掌握情况。
[考试检验]
- 创建一个目录/data
[命令] [参数] [路径]创建目录 mkdir /data显示目录或文件 ls -ld /data
- 在/data下面建立一个文件my.txt
[命令] [参数] [文件名]切换目录 cd /data创建文件 touch my.txt查看目录或文件 ls -l
- 为my.txt增加内容为 “I am studying linux.”
> 方法一:常规编辑方法 执行vi my.txt进入vi编辑器、点击a或i进入<编辑模式>,敲入内容I am studying Linux,然后按键盘上的<esc键>退出编辑模式进入<命令模式>,最后敲<:wq>保存并退出。<wq 解释 Write quit>> 方法二:单行文件插入常用命令,内容追加到文件尾部echo 'I am studying linux.'>>/data/my.txt <企业中很常用>> [echo命令示例扩展一]echo 'I am OK' > /data/my.txt <会覆盖文件的内容>
- 把my.txt文件拷贝到/tmp下
cp my.txt /tmp/> 拷贝目录 cp -a /etc/ tmp
- 把/data目录移动到/root下
mv /data /root/[提示:如果希望带目录拷贝,尽量不要mv /data/ /root/,移动目录前,源目录结尾不要多余斜线。虽然此处可以,但是我们要养成好的规范和习惯。]
- 进入/root下的data目录,删除my.txt
cd /root/datarm my.txt> 删除文件或目录时,生产环节的使用方法一般是:(1) 和xargs搭配用法 find . -type f -mtime +15 | xargs rm -f [#删文件 15天以前 #删目录下文件用这个好] find . -type d -mtime +30 | xargs rm -rf [#删除目录 30天以前 慎用] [提示:xargs是一个不错的命令,要总结](2) 使用find的-exec find /logs -type f -mtime +5 -exec rm {} \; [#在/logs目录中查找更改时间在5日以前的文件并删除它们] [提示:find命令是生产环境中很重要的一个命令,要总结]
- 已知文件test.txt内容为:
test
liyao
me
hello
请给出打印test.txt内容时,不包含me字符串的命令
> 方法一grep -v me test.txt> 方法二sed -n /me/p test.txt
- 请用一条命令创建/data和/data/2017目录
递归创建目录 mkdir -p /data/2017查看目录结构 tree /data安装tree yum install tree -y
- 已知/tmp目录下已经存在了test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt,而让linux系统不提示是否覆盖(root权限下)
> 方法一/bin/cp /mnt/test.txt /tmp/test.txt> 方法二\cp /mnt/test.txt /tmp/test.txt[提示:此题的思路是屏蔽掉系统默认的对应命令别名,默认执行cp的操作是调用了别名的。所以提示覆盖。详细说明: cp命令默认是不会提示overwrite的,但是cp的-i选项会提示,而一般Linux的用户环境文件 ~/.bashrc中会把cp命令成alias cp='cp -i',如: 命令 alias | grep cp 结果 alias cp='cp -i'这样在Linux下输入cp命令实际上运行的是cp -i,加上一个"\"符号或者cp全路径/bin/cp就是让此次cp命令不使用别名运行。]
- 只查看ett.txt文件(100行)内第20行到第30行的内容
生成ett.txt文件 seq 100>ett.txt> 方法一head -30 ett.txt | tail -11> 方法二sed -n 20,30p ett.txt> 方法三awk '{if(NR>19&&NR<31) print $0}' ett.txt #NR是awk中的行号[小结]sed 擅长行 sed -n '3,7p' test.txtawk 擅长列 awk -F ":" '{print $1}' /etc/passwd
- 分析图片服务日志,把日志(每个图片访问次数*图片大小的总和)排行,取top10,也就是计算每个url的总访问大小
有点难,后续学习之后再补上。
- 把/me目录及其子目录下所有以扩展名.sh结尾的文件中包含./hostlists.txt的字符串全部替换成../idctest_iplist。
find /me -name '*.sh' -type f -exec sed -i 's#./hostlists.txt#../idctest_iplist#g' {} \;
[命令总结]
mkdir 创建目录的命令 make directorysls -l(long)d(directory)显示目录或文件 全称listcd 切换目录层次change directoryecho 打印输出内容,如:echo {1..6}vi/vim 记事本编辑器 命令模式(:wq :q :q! :wq!)<==>插入模式(esc切换命令模式) w write q quit !强制 set nu 显示行号cat 查看文件内容 [cat命令示例] cat >> /data/my.txt <<EOF I am a student, do you know? EOFcp [-aifpru] [源文件] [目标文件] -a:相当于 -pdr -d:若源文件为链接文件(link file),则复制链接文件属性而非档案本身。 -f:强制,若目标档案已经存在且无法开启,则移除后再尝试。 -i:若目标文件已经存在,在覆盖时会先询问。 -p:连同档案的属性一起复制过去,而非使用默认属性。 -r:递归,用于复制目录 -u:若目标文件存在,则目标文件比源文件旧时才复制。 [提示:如果源文件是多个,那么目的文件在最后,且是目录。]mv [-ifu] [源文件/源目录] [目的文件/目的目录] -i:如果目的文件已存在,询问是否覆盖 -f:强制执行,不会询问。 -u:若目的文件存在,则比源文件新,才会移动。 [提示:如果源文件是多个,那么目的文件在最后,且是目录。]pwd 显示当前路径rm -f:强制删除文件 -r:递归删除 删除文件或目录 -rf:删除指定的目录和文件rmdir 删除空目录,鸡肋命令。head 头部 显示文件头部-n 行数 [-行数],默认10行tail 尾巴 显示文件尾部-n 行数 [-行数],默认10行grep 核心命令之一(三剑客之三) 过滤内容:如:grep "hello" test.txt -v:排除 [提示:按行过滤]sed 取各种内容(三剑客之二) -n:取消原始输出 如:sed -n /[^me]/p text.txt #me开头的行打印 sed -n /[^me]/d text.txt #删除me开头的行 awk (三剑客之一) 如:awk /me/ test.txt #过滤me[查看命令帮助的手段](1)man 命令名(2)命令 --help(3)搜索引擎 "Linux 命令名"alias 显示设置别名unalias 取消别名which 查看命令的路径whereis,locate,findfind 查找命令 -type:查找的类型,如:f,文件;d,目录; -name:按名字查找 -mtime:按修改时间查找seq 打印数字序列 -s:指定分隔符 [命令] [参数] [起始] [步长] [结束] seq -s "=" 2 2 10 结果:2=4=6=8=10xargs 用于把find/ls的输出交给后面处理touch 创建文件或者修改文件时间戳
[符号]
: 多个命令的分隔符/ 根或者路径的分隔符> 重定向(数据流朝着箭头方向流动) 覆盖原来文件内容>> 追加重定向(数据流朝着箭头方向流动) 在原来文件结尾追加.. 上一级目录. 当前目录~ 用户的家目录|管道 把前一个命令的输出交给后一个命令继续处理
阅读全文
1 0
- Linux基础——第一关
- Linux基础重点补充——第一关
- Linux基础——第二关
- 网络攻防平台基础第一关
- 《Linux常用命令第一关(1)》
- 《Linux常用命令第一关(2)》
- 第一关
- 第一关
- 网络黑客攻防学习平台之基础关第一题
- 网络信息安全攻防学习平台——基础关
- 《Linux常用命令第一关(3)之seq命令简介》
- 西邮Linux兴趣小组2017纳新免试题第一关详解
- linux基础第一课
- Linux基础--第一日
- 【Android】简单的“云游戏”——推箱子第一关
- 【华为oj】第一关
- 地牢第一关(Python)
- hackthegame<第一关>
- vmware vsphere创建和管理虚拟机
- 数据结构-线性顺序表操作
- Html-如何正确给table加边框
- Java IO
- ORA-09925: Unable to create audit trail file
- Linux基础——第一关
- VMware12版虚拟机怎么安装win7系统(详细教程)
- 记录:non-compatible bean definition of same name and class [com.XXX.XXX]
- Java通过python命令执行DataX任务
- WINDOW与LINUX的TCP/IP通信
- Git,GitHub入门
- laytpl--前端数据绑定
- Best Time to Buy and Sell Stock II(leetcode)
- URI和URL的区别