ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Linux基本指令(2)

Linux基本指令(2) 目录1. more 指令2. less 命令重要3. head 指令4. tail 指令5. date 指令6. cal 命令7. find 指令8. which 指令9. whereis 指令10. alias 指令11. grep 指令12. top 指令13. zip/unzip 指令13.1 关于 rz / sz13.1.1 云服务器传windows13.1.2 windows压缩包上传到云服务器13.1.3 两台云服务器之间互传文件14. tar 命令重要15. bc 命令16. uname -r 命令正文开始1. more 指令语法more [选项]功能more命令功能类似 cat常用选项-n 指定输出⾏数q 退出more# -n 指定输出⾏数 # 输出temp.txt文件中的10行 more -10 temp.txt2. less 命令重要less 工具也是对文件或其它输出进行分页显示的工具应该说是linux正统查看文件内容的工具功能极其强大less 的用法比起 more 更加的有弹性在 more 的时候我们并没有办法向前面翻 只能往后面看但若使用了 less 时就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件更容易用来查看⼀个文件的内容除此之外在 less 里头可以拥有更多的搜索功能不止可以向下搜也可以向上搜。语法less [参数] 文件功能less与more类似但使用less可以随意浏览文件而more仅能向前移动却不能向后移动而且less在查看之前不会加载整个文件。选项-i 忽略搜索时的大小写-N 显示每行的行号/字符串向下搜索“字符串”的功能?字符串向上搜索“字符串”的功能n重复前⼀个搜索与 / 或 ? 有关N反向重复前⼀个搜索与 / 或 ? 有关q:quit3. head 指令head 与 tail 就像它的名字一样的浅显易懂它是用来显示开头或结尾某个数量的文字区块head 用来显示档案的开头至标准输出中而 tail 想当然就是看档案的结尾。语法head [参数]... [文件]...功能head 用来显示档案的开头至标准输出中默认head命令打印其相应文件的开头10行。选项-n⾏数 显⽰的⾏数[whbbite-alicloud test]$ head temp.txt hello 0 hello 1 hello 2 hello 3 hello 4 hello 5 hello 6 hello 7 hello 8 hello 9 [whbbite-alicloud test]$ head -5 temp.txt hello 0 hello 1 hello 2 hello 3 hello 44. tail 指令tail 命令从指定点开始将文件写到标准输出.使用tail命令的 -f 选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.语法tail必要参数[⽂件]功能用于显示指定文件末尾内容不指定文件时作为输入信息进行处理。常用查看日志文件。选项-f 循环读取-n⾏数 显⽰⾏数1. 基础命令tail temp.txt - 显示文件最后10行默认 tail -3 temp.txt - 显示文件最后3行2. 显示第180-200行head -200 temp.txt | tail -20head -200 temp.txt- 先提取文件的前200行这会输出第1行到第200行|- 管道符将前一个命令的输出作为后一个命令的输入tail -20- 从输入中提取最后20行从前200行中提取最后20行即第181行到第200行5. date 指令指定格式显示时间date %Y:%m:%d用法date [OPTION]... [FORMAT]在显示方面使用者可以设定欲显示的格式格式设定为一个加号后接数个标记其中常用的标记 列表如下%H : 小时(00..23)%M : 分钟(00..59)%S : 秒(00..61)%X : 相当于 %H:%M:%S%d : 日 (01..31)%m : 月份 (01..12)%Y : 完整年份 (0000..9999)%F : 相当于 %Y-%m-%d在设定时间方面date -s //设置当前时间只有root权限才能设置其他只能查看。date -s 20080523 //设置成20080523这样会把具体时间设置成空00:00:00date -s 01:01:01 //设置具体时间不会对日期做更改date -s “01:01:01 2008-05-23″ //这样可以设置全部时间date -s “01:01:01 20080523″ //这样可以设置全部时间date -s “2008-05-23 01:01:01″ //这样可以设置全部时间date -s “20080523 01:01:01″ //这样可以设置全部时间时间戳时间-时间戳date %s时间戳-时间date -d1508749502Unix时间戳英⽂为Unix epoch, Unix time, POSIX time 或 Unix timestamp是从1970年1月1日UTC/GMT的午夜开始所经过的秒数不考虑闰秒# 显⽰常规时间 [whbbite-alicloud test]$ date Wed Jan 11 18:22:50 CST 2023 [whbbite-alicloud test]$ date %Y/%m/%d 2023/01/11 [whbbite-alicloud test]$ date %Y/%m/%d-%H:%M:%S 2023/01/11-18:23:20 # 显⽰时间戳 [whbbite-alicloud test]$ date %s 1673432636 # 时间戳转成可视时间 [whbbite-alicloud test]$ date %Y/%m/%d-%H:%M:%S -d 0 1970/01/01-08:00:00 [whbbite-alicloud test]$ date %Y/%m/%d-%H:%M:%S -d 100000 1970/01/02-11:46:40 [whbbite-alicloud test]$ date %Y/%m/%d-%H:%M:%S -d 1000000000 2001/09/09-09:46:406. cal 命令cal命令可以用来显示公历阳历日历。公历是现在国际通用的历法又称格列历通称阳历。“阳历”又名“太阳历”系以地球绕行太阳⼀周为⼀年为西方各国所通用故又名“西历”。命令格式cal参数[年份]功能用于查看日历等时间信息如只有⼀个参数则表示年份(1-9999)如有两个参数则表示月份和年份常用选项-3 显示系统前⼀个月当前月下⼀个月的月历-j 显示在当年中的第几天一年日期按天算从1月1号算起默认显示当前月在一年中的天数-y 显示当前年份的日历7. find 指令Linux下find命令在目录结构中搜索文件并执行指定的操作。Linux下find命令提供了相当多的查找条件功能很强大。由于find具有强大的功能所以它的选项也很多其中大部分选项都值得我们花时间来了解⼀下。即使系统中含有网络文件系统( NFS)find命令在该文件系统中同样有效只你具有相应的权 限。在运行一个非常消耗资源的find命令时很多人都倾向于把它放在后台执行因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。语法find pathname -options功能用于在文件树中查找文件并作出相应的处理可能访问磁盘常用选项-name 按照文件名查找文件其他选项需要再查这个命令比较复杂# 在指定路径下搜索执⾏名称的⽂件 [whbbite-alicloud test]$ find ~ -name test.c /home/whb/test_code/old_code/test.c /home/whb/test_code/test.c8. which 指令功能搜索系统指定的命令举例[whbbite-alicloud test]$ which ls alias lsls --colorauto /usr/bin/ls [whbbite-alicloud test]$ which pwd /usr/bin/pwd9. whereis 指令功能用于找到程序的源、⼆进制⽂件或⼿册举例[whbbite-alicloud test]$ whereis ls ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz [whbbite-alicloud test]$ whereis libc.so libc: /usr/lib64/libc.so /usr/lib64/libc.a /usr/share/man/man7/libc.7.gz10. alias 指令功能设置命令的别名[whbbite-alicloud test]$ alias hellols -a -l -n [whbbite-alicloud test]$ which hello alias hellols -a -l -n /usr/bin/ls [whbbite-alicloud test]$ hello total 36 drwxrwxr-x 2 1003 1003 4096 Jan 11 17:59 . drwx------ 22 1003 1003 4096 Jan 11 17:57 .. -rw-rw-r-- 1 1003 1003 28667 Jan 11 18:29 temp.txt11. grep 指令语法grep [选项]搜寻字符串文件功能在文件中搜索字符串将找到的行打印出来常用选项-i 忽略大小写的不同所以大小写视为相同-n 顺便输出行号-v 反向选择亦即显示出没有 搜寻字符串 内容的那一⾏# ⽂件内容 [whbbite-alicloud test]$ cat temp.txt abcd ABCD hello bite 1234 #基本查找 [whbbite-alicloud test]$ grep abcd temp.txt abcd # 忽略⼤⼩写的不同所以⼤⼩写视为相同 [whbbite-alicloud test]$ grep -i abcd temp.txt abcd ABCD # 顺便输出⾏号 [whbbite-alicloud test]$ grep -n abcd temp.txt 1:abcd [whbbite-alicloud test]$ grep -ni abcd temp.txt 1:abcd 2:ABCD # 反向选择亦即显⽰出没有 搜寻字符串 内容的那⼀⾏ [whbbite-alicloud test]$ grep -v abcd temp.txt ABCD hello bite 1234 [whbbite-alicloud test]$ grep -vn abcd temp.txt 2:ABCD 3:hello 4:bite 5:1234 [whbbite-alicloud test]$ grep -vni abcd temp.txt 3:hello 4:bite 5:123412. top 指令top是Linux系统中最重要的性能监控工具之一用于实时显示系统进程和资源使用情况。top # 启动top top -d 5 # 每5秒刷新一次默认3秒 top -p 1234,5678 # 只监控特定PID的进程 top -u username # 只显示指定用户的进程13.zip/unzip 指令若发现zip 和unzip命令不存在则yum install -y zip unzip语法zip压缩⽂件.zip⽬录或⽂件功能将⽬录或⽂件压缩成zip格式常用选项-r递归处理将指定⽬录下的所有⽂件和⼦⽬录⼀并处理举例# 将 test2 打包压缩为test2.zip压缩包 zip -r test2.zip test2 # 将test2.zip压缩包解压缩 unzip test2.zip # 将test2.zip压缩包解压到指定目录 unzip test2.zip -d /root13.1关于 rz / sz这个工具用于 windows 机器和远端的 Linux 机器通过 XShell 传输⽂件.安装完毕之后可以通过拖拽的方式将⽂件上传过去.安装yum/apt install -y lrzsz13.1.1 云服务器传windowssz test2.zip输入后Xshell会自动弹窗选择安装位置13.1.2 windows压缩包上传到云服务器# 直接输入 rz即可输入后自动弹窗 rz # Xshell也支持鼠标直接拖拽上传输入后Xshell会自动弹窗选择需上传的压缩包# 而后可解压缩得到文件 unzip test2.zip13.1.3 两台云服务器之间互传文件scp 指令远程拷贝命令# scp test2.tgz 用户名你的公网ip:目标机器指定的位置 scp test2.tgz root12.12.21:/home/whb/code/test3首次传送时会需要输入密码password,需特别注意以上图为例若是需要从左边的机器向右边的机器传送压缩文件则左边的机器会需要你输入密码注意输入的是你右边机器的密码14.tar 命令重要打包 / 解包不打开它直接看内容语法tar [-cxtzjvf]⽂件与⽬录....参数-c 建立一个压缩文件的参数指令(create 的意思)-x 解开一个压缩文件的参数指令-t 查看 tarfile 里面的文件-z 是否同时具有 gzip 的属性亦即是否需要用 gzip 压缩-j 是否同时具有 bzip2 的属性亦即是否需要用 bzip2 压缩-v 压缩的过程中显示文件这个常用但不建议用在背景执行过程-f 使用档名请留意在 f 之后要立即接档名喔不要再加参数-C 解压到指定目录示例# tar 选项 XXX.tgz srcdir 将后者打包为前者如何打包则由选项控制 # 将test3目录打包压缩为test2.tgz压缩包 tar czf test2.tgz test3 若上述命令行执行不了可tar -czf test2.tgz test3 下述同理 # 展现打包压缩的过程 tar cvzf test2.tgz test3 # 解包为 tar xzf test2.tgz # 指定目录解包 tar xzf test2.tgz -c /root # 展现解包的过程 tar xvzf test2.tgz15. bc 命令bc命令可以很方便的进行浮点运算相当于linux中的一个简单计算器16. uname -r 命令此命令可在自己的linux环境中查看自己的体系结构和系统内核版本体系结构芯片结构为该计算机使用的CPU是什么架构的语法uname [选项]功能uname⽤来获取电脑和操作系统的相关信息。补充说明uname可显⽰linux主机所⽤的操作系统的版本、硬件的名称等基本信息。常用选项-a或-all 详细输出所有信息依次为内核名称主机名内核版本号内核版本硬件名处理器类型硬件平台类型操作系统名称lsb_release -a查看操作系统版本
返回列表