Linux就该这么学 20181002(第二章基础命令)

参考链接https://www.linuxprobe.com/ 

忘记密码操作 启动页面 默认
按e 在linux16行后空格 rd.
break ctrl + x mount -o remount,rw /sysroot chroot /sysroot passwd touch /.autorelabel exit reboot 第一章 20181002 echo man date "+%Y+%m+%d %H:%M:%S" date -s "20181002 21:42:00" date "+%j" 查看这是一年的第几天 poweroff 关闭电脑 只有root用户才可以使用 wget命令 -b 后台下载模式 -P 下载到指定目录 -t 最大尝试次数 -c 断点续传 -p 下载页面内的所有资源,包括图片、视频 -r 递归下载 ps命令 -a 显示所有进程 -u 用户以及其他详细信息 -x 显示没有控制终端的进程 有5种常见的进程状态 分为:运行、中断、不可中断、僵死、与停止 R(运行)进程正在运行或者运行队列中等待 S(中断) 处于休眠。 D(不可中断)kill杀不掉 Z(僵死)进程已经终止,单进程描述符依然存在,知道进程调用wait4系统函数将进程释放 T(停止)进程收到停止信号后停止运行 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND 进程的所有者 进程ID号 运算器占用率 内存占用率 虚拟内存使用量(单位是KB)占用的固定内存量(单位是KB)所在终端 进程状态 被启动的时间 实际使用CPU的时间 命令名称与参数
top命令 第1行:系统时间、运行时间、登录终端数、系统负载(三个数值分别为1分钟、5分钟、15分钟内的平均值,数值越小意味着负载越低)。 第2行:进程总数、运行中的进程数、睡眠中的进程数、停止的进程数、僵死的进程数。 第3行:用户占用资源百分比、系统内核占用资源百分比、改变过优先级的进程资源百分比、空闲的资源百分比等。其中数据均为CPU数据并以百分比格式显示,例如“
97.1 id”意味着有97.1%的CPU处理器资源处于空 闲。 第4行:物理内存总量、内存使用量、内存空闲量、作为内核缓存的内存量。 第5行:虚拟内存总量、虚拟内存使用量、虚拟内存空闲量、已被提前加载的内存量。 pidof 查询某个指定服务进程的PID值 pidof -s单个进程pid值 pidof -x 脚本 脚本pid值 kill命令 加-9 pid号 killall命令用于终止某个指定名称的服务对应的全部进程 通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个去结束这些进程会比较麻烦 #pidof httpd #13581 17283 #killall httpd #pidof httpd 已杀掉 ifconfig 使用ifconfig命令来查看本机当前网卡配置与网络状态信息 其实主要就是网卡名称 inet参数后面IP地址 ether参数后面的网卡物理地址(MAC地址) 以及RX、TX的接收数据包与发送数据包的个数及累计流量 uname -a cat /etc/redhat-release uptime用于查看系统的负载信息,格式为uptime uptime命令真的很棒,它可以显示当前系统时间、系统已运行时间、启用终端数量以及平均负载值等信息。平均负载值指的是系统在最近1分钟、5分钟、15分钟内的压力情况(下面加粗的信息部分);负载值越低越 好,尽量不要长期超过1,在生产环境中不要超过5 free -h 查看内存 who 显示出所有正在登录本机的用户的名称以及他们正在开启的终端信 tty2终端设备 last命令用于查看所有系统的登录记录 由于这些信息都是以日志文件的形式保存在系统中,因此黑客可以很容易地对内容进行篡改。千万不要单纯以该命令的输出信息而判断系统有无被恶意入侵 history 历史命令 自定义/etc/profile文件中的HISTSIZE history -c清空当前用户在本机执行的命令 历史命令会被保存到用户家目录中的.bash_history文件中 / / 这个下面有root目录 ~ /root目录 sosreport命令用于收集系统配置及架构信息并输出诊断文档,格式为sosreport。 cd ..返回上级目录 cd ~ 去/root cd - 返回上次所处的目录 ls -a 使用ls命令的“-a”参数看到全部文件(包括隐藏文件) -l 使用“-l”参数可以查看文件的属性、大小等详细信息。 #ls -al 查看当前目录中的所有文件并输出这些文件的属性值 使用“-l”参数可以查看文件的属性、大小等详细信息。 #ls -ld /etc cat -n 进行显示行号 #cat -n initial-setup-ks.cfg more命令用于查看纯文本文件 (内容较多) 您还可以使用空格键或回车键向下翻页 head 查看前N行 #head -n 20 initial-setup-ks.cfg tail命令 后N行 tail -fn 20 后面20行 动态获取 -f参数为动态获取 tr命令用于替换文本文件中的字符 格式为tr [原始字符] [目录字符] #cat anaconda-ks.cfg | tr [a-z] [A-Z] wc命令用于统计指定文本的行数、字数、字节数,格式为“wc [参数] 文本 -l 只显示行数 -w 只显示单词数 -c 只显示字节数 一个英文字符代表两个字节 stat命令用于查看文件的具体存储信息和时间等信息 #stat test.txt cut 分割 #cut -d: -f1 /etc/passwd diff 用于比较多个文本文件的差异 在使用diff命令时,不仅可以使用--brief参数来确认两个文件是否不同,还可以使用-c参数来详细比较出多个文件的差异之处,这绝对是判断文件是否被篡改的有力神器 相同则为空 不同则显示有值diff 最后使用带有-c参数的diff命令来描述文件内容具体的不同 #diff --brief a.txt b.txt #diff -c a.txt b.txt touch 创建空白文件 设置文件的时间 touch命令来讲,有难度的操作主要是体现在设置文件内容的修改时间(mtime)、文件权限或属性的更改时间(ctime)与文件的读取时间(atime)上面。touch命令的参数及其作用如表2-11所示 -a 仅修改读取时间 atime -m 仅修改修改时间 mtime -d 同时修改atime与mtime 此时可以用stat来对比 #touch -d "2018-02-22 15:11" test.txt mkdir -p 来递归创建具有层级关系的文件目录 cp命令 源文件 目标文件 -p 保留原始文件的属性 -d 若对象为链接文件,则保留该链接文件的属性 -r 递归持续复制(用于目录) -i 若目标文件存在则询问是否覆盖 -a 相当于-pdr 一般使用 #cp -ra mv移动和改名 #mv x.log test.log rm 命令 删除文件或目录 -r 如果有删除一个目录,则需要在rm命令后面加个-r否则删除不掉 -f 直接删除,不询问 dd命令 用于按照指定大小和个数的数据块来赋值文件或转换文件 dd [参数] dd命令是一个比较重要而且比较有特色的命令,它能够让用户按照指定大小和个数的数据块来赋值文件的内容 if 输入的文件名称 of 输出的文件名称 bs 设置每个块的大小 count 设置要复制块的个数 #。Linux系统中有一个名为/dev/zero的设备文件,每次在课堂上解释它时都充满哲学理论的色彩。因为这个文件不会占用系统存储空间 #用dd命令从/dev/zero设备文件中取出一个大小为560MB的数据块 命名为560_file #dd if=/dev/zero of=560_file count=1 bs=560M #如果您想把光驱设备中的光盘制作成iso格式的镜像文件,在Windows系统中需要借助于第三方软件才能做到,但在Linux系统中可以直接使用dd命令来压制出光盘镜像文件,将它变成一个可立即使用的iso镜像4 #dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-LinuxProbe.Com.iso file命令用于查看文件的类型,格式为“file 文件名 tar命令 主要涉及.tar tar.gz tar.bz2 -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩包内有哪些文件 -z 用Gzip压缩或者解压 -j 用bzip压缩或者解压 -v 显示压缩或解压过程 -f 目标文件名 -p 保留原始的权限与属性 -P 使用绝对路径来压缩 -C 指定解压到的目录 #tar czvf etc.tar.gz /etc 压缩为gz文件 #将打包后的压缩包文件解压到/root/etc目录下 #tar xzvf etc.tar.gz -C /root/etc #tar cjvf etc.tag.gz2 /etc 压缩为gz2文件 grep命令 用于文本中执行关键词搜索 -b 将可执行文件当做文本文件(text)搜索 -c 仅显示找到的行数 -i 忽略大小写 -n 显示行号 -v 反向选择 列出没有关键字的行 #在Linux系统中,/etc/passwd文件是保存着所有的用户信息,而一旦用户的登录终端被设置成/sbin/nologin,则不再允许登录系统,因此可以使用grep命令来查找出当前系统中不允许登录系统的所有用户信息 grep /sbin/nologin /etc/passwd fing命令用于按照指定条件来查找文件(文件名,大小,修改时间,权限) -name 匹配名称 -perm 匹配权限 (mode为完全匹配,-mode为包含即可) -user 匹配所有者 -group 匹配所有组 -mtime -n +n 匹配修改内容的时间(-n指n天以内,+n指n天以前) -atime -n +n 匹配访问文件的时间(-n指n天以内,+n指n天以前) -ctime -n +n 匹配修改文件权限的时间(-n指n天以内,+n指n天以前) -nouser 匹配无所有者的文件 -nogroup 匹配无所有组的文件 -newer f1 !f2 匹配比文件f1新但比f2旧的文件 -type b/d/c/p/l/f 匹配文件类型 如file 查看文件类型 (块设备,目录,字符设备,管道,链接文件,文本文件) -size 匹配文件的大小(+50KB为查找超过50Kb的文件, -50KB查找小于50KB的文件) -prune 忽略某个目录 -exec ...{} \; 后面可以跟用于进一步处理搜索出来的文件 PS:Linux系统中的配置文件会保存到/etc目录中 #想获取/etc下所有以host开头的文件列表 #find /etc -name "host*" -print #如果要在整个系统中搜索权限中包括SUID权限的所有文件,只需使用-4000即可 find / -perm -4000 -print #进阶 将整个文件系统所有属于linuxprobe用户的文件并复制到/root/findresults目录下 #mkdir /root/findresults && find / -user linuprobe -exec cp -a {} /root/findresults/ \; 练习 1最常使用的终端解释器是Bash解释器 2命令及命令对象以一个或者多个空格 3echo命令把SHELL变量复制输出到屏幕终端的命令 echo $SHELL 45种进程的名称及含义 R运行 S中断 D不可中断 Z僵死 T停止 5关闭PID5529的服务进程 kill -9 5529 6 ifconfig查看4项信息 网卡名称 IP地址 网卡物理地址 RX、TX收发浏览数据大小 7使用uptime查看系统负载 0.91 0.56 0.32 1分钟 5分钟 15分钟 平均负载压力最大位1分钟 8内容较长,使用more命令,反之cat命令 (cat more head tail) 9 mkdir 命令创建嵌套关系目录 应该添加参数 -p 10 rm -rf 可以避免二次确然 慎用 11一个名为backup.tar.gz 压缩包文件,解压命令为 tar -zxvf backup.tar.gz 12 grep进行关键字
posted @ 2018-10-02 23:41  想翻身的猫  阅读(274)  评论(0编辑  收藏  举报