学习Linux时常用命令汇总

通过Ctrl+f键可在该网页搜索到你想要的命令。

Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不需要选项也不需要参数

常用命令

man命令
  • man命令(重要的三条):

    1. 是普通的Linux命令

    2. 是系统调用,操作系统的提供的服务接口

    3. 是库函数, C语言中的函数

      • man -k:等价于apropos。使用man -k找到命令后,可以用man -f cmd查看命令的基本功能。
      • man -k sort | grep 3:可以更好的找到qsort。更加精确。

其实我之前不太清楚man命令的功能是什么,多man了几个命令后才明白:当你需要查看某个命令的参数时不必到处上网查找,只要man一下即可。

cheat命令
  • cheat命令:在GNU通用公共许可证下,为Linux命令行用户发行的交互式备忘单应用程序。它提供显示Linux命令使用案例,包括该命令所有的选项和简短但尚可理解的功能。告诉你一个命令如何使用。通过使用实例告诉你一个命令如何使用。

    用法:cheat+命令名。
其他常用命令
  • ls:显示是当前目录的内容。
  • ls -a .:显示当前目录中的所有内容,包括隐藏文件和目录。
find命令
  • find命令:查找一个文件在系统中的什么位置。

    find的使用格式如下:

    $ find <指定目录> <指定条件> <指定动作>

      - <指定目录>: 所要搜索的目录及其所有子目录。默认为当前目录。

      - <指定条件>: 所要搜索的文件的特征。

      - <指定动作>: 对搜索结果进行特定的处理。

    举例:

    $ find . -type f -mmin -10

      搜索当前目录中,所有过去10分钟中更新过的普通文件。如果不加-type f参数,则搜索普通文件+特殊文件+目录
locate命令
  • locate:神速版本的find

    locate命令是"find -name"的另一种写法,但更快,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。在使用locate之前,先使用updatedb命令,手动更新数据库。

    locate命令的使用实例:

      $ locate /etc/sh

      搜索etc目录下所有以sh开头的文件。

      $ locate ~/m

      搜索用户主目录下,所有以m开头的文件。

      $ locate -i ~/m

      搜索用户主目录下,所有以m开头的文件,并且忽略大小写。
whereis和which命令
  • whereis which:告诉你使用的命令工具装在什么地方。which+命令或文档文件where+命令或文档文件更加精确。
区别:
which (寻找执行档) :这个指令是根据PATH这个环境变量所规范的路径,去搜寻执行档的档名,所以,重点是找出执行档而已,which 后面接的是完整档名
whereis (寻找特定档案):搜寻linux数据库档案中所记录的东西,和locate的主要区别在于后面的参数
locate:搜寻linux数据库档案中所记录的东西,后面直接跟档案的部分名称就行
find:直接搜索整个硬盘区别
grep命令
  • grep命令:对文件全文检索,比如你接手一个C语言项目,里面有上百个C源文件,想找找main函数在那个文件中,你可以通过grep -n main *.c,快速找到main在哪个C文件中并指出在第几行。

这条语句可以用来查找关键字,全文搜索,并且可以直接查找文件内的内容。其中:

n:为显示行号

r:为递归查找

例如,如果想查找某个宏,我们已知宏保存在include文件夹中,所以可以使用下列语句:

grep -nr XXX /usr/include(XXX为所要找的宏)

cat命令

命令说明: 查看文件内容,也可以给文件追加内容到结尾

语法:cat [-AbEnTv]

参数:

-A :相当于-vET的整合参数,可以列出一些特殊字符,而不是空白而已 -b :列出行号,仅对非空行号显示,空白行不标记行号

-E :将结尾的断行字符$显示出来

-n :打印出行号,连同空白行也有行号,与-b参数不同

-T :将[tab]按键以^I 显示出来

-v :列出一些看不出的特殊字符

touch

命令功能:

touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。

命令格式:

touch [选项]... 文件...

命令参数:

-a 或--time=atime或--time=access或--time=use  只更改存取时间。

