公众号:尤而小屋
作者:Peter
编辑:Peter

今天带来的一篇文章是关于Linux命令

工作之后第一次接触到了Linux系统,起初是Centos系统,后来慢慢地变成了Ubuntu。最后因为换电脑的缘故,又用上了MacOS,所以基本上每天都在和各种命令打交道。

MacOS和Linux都是基于Unix系统,二者在命令上基本都是通用的,今天Peter给大家介绍一下自己平时常用的16条Linux命令。

命令1:pwd

pwd显示当前的工作路径,查看位置所在。

Peter提醒你:时刻都要搞清楚自己的位置!

命令2:ls

ls命令十分常用,ls指的是list,查看文件或者目录的命令。添加参数后常用为:

  • ls :查看目录中全部的文件

  • ls -l :显示文件和目录中的全部信息

  • ls -a :列出全部文件,包含隐藏文件,其中a表示为all

  • ls  -R :连同子目录中的文件全部列出,相当于是递归列出全部内容,也就是说该目录下的所有文件的都会被显示出来

  • ls [0-9]:显示包含数字的文件名和目录名

命令3:cp

cp就是copy复制的意思,用于复制文件,该命令还可以将多个文件一次性复制到同一个目录下

  • cp -a:将文件的特性一起进行复制

  • cp -p:连同文件的属性一起进行复制,和上面的-a参数相似,常用作备份

  • cp -i :如果目标文件存在,则在覆盖之前先进行询问

  • cp -r:递归持续的复制

  • cp -u:目标文件和源文件存在差异的时候才会进行复制

命令4:mv

mv就是move移动的含义,用于移动文件、目录或者更改文件名

  • mv -f:f是指force,覆盖之前不会进行询问

  • mv -i:覆盖之前进行询问

  • mv -u:目标文件比源文件新的时候,才会进行更新

