因为自己不经常使用linux的命令行工具,但是mac的终端还是经常使用的,有些命令总是要想一会或者百度一下才知道怎么用,抽时间整理了一下常用的命令,作为笔记.

常用命令

查看文件操作:

  ls :列出当前目录下所有文件和目录

  cat file:查看文件内容  -n:显示行号

  less file:查看文件,支持翻页,支持搜索

  使用less打开文件后,可以输入"/关键词"然后回车来搜索关键字,输入n或N可以向下或向上跳转匹配的关键字,如果希望从文件的末尾开始往上搜索,可以使用"?关键字".按下q,可以关闭文件.

  head file:查看文件前10行内容, head -n 20 file:可查看file文件前20行内容,亦可以直接输入 head -20 file

  tail file:显示文件尾部,默认显示10行,和head类似,也可以自定义显示的行数,最常用的tail -f file:监控日志

  wc file: 查看文件的行数,单词数,和字符数等信息

  find:查找文件或目录  find命令非常强大,几乎可以查询到大部分场景下你希望的条件的内容,具体可单独百度

创建文件/目录操作:

  touch file:创建文件,touch可以用与创建,变更和修改文件的时间戳

  mkdir dir:创建目录

  mkdir -p dir1/dir2:-p选项可以创建当前不存在的父目录

文件操作:

  cp file newfile:在当前目录创建一个file的副本命名为newfile

cp file /dir/ :将file复制到dir目录下

  cp * /dir/:将当前目录下的所有文件复制到dir目录下

  cp -R * /dir/:将当前目录下的所有文件以及目录递归地复制到dir目录下

  cp -p file /dir/:将当前目录的file文件(包括文件的所有者,权限,时间戳等信息)复制到dir目录下

移除文件操作:

  mv file /dir/: 将file移动到dir目录下   -i:会提示你是否进行命令的操作 防止一些误操作或者覆盖的情况

  rm file:删除指定文件或者目录

权限操作:

  chmod o+x file:赋予其他用户执行文件的权限  o:表示角色 +:表示添加 x:表示执行权限

    u:文件或目录的所有者

    g:文件或目录的用户组的成员

    o:不在文件或目录的用户组中的其他用户

    a:所有用户

    r:读权限 w:写权限 x:执行权限

  chown root file: 将file的所有者修改为root用户

  chown :root file:将file的用户组修改为root用户

  chown root:root file:同时将file的所有者和用户组修改为root用户

文本处理操作:

  sort:对文本进行行排序

    sort file:对file内容按默认(字母)顺序排序

    sort -u file:移除file中重复行

    sort -n file:对file内容按数值大小排序

  grep:查找字符串

     grep aaa file:查找file中包含aaa的内容

      grep -i aaa file:查找file中包含aaa(不区分大小写)的内容

    grep -c aaa file:查找aaa出现的次数

    grep -n aaa file:查找aaa的内容,显示每一行的行号

    grep -C 20 aaa file:查找file中包含aaa以及上下20行的内容

压缩与解压缩命令:

  gzip file:压缩file文件,生成file.gz的压缩文件,并删除file

  gzip -r /dir:递归的压缩dir目录下的文件

  gzip -d file.gz:解压缩file.gz文件

其他常用命令:

  uptime:查看系统运行时间

  date:可以以多种格式显示系统时间,也可以设置系统时间

  id:打印输出用户的身份信息(uid,gid,用户名等等)

  df -h:显示文件系统信息

VIM常用命令:

  yy:复制一行

  p:粘贴

  :wq 保存并退出 同 :x

  :q! 不保存退出

..整理了一半,发现太多了,盗一张图来总结吧

常用操作

Alias设置别名

  1.打开~/.bashrc文件

  2.添加一行,如 alias ..='cd ..'

  3.source ~/.bashrc 使文件生效

如不执行第三步,需要退出并重新登录shell,新的设置才会生效

如果想要删除一个别名呢? 当然可以通过上述步骤的逆操作来实现,更简单的方法是使用unalias+特定别名,如unalias ..,需要注意的是,该操作并不会删除你在.bashrc文件里添加的东西.


不断补充中...  

Linux+Shell常用命令总结的更多相关文章

  1. RedHat Linux Shell常用命令(多数也适用于Unix和AIX)

    注:本文转载自疯狂的矩阵一文,http://www.cnblogs.com/520sojustdoit/p/4642568.html --------------------------------- ...

  2. Linux shell 常用命令大全 每日一更

    大一上学期学习了Linux的基本操作,已经很久没使用了,虚拟机也近半年没开(作为一个计算机类专业的少年真的不应该).为了补回这些知识和为将来的学习打下基础,现在每天更新一条shell命令及其子命令,欢 ...

  3. Linux Shell 常用命令与目录分区的学习总结

    很早就想根据自己的学习规律和遗忘规律,自己总结一下Linux/Unix系统的Shell命令,一来便于自己时常查询之用,二来也分享于各位博友 Linux shell是系统的用户界面,即命令行.它提供了用 ...

  4. Linux Shell常用命令手册(Updating)

    检查远程端口是否对bash开放: nc -nvv $IP $PORT telnet $IP $PORT 当前任务的前后台切换: Ctrl + z fg 截取变量前5个字符: ${variable:0: ...

  5. Linux shell常用命令

    1. sz 和 rz  sz命令发送文件到本地: # sz filename rz命令本地上传文件到服务器: # rz 执行该命令后,在弹出框中选择要上传的文件即可.

  6. Linux Shell常用命令(长期更新)

    #判断某个字段是否匹配指定值 awk -F"," '{if($4=="value"){print $1} else {print $0}}' file.txt ...

  7. coding++:Linux - Shell - 常用命令

    1.在多个文件中 查找内容 find . -type f -name "*.html" | xargs grep "1"

  8. Linux Shell常用shell命令

    Linux Shell常用shell命令 一.文件.目录操作命令 1.ls命令 功能:显示文件和目录的信息 ls 以默认方式显示当前目录文件列表 ls -a 显示所有文件包括隐藏文件 ls -l 显示 ...

  9. 【shell 大系】Linux Shell常用技巧

    在最近的日常工作中由于经常会和Linux服务器打交道,如Oracle性能优化.我们数据采集服务器的资源利用率监控,以及Debug服务器代码并解决其效率和稳定性等问题.因此这段时间总结的有关Linux ...

随机推荐

  1. 应用集成mycat,实现mycat的高可用与mysql的读写分离

    前言 开心一刻 一个女人自朋友圈写道:我家老公昨天和别人家的老婆出去旅游,迄今未归,我则被别人家的老公折腾了一天,好累哦! 圈子下面,评论无数,老公在下面评论到:能不能好好说话,我只不过陪女儿去毕业旅 ...

  2. 使用NOPI写入Excel基础代码

    using NPOI.XSSF.UserModel; using System; using System.Collections.Generic; using System.IO; using Sy ...

  3. js正则表达式 数字和小数点 非负数 保留两位小数点

    验证数字非负数  小数点保留两位小数点 下面正则已验证通过 /^(?!0+(?:\.0+)?$)(?:[1-9]\d*|0)(?:\.\d{1,2})?$/

  4. Java 连续子数组的最大和(超容易理解)

    题目: {6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止).给一个数组,返回它的最大连续子序列的和 解题思路 ​ 万物皆可使用暴力法,暴力法还是比较容易的 ...

  5. 从.Net到Java学习第六篇——SpringBoot+mongodb&Thymeleaf&模型验证

    SpringBoot系列目录 SpringBoot整合mongodb MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.如果你没用过Mong ...

  6. grid++报表使用时注意事项

    #开始使用:Grid++Report 可以在 Visual C#.Net 与 Visual Basic.Net 下的 WinForm 项目中使用.在项目中使用 Grid++Report 之前,首先必须 ...

  7. Error: Invoke-customs are only supported starting with Android O (--min-api 26)

    项目报错: 完美解决: 在App下 gradle.build中Android标签中 添加以下内容: compileOptions { sourceCompatibility JavaVersion.V ...

  8. JavaScript中的闭包和作用域链

    这部分几乎是JavaScript中最难的部分,也是面试官最爱问的地方. 下面的内容是我以前写的<JavaScript学习手册>中被客户删除的部分,理由听起来有点诡异:太难.

  9. 【重新发布,代码开源】FPGA设计千兆以太网MAC(1)——通过MDIO接口配置与检测PHY芯片

    原创博客,转载请注明出处:[重新发布,代码开源]FPGA设计千兆以太网MAC(1)——通过MDIO接口配置与检测PHY芯片 - 没落骑士 - 博客园 https://www.cnblogs.com/m ...

  10. navicat 将自增长字段重置(重新从1开始)的方法

    先说明,此语句会将你的表中数据全部删除. 很简单,运行如下sql语句: TRUNCATE TABLE 表名;