-c 或--no-create  不建立任何文档。

-d  使用指定的日期时间,而非现在的时间。

-f  此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

-m 或--time=mtime或--time=modify  只更改变动时间。

-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

-t  使用指定的日期时间,而非现在的时间。

常用命令行

apt-cache search
  • apt-cache search:在使用apt-get install安装一个程序时先找找软件源的库里有没有这个程序,有才可以安装。apt-cache search ddd:查查有没有ddd这个程序。

    常用使用方法:

    1、apt-cache show package_name: 显示指定软件包的信息,包括版本号,安装状态和包依赖关系等.

      2、apt-cache search package_name:搜索软件包,可以按关键字查找软件包,通常用于查询的关键字会使用软件包的名字或软件包的一部分.

    3、apt-cache showpkg package_name:显示软件包的依赖关系信息.

    4、apt-cache stats:显示当前系统所使用的数据源的统计信息,用户可以使用该命令查看数据源的相关统计信息.

    5、apt-cache policy package_name:显示软件包的安装状态和版本信息.

    6、apt-cache depends package_name:显示指定软件包所依赖的软件包。当用户需要了解某个软件包依赖于其他哪些包时,可以使用apt-cache depends来查询包依赖关系.

    7、apt-cache rdepends package_name:查询指定软件包的反向依赖关系,即那些其他的软件包需要依赖你所指定的软件包做为安装和运行的必须条件.

    8、apt-cache dump:显示缓存中的每个软件包的简要描述信息.

    9、apt-cache unmet:显示不符合一致性的依赖关系.

关于代码的编写、编译到运行的命令行

  • mkdir+xxx(文件名):在当前目录下新建一个文件夹。

  • vim+xxx.c:建立一个文本文档,可在该文本文档下编写代码。

  • 预处理:gcc –E hello.c –o hello.i:gcc –E调用cpp 产生预处理过的C原始程序 (以hello.c为例)

  • 编 译:gcc –S hello.i –o hello.s:gcc –S调用ccl 产生汇编语言原始程序

  • 汇 编:gcc –c hello.s –o hello.o:gcc -c 调用as 产生目标文件

  • 链 接:gcc hello.o –o hello:gcc -o 调用ld 产生可执行文件

  • 运行:./hello

注意:

gcc的一般格式为:

gcc [选项] 要编译的文件 [选项] [目标文件],

其中,目标文件可默认,gcc默认生成可执行的文件,名为编译文件.out.

20145222《信息安全系统设计基础》Linux常用命令汇总的更多相关文章

  1. 【Linux】Linux 常用命令汇总

    查看软件xxx安装内容:dpkg -L xxx 查找软件库中的软件:apt-cache search 正则表达式 查找软件库中的软件:aptitude search 软件包 查找文件属于哪个包:dpk ...

  2. 2017-2018-1 20155201 《信息安全系统设计基础》 pwd命令的实现

    2017-2018-1 20155201 <信息安全系统设计基础> pwd命令的实现 一.对pwd命令的学习 在终端中输入man pwd查看手册中对pwd这一命令的解释: 以绝对路径的方式 ...

  3. 2018-2019-1 20165226《信息安全系统设计基础》 pwd命令的实现

    2018-2019-1 20165226<信息安全系统设计基础> pwd命令的实现 一.学习pwd 查看pwd 得知一个嫩过去文件路径的函数--getcwd i节点值 通过ls -i -a ...

  4. 【Linux基础】Linux常用命令汇总

    3-1文件目录操作命令(cd pwd mkdir rmdir rm) 绝对路径:由根目录(/)开始写起的文件名或目录名称, 例如 /home/dmtsai/.bashrc: 相对路径:相对于目前路径的 ...

  5. Linux常用命令汇总及使用方法(二)之文本编辑器VI

    VI可能是在Linux中使用比较频繁的文本编辑器,如果不能熟练使用VI,在一定程度上会影响工作效率,所以在这里记录一下VI的常用命令及操作方式 在[root@test ~]# vi carrie.tx ...

  6. Linux常用命令汇总 - Linux Shell Cheat Sheet

    1. 查看Linux操作系统信息: uname -a cat /proc/version lsb_release -a 2. 设置ls显示的文件夹的颜色(将下面这条目录加在 .bashrc 文件最后) ...

  7. 20165223 《信息安全系统设计基础》 stat命令的实现-mysate

    学习使用stat(1),并用C语言实现                1. 提交学习 stat(1) 的截图                2. man -k ,grep -r的使用          ...

  8. 【linux】linux常用命令汇总

    linux主要的目录树的有/. /root. /home. /usr. /bin 等目录 / 根目录 /bin 存放必要的命令 /boot 存放内核以及启动所需的文件 /dev 存放设备文件 /etc ...

  9. Linux常用命令汇总及使用方法(三)

    (1)文件管理命令 ls.ls -l.ll.ls -a ls -a 显示所有文件,包括隐藏文件 ls 列举指定目录下的子目录和文件 ls -l与ll相同 列举指定目录下的子目录和文件的详细信息 tot ...