mv oldFileName newFileName  -- 重命名
mv hello.txt /home/peter  -- 移动位置
mv /dir1 /dir2  -- 将目录dir1移动到目录dir2中,前提是dir2已经存在,若不存在则改名
mv /dir1/* .   -- 将dir1下面的全部文件(*代表全部)移动到当前目录下

命令5:rm

rm就是指remove的含义,用于删除文件或者目录

  • rm -f:强制删除内容,不会出现任何警告内容

  • rm -i:互动模式,在删除之前进行询问是否删除

  • rm -r:递归删除,最常用于删除某个目录下的全部内容

⚠️:这个命令要谨慎操作!!!

⚠️:这个命令要谨慎操作!!!

⚠️:这个命令要谨慎操作!!!

命令6:cd

cd命令指的是change directory,切换路径的意思。它的参数是我们想要切换的目录的路径,可以是相对路径,也可以是绝对路径。

自己常用的几个切换路径的命令:

  • cd /home/user:切换到"/home/user"目录下

  • cd:切换到个人主目录

  • cd ..:返回上一级目录

  • cd ../..:返回上两级目录

  • cd -:返回上次所在的目录

  • cd ~:退回到用户的家目录

需要注意的是,根目录的父目录是自身

特殊符号 作 用
~ 代表当前登录用户的主目录
~用户名 表示切换至指定用户的主目录
- 代表上次所在目录
. 代表当前目录
.. 代表上级目录

命令7:mkdir

mkdir指的是make directory的意思,也就是创建目录。如果目录存在,则会报错。

mkdir test  # 创建空白的test目录
mkdir -p test/a/b/c/d  # 使用-p参数来递归地创建多个层级目录

命令8:touch

touch命令是用来创建空白文件或者设置文件的时间。

创建文件很简单:

touch test.py  # 创建test.py的文件

设置文件的时间主要是体现在:

  • 设置文件内容的修改时间:mtime

  • 文件权限或者属性的更改时间:ctime

  • 文件的读取时间:atime

对应的参数为:

参数 作用
-a 仅修改“读取时间”atime
-m 仅修改“修改时间”mtime
-d 同时修改二者

命令9:cat

cat命令主要是用来查看文件的内容,后面跟上我们的文件名即可。通常可以用管道符和命令more或者less进行连用。常用的参数选项:

  • cat filename:查看文件的全部内容

  • cat -n  filename :将文件的行数全部显示出来,包含空行

  • cat -b filename:和-n类似,只是不显示空行

  • cat -s filename:当遇到有连续两行以上的空白行,就代换为一行的空白行

  • cat -E:在每行的结尾显示$

命令10:more

more命令的功能和cat命令是类似的,只不过是常用来显示一个长文件,它是以全屏的方式按照分页的方式显示内容。cat命令是整个文件的内容显示在屏幕上,more命令是以分页的方式来显示的。常用的操作:空白键space跳到下一页,b键则返回上一页。

常用的参数为:

  • +n :从第n开始显示文件内容

  • -n :屏幕只显示n行数

  • -s:将连续的空行显示为一行

  • -u:将文件内容中的下划线去掉

  • -c:不进行滚屏操作。每次刷新这个屏幕

  • -l:忽略Ctrl+l换页字符

  • +/pattern:在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示

配合该命令的常用操作:

  1. Enter n:向下翻动n行,默认是1行,可自定义

  2. Ctrl+F:向下滚动一屏

  3. 空格键:向下滚动一屏

  4. Ctrl+B:返回上一屏

  5. V:调用vim编辑器

  6. q:推出more命令

more +3 test.py     # 从第3行开始显示
more -20 test.py    # 屏幕只显示20行
more +/hello test.py   # 查询文件中第1次出现hello的位置
more -c -5 file  # 每5行显示一次,而且在显示之前先清屏

如果某个目录下文件过多,我们可以使用more命令来进行分页显示:

ls -l | more -5   # 输出当前目录下的全部文件,并且每页显示5个文件信息

还有其他的显示文件行数的命令:less、head、tail、tac

tac file  # 从最后一行开始显示行号
head -n 4 file  # 查看文件的前4行
tail -n 8 file  # 查看文件的最后8行
tail -n +500 file  # 从第500行开始显示,即只显示500行以后的
cat file | head -n 200 | tail -n +100  # 显示100-300行的
cat file | tail -n +200 | head -n 100  # 从第200行开始,显示100行(即200-299行)

命令11:ps

ps命令是用来查看系统中的进程所在的状态

  • ps -a:查看所有的进程(包含其他用户的进程)

  • ps -u:查看用户及其他信息

  • ps -x:显示没有控制终端的进程

Linux系统中进程的5种常见状态(来自书籍:《Linux就该这么学》)

  1. R:运行,进程正在运行或者在队列中等待

  2. S:中断,进程处于休眠状态中。当接受到某个条件后,即可脱离该状态

  3. D:不可中断,在这种状态下即使kill命令也无法将其中断

  4. Z:僵死,进程已经终止,但是进程描述符依然存在。若父进程调用wait()系统函数后将进程释放

  5. T:停止,进行收到停止信号后停止运行

命令12:top

top命令是用来动态地监控进程活动或者系统负载等信息的,它的功能可以看做是Windows系统中的“Windows任务管理器”。

查询进程的端口号:

netstat -tunlp | grep 端口号

命令13:pidof

该命令是用来查询某个指定的服务进程的pid值

pidof sshd  # 查看sshd服务的进程pid值

命令14:kill、killall

kill用于终止某个指定pid号的服务进程

kill 2165  # 杀死pid为2165的服务

killall用来终止某个指定名称的服务所对应的全部进程,参数为进程名称

pidof httpd  #  查询httpd服务的全部进程
killall httpd   # 终止http服务的全部进程

命令15:ifconfig

ifconfig命令主要是用来获取网卡配置和系统的网络状态等信息,主要信息为:

  • 网卡名称

  • inet参数后面的IP地址

  • MAC地址

  • RX、TX的接收和发送数据等信息

命令16:history

history命令主要是用来查看我们敲过的历史命令。

history  # 查看全部历史命令
history 10  # 查看最近的10条命令

history可以与grep、tail配合使用进行条件过滤来查找我们需要的命令:

history | grep dnf  # 和dnf相关的命令
history | tail -n 3   # 末尾3条命令

清除历史命令:

history  -d 100  # 清除第100条
history -c  # 全部清除掉

往期精彩回顾适合初学者入门人工智能的路线及资料下载机器学习及深度学习笔记等资料打印机器学习在线手册深度学习笔记专辑《统计学习方法》的代码复现专辑
AI基础下载黄海广老师《机器学习课程》视频课黄海广老师《机器学习课程》711页完整版课件

本站qq群554839127,加入微信群请扫码:

日常必备的16条Linux命令相关推荐

  1. 装x撩m必备的16条Linux 命令,了解一下?

    点击蓝色"程序猿DD"关注我 回复"资源"获取独家整理的学习资料! 来源:cnblogs.com/sukai/archive/2013/06/08/312703 ...

  2. Linux:程序员必备的21条Linux 命令

    一.文件和目录 1. cd命令 (它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径) cd /home    进入 '/ home' 目录 cd ..       ...

  3. 程序员必备的21个Linux命令

    程序员必备的21个Linux命令 https://www.toutiao.com/i6952120831325520417/?tt_from=weixin&utm_campaign=clien ...

  4. linux 的vi命令中将当前文件另存为新文件a.log,【转】20条Linux命令面试问答

    问:1 如何查看当前的Linux服务器的运行级别? 答: 'who -r' 和 'runlevel' 命令可以用来查看当前的Linux服务器的运行级别. 问:2 如何查看Linux的默认网关? 答: ...

  5. linux不保存退出命令_面试提问说出16个linux命令,能凑齐不!高频22个Linux命令在这里...

    现在几乎所有的互联网的应用都部署在Linux的服务器上面了,Linux生态丰富.环境稳定,最重要的是,相对于Windows,Linux是免费的,要想,大型互联网公司都有几百万台服务器,要是用Windo ...

  6. centos7修改ip地址命令_每天一条Linux命令(12) hostnam (超详细)

    在Linux系统中,命令 hostname 用于显示或者设置系统主机名称.许多网络程序均用主机名来标识主机,若没有设置好主机名,则可能会导致网络服务不正常. 语法: hostname [选择] 参数: ...

  7. 20条Linux命令面试问答

    问:1 如何查看当前的Linux服务器的运行级别? 答: 'who -r' 和 'runlevel' 命令可以用来查看当前的Linux服务器的运行级别. 问:2 如何查看Linux的默认网关? 答: ...

  8. 抓包分析,一条Linux命令实现路由器自动登录深大校园网认证(Drcom Pt版)

    先说结论,通过抓包分析简化最后可以得出,其登录过程只是一个简单的向服务器发送HTTP GET请求或HTTP POST请求.只要在路由器启动之后自动发送一段 HTTP 请求,即可实现自动登录. 对于 G ...

  9. 系统管理员应该知道的 20 条 Linux 命令

    微信上看到的一篇文章,觉得挺适合非专业人士的,转载过来 https://my.oschina.net/editorial-story/blog/1499026 摘要: 如果您的应用程序不工作,或者您希 ...

最新文章

  1. 68页PPT,读懂中、美、德三国智能制造战略!
  2. 工作中遇到的懒加载问题
  3. mvn如何执行java代码
  4. 一个有关ajax去获取天气预报然后用echarts展现出来的小demo
  5. @autowired注解原理_相见恨晚,一个架构师也不会用的Lombok注解
  6. ubuntu18 安装redis-manager
  7. android socket 服务端,Android socket 服务端
  8. PX4环境git submodule update --init --recursive失败的解决办法
  9. OpenResty实现LNMP的缓存前移(到达nginx前端层面)
  10. 在 Centos6/RHEL6 上恢复 ext4 文件系统下误删除的文件
  11. Android内核开发:浅析APK的安装过程
  12. 选择、冒泡、插入、快速排序
  13. 字模提取工具-PCtoLCD2002使用说明
  14. 打开Excel超链接提示由于本机的限制该操作已被取消
  15. 各种文件后缀名与打开方式
  16. 波形发生器 -- 输出正弦波,三角波,矩形波,锯齿波,梯形波 -- DAC0832
  17. 计算机无法打印 重启又好了,打印机显示通讯错误,不能打印,但电脑重启后又好了!这是为什么?...
  18. xdm,外包能干吗?实在是....
  19. 【kafka】解决kafka-tool连接上kafka,brokers和topics不显示问题
  20. 聚英国际|【燎原计划启动周第二期AMA】Filecoin经济模型及热点争议解读

热门文章

  1. 【Wicket是个什么鬼】wicket框架URL路由规则
  2. WSS 扩展文件夹的属性--如何给文件夹添加扩展字段
  3. mysql5.7 部署文档-rpm
  4. 04 Django之模板系统
  5. $.ajax使用总结(一):Form提交与Payload提交
  6. CTO 比普通程序员强在哪?
  7. apue 2013-03-16
  8. SDUT 2133 数据结构实验之栈三:后缀式求值
  9. C#枚举数值与名称的转换
  10. mysql从零开始自增id_MySQL从零开始 7-表约束之主键,自增长,唯一键