随机推荐

  1. JS去重及字符串奇数位小写转大写

    面试中经常会考到数组的去重.作为一名合格的前端开发者,不知道几种去重方法是在不应该.废话不多说直接开撸-- 一.indexOf()方法 实现思路:使用indexOf()方法来判断新数组中是否有这个值, ...

  2. jQuery中怎样阻止后绑定事件

    你的代码在页面载入过程中已经完成事件绑定了,没有阻止后绑定的事件的办法了,不过可以删除当前指定节点的事件绑定.方法如下:$("#btn").click(function(){if( ...

  3. 高德地图API 简单使用

    主要是功能是 在地图上添加标记点.在标记点添加相应的内容.单击查看内容.双击直接进入相应的项目系统. <!DOCTYPE html> <html xmlns="http:/ ...

  4. C#开发微信门户及应用(21)-微信企业号的消息和事件的接收处理及解密

    在上篇随笔<C#开发微信门户及应用(19)-微信企业号的消息发送(文本.图片.文件.语音.视频.图文消息等)>介绍了有关企业号的消息发送,官方特别声明消息是不用加密发送的.但是在回调的服务 ...

  5. 全球首个实战类微信小程序开发教程

    小木学堂专注于企业实战开发和经验传授,所以微信小程序诞生这么大的事怎么能不带着大家一起学习学习呢,所以小木学堂讲师连夜赶工学习并实战开发了微信小应用的第一个程序,并录制了课程现免费分享给大家.这个速度 ...

  6. 初识Git

    Git是目前世界上最先进的分布式版本控制系统.在Git诞生之前,我们一直使用的是集中式版本控制系统(如CVS.SVN等),那么两者有什么不同呢?分布式的优势又在哪里呢? 分布式vs集中式 集中式版本控 ...

  7. arcgis 许可异常的解决

    异常现象: arcgis 许可服务管理器中无法重新读取许可,许可服务启动后立即停止.         解决方法: 1.卸载license:安装新的license!重新破解,替换license文件夹BI ...

  8. Aircrack-ng: (2) WEP & WPA/WPA2 破解

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 目录 一. WEP 破解 二. wpa/wpa2 破解 一. WEP 破解 注:步骤前,确保 ...

  9. Android中使用ViewPager实现屏幕页面切换和页面切换效果

    之前关于如何实现屏幕页面切换,写过一篇博文<Android中使用ViewFlipper实现屏幕切换>,相比ViewFlipper,ViewPager更适用复杂的视图切换,而且Viewpag ...

  10. 移动端嵌入pdf.js远程请求pdf出现(206)

    最近在做移动端的开发,需要嵌入pdf进行预览.看了很多的js组件后选择了pdf.js:使用起来还是比较方便的,至于使用网上有很多的教程. 但在使用过程中出现了如下一个问题(我做的是IOS系统): 问题 ...