当然如果自己去研究man这个男人,也不必看别人总结的了。

我也是有自己的总结,也拿有别人的,唯一多点命令组合起来怎么用,单用一个命令在实际应用中很多时候都达不到自己的目的

想要记住这些命令,就算记住了,等你用时,参数那么多,大脑也搜索不出来用哪个,怎么用。

最好的方式就是提出问题(比如如何在当前目录创建别的路径下的目录,如何得到进程id号【而不是进程的一堆属性信息】),自己去搜索有无这个命令,然后使用它,记住场景

目录

一、linux常用命令 

1.文件、目录的操作

  ls命令语法

  cat 输出文件信息命令

  目录操作命令:

  设置目录、文件操作权限 

 高频常用文件、字符查找命令(find、local、whereis、which、type、grep)

2.其他一些高频使用命令

软件安装相关(yum)

常用快捷命令

 开关机、修改用户名和密码,相关,时间

 进程相关 

 查看本机ip、设置网卡

 解压缩文件相关

 网络命令相关

 系统信息相关

 磁盘管理相关

3.管道符号、grep、awk的理解,和应用

       1.管道符号:|

       2.grep 命令

       3.awk 命令

       4.tail   /head   (和其他命令组合使用)

      5.wc命令

      6.diff命令

 组合命令例子详解 

二、linux常用符号解析




一、linux常用命令 

1.文件、目录的操作

  ls命令语法

[选项]

     1.查看当前目录下的文件、文件(选项参数有很多,只列举常用的)

ls     //展示当前目录下的可见文件
ls -l  //列出长数据串,显示出文件的属性与权限等数据信息(常用)(ll不是命令,是ls -l的别名)
ls -a  //-a:--all的缩写,显示所有的文件,包括隐藏文件(以.开头的文件)(常用)
ls -S  //以文件大小排序
ls -t  //以修改时间排序
ls -ld /etc //查看目录属性信息,则需要额外添加一个-d参数(不加d则是列出 /etc目录下所有文件、目录属性信息)

管道符怎么打r语言符号_压缩包

  cat 输出文件信息命令

cat logdebug.txt                //把logdebug.txt文件输出在屏幕上
cat /dev/null > /etc/test.txt   //清空 /etc/test.txt 文档内容
cat textfile1 > textfile2       //把 textfile1 的文档内容输入 textfile2 这个文档里

  目录操作命令:

//进入目录
cd /               (/代表 根目录):打开进入根目录
pwd                 得到当前路径
cd /mnt/sdcard      进入/mnt/sdcard
cd mnt/sdcard       (不加/表明是当前目录下的mnt目录,与上命令不同)
cd ..               退回上级目录
cd ../../           退回上上级目录 ,(以次类推)
dirname "$PWD"      得到上级目录路径 
dirname $(dirname "$PWD")   得到上上级目录路径,(以次类推) 

//创建目录(即创建文件夹)
mkdir wml_lhh                在当前目录下创建目录 wml_lhh 
mkdir /tmp/liyang            在绝对路径/tmp下创建liyang的文件夹 (前提是tmp目录存在才会创建成功)
mkdir -p /tmp/liyang         -p代表递归创建,tmp目录可以没有,会自动创建tmp目录。
mkdir /tmp/liyang /tmp/cangjing     可以一次创建多个目录 

//删除文件、文件夹
 rm [-rf ] 文件/目录
-r: 删除目录
-f: 强制执行
一般情况都是-rf 一起使用,否则每删一个目录系统都要提问是否删除

rm -rf /tmp/wml       //强制删除此文件夹/wml
rm  log.txt           //删除log.txt (删除文件 :rm 文件名)  

//拷贝、移动、重命名、文件文件夹   
cp  [选项]  源文件或目录  目标文件或目录  //文件/目录复制
cp -rf /tmp/wml  /lhh/wml              //将wml 拷贝至/lhh目录下 (拷贝文件不需要加参数 -rf)
mv  [选项]  源文件或目录  目标文件或目录  //文件/目录移动
mv -rf /tmp/wml  /lhh/wml              //将wml 移动至/lhh目录下 (拷贝文件不需要加参数 -rf)
mv 源文件名  新文件名                   
mv  wml.txt lhh.txt                    //将wml文件重命名为lhh

  设置目录、文件操作权限 

# 修改文件|目录的拥有者
     chown 用户名 文件名|目录名
# 递归修改文件|目录的组
     chgrp -R 组名 文件名|目录名
# 递归修改文件权限
     chmod -R 755 文件名|目录名

序号

命令

作用

01

chown

修改拥有者

02

chgrp

修改组

03

chmod

修改权限

chmod

命令:chmod 777 scan_record.js
格式:chmod 权限数字 文件名

   r 读权限read  4
   w 写权限write 2
   x 执行权限execute  1

权限数字对应权限组说明:
总共分为4部分
【文件或文件夹】【owner权限】【group权限】【others权限】
【文件是-,文件夹是d】【r/w/x相加】【r/w/x相加】【r/w/x相加】
Linux档案的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限

实例 chmod 777 scan_record.js //将其设置为owner、group、others均为可读可写可执行
                              //7的来源:4+2+1)

 高频常用文件、字符查找命令(find、local、whereis、which、type、grep)

  • 1. find

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

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

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

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

如果什么参数也不加,find默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。

find的使用实例:

  $ find . -name 'yoc*'

        搜索当前目录(含子目录,以下同)中,所有文件名以my开头的文件。

       

管道符怎么打r语言符号_管道符怎么打r语言符号_02

 

  • 2. locate

locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次

所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

locate命令的使用实例:

  $ locate /etc/sh

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

  $ locate ~/m

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

  $ locate -i ~/m

搜索用户主目录下,所有以m开头的文件,并且忽略大小写。

  • 3. whereis

whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。

whereis命令的使用实例:

  $ whereis grep

管道符怎么打r语言符号_管道符怎么打r语言符号_03

4. which

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。

which命令的使用实例:

  $ which grep

管道符怎么打r语言符号_压缩包_04

 

5. type

type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

type命令的使用实例:

  $ type cd

系统会提示,cd是shell的自带命令(build-in)。

  $ type grep

系统会提示,grep是一个外部命令,并显示该命令的路径。

  $ type -p grep

加上-p参数后,就相当于which命令

管道符怎么打r语言符号_压缩包_05

 

 

2.其他一些高频使用命令

软件安装相关(yum)

管道符怎么打r语言符号_搜索_06

常用快捷命令

        1、tab = 自动补全(输入某个文件的前几个字符,后摁tab会自动补全)

        2、ctrl + l -:清屏,类似clear命令

        3、ctrl + r -:查找历史命令(history);ctrl+c = 终止

        4、ctrl+k = 删除此处至末尾所有内容

        5、ctrl+u = 删除此处至开始所有内容

 开关机、修改用户名和密码,相关

        1、shutdown –h now:立刻进行关机

        2、shutdown –r now:现在重新启动计算机

        3、reboot:现在重新启动计算机

        4、su -:切换用户;passwd:修改用户密码

        5、logout:用户注销

        6 .时间设置

       我们会先设日期

  date -s 2014071    再设时间 date -s 18:30:50

 进程相关 

ps            //用来列出系统中当前运行的那些进程
kill          //终止进程 

kill -STOP [pid]  //发送SIGSTOP (17,19,23)停止一个进程,而并不消灭这个进程。
kill -CONT [pid]  //发送SIGCONT (19,18,25)重新开始一个停止的进程。
kill -KILL [pid]  //发送SIGKILL (9)强迫进程立即停止,并且不实施清理操作。
kill -9 -1  终止你拥有的全部进程。

kill -9 pid //终止进程号为xx的进程 (例如 kill -9 1234)
killall -9 进程名   //终止所有此进程名的进程
killall -9 logread  //终止所有名为logread的进程

pidof logread   //获取j进程logread 的进程号

查看本机ip、设置网卡

ifconfig       (linux)
ipconfig       (windows)

      

管道符怎么打r语言符号_压缩包_07

1.命令格式:
    ifconfig [网络设备] [参数]
2.命令功能:
    ifconfig 命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。
3.命令参数:
    up   启动指定网络设备/网卡。
    down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接 
         口,我们还需要从核心路由表中将该接口的路由信息全部删除。

实例1:启动关闭指定网卡
命令: ifconfig eth0 up    启动网卡eth0
      ifconfig eth0 down  关闭网卡eth0 (ssh登陆linux服务器操作要小心,关闭了就不能开启了,除非你有多网卡)


实例2:用ifconfig修改MAC地址
命令: ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

实例3  ifconfig eth0 显示一个以太网卡的配置

解压缩文件相关

(用法最多为tar ,用的时候可去查找参数选项具体含义 ,现在知道即可,不实际用也记不住)只有用的多了,频繁了才能记住

    tar命令用于对文件进行打包压缩或解压,格式为“ tar [选项 ] [文件 ]”。

    在Linux系统中,常见的文件格式比较多,其中主要使用的是 .tar或 .tar.gz或 .tar.bz2

         

管道符怎么打r语言符号_压缩包_08

          首先,-c参数用于创建压缩文件,-x参数用于解压文件,因此这两个参数不能同时使用。

          其次, -z参数指定使用 Gzip格式来压缩或解压文件,-j参数指定使用 bzip2格式来压缩或解压文件。用户使用时则是根         据文件的后缀来决定应使用何种格式参数进行解压。在执行某些压缩或解压操作时,可能需要花费数个小时,如果屏幕一直         没有输出,您一方面不好判断打包的进度情况,另一方面也会怀疑电脑死机了,因此非常推荐使用 -v参数向用户不断显 示压缩  或解压的过程。 -C参数用于指定要解压到哪个指定的目录。 -f参数特别重要,它必须放到参数的最后一位,代表要压缩或解压的软件包名称。

tar -czvf 压缩包名称 .tar.gz 要打包的目录”命令把指定的文件进行打包压缩;相应的解压命令为“ tar -xzvf 压缩

包名称 .tar.gz”

rar a file1.rar test_file 创建一个叫做 'file1.rar' 的包 
rar a file1.rar file1 file2 dir1   同时压缩 'file1', 'file2' 以及目录 'dir1' 
rar x file1.rar           解压rar包 
unrar x file1.rar         解压rar包 
 
tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包 
tar -jxvf archive.tar.bz2      解压一个bzip2格式的压缩包 
tar -czvf archive.tar.gz dir1  创建一个gzip格式的压缩包 
tar -xzvf archive.tar.gz       解压一个gzip格式的压缩包
 
zip file1.zip file1            创建一个zip格式的压缩包 
zip -r file1.zip file1 file2 dir1     将几个文件和目录同时压缩成一个zip格式的压缩包 
unzip file1.zip                       解压一个zip格式压缩包

  实例:高频常用

实例:
tar -cvzf etc.tar.gz /etc    //把 /etc目录通过 gzip格式进行打包压缩,并把文件命名为 etc.tar.gz
tar -xzvf etc.tar.gz -C /root/etc //压缩包文件指定解压到/root/etc目录中

 网络命令相关

ping

 系统信息相关

系统信息 
arch            显示机器的处理器架构
uname -m        显示机器的处理器架构
uname -r        显示正在使用的内核版本 
dmidecode -q    显示硬件系统部件 - (SMBIOS / DMI) 
hdparm -i /dev/hda    罗列一个磁盘的架构特性 

cat /proc/cpuinfo     显示CPU info的信息 
cat /proc/version     显示内核的版本 
cat /proc/net/dev     显示网络适配器及统计 
cat /proc/mounts      显示已加载的文件系统 
lspci -tv             罗列 PCI 设备 
lsusb -tv             显示 USB 设备 
date                  显示系统日期 
cal 2007              显示2007年的日历表 
date 041217002007.00  设置日期和时间 - 月日时分年.秒

 磁盘管理相关

  

3.管道符号、grep、awk的理解,和应用

       1.管道符号:|

          管道“|”可将命令的结果输出给另一个命令作为输入之用

       2.grep 命令

         Grep 是 Global Regular Expression Print 的缩写,它搜索指定文件的内容,匹配指定的模式,默认情况下输出匹配内容所在的行

          格式为“ grep [选项 ] [文件 ]”

         

管道符怎么打r语言符号_管道符怎么打r语言符号_09

       3.awk 命令

行,查看是否匹配指定的正则表达式,并执行相关的操作

          awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大。简单来说awk就是把文件逐行的读入,默认以空格为分隔符将每行切片,切开的部分再进行各种分析处理。 awk是行处理器,相比较屏幕处理的优点,在处理庞大文件时不会出现内存溢出或是处理缓慢的问题,通常用来格式化文本信息

         awk处理过程: 依次对每一行进行处理,然后输出

         awk的用法:

         awk   参数       ' BEGIN{}  //  {action1;action2} '   END{}      文件名

         具体参数,用法解释:

         用什么时候再去查找,这么么也很难记住

         这里只举一个简单例子:

输出一个文本 log.txt的第一个字段(默认所有行 且无分隔符输出)
awk '{printf $1}'

以上的命令的意思:单引号是必须的语法,print是打印输出命令 $1:代表第一个字段

    

管道符怎么打r语言符号_文件名_10

 

       4.tail   /head   (和其他命令组合使用)

    只看头几行:head

      

管道符怎么打r语言符号_文件名_11

 

    只看尾几行:tail

tail -1 //显示最后一行


管道符怎么打r语言符号_搜索_12

      5.wc命令

        wc命令用于统计指定文本的行数、字数、字节数,格式为“ wc [参数 ] 文本”

       

管道符怎么打r语言符号_压缩包_13

wc  文件名 //不输任何参数,会输出行数、单词数、字节数

    以下是实例: 

           

管道符怎么打r语言符号_管道符怎么打r语言符号_14

      6.diff命令

             diff命令用于比较多个文本文件的差异,格式为“ diff [参数 ] 文件”。

            在使用diff命令时,不仅可以使用 --brief参数来确认两个文件是否不同,还可以使用 -c参数来详细比较出多个文件的差异                 之处,这绝对是判断文件是否被篡改的有力神器

 


   组合命令例子详解 

         | grep  (管道+grep) 就是一个传递过滤神器,凡是想要获取一堆结果里的某些东西都要用到它,要善于运用、灵活运用它。

          他可以过滤一切你不想要的,留下想要的东西

    例如:

1.想要查询某个进程是否在运行?

ps | grep "logread"

以上命令的意思就是 ps得到所有再跑的进程,通过管道符 | 传给grep命令,grep "logread"

 意思是搜索出含有字符串logread 的进程

  2.要得到cat 输出的含有某个关键字的信息?

       以下这个命令可以得出是那个分区挂载/mnt/sdcard这个目录下了

cat /proc/mounts | grep "/mnt/sdcard" | awk '{printf $1}'
(理解管道可以一层层去掉管道符号实际操作感受下)

3.输出想要所有同名进程的最新产生的pid(即最后一个)?

ps|grep -v grep |grep "logread"|tail -1|awk '{print $1}'

意义:ps 是列出所有在运行的进程的相关信息;把结果传给 grep -v grep (这里是过滤自己本身查询命令的进程,可去掉对比输出结果有何不同)
      再把过滤的结果传给 grep "logread" :过滤出关于logread 进程的信息 
      再将logread 进程信息的结果 传给 命令:tail -1 :过滤出最后一行信息
      再将结果传给awk '{print $1}' 输出 第一个字段(第一个字段就是进程号)

    实例:以下是一步步展示管道和grep过滤出最终想要的信息 

     

管道符怎么打r语言符号_压缩包_15

二、linux常用符号解析

    此博客已经总结的清晰、详细又明了了,方便查阅

    https://www.jianshu.com/p/6e99d16af083

    这里提出几个说一下:

 &:并且符,单个使用表示后台工作符,通常用于大文件备份、压缩等转入后台完成   

比如,我们在linux终端下手动开启一个不会终结的程序,再输入一些命令就没法输入了
这时只需在命令后加一个 & :表示在后台运行,我们发仍可在终端输入命令
这里有一个名为hello的执行程序:

>>./hello &

\:反斜杠,转义字符

    当我们要在程序里执行一个命令,而不是在终端输入时,引号里的引号需要在前面加上反斜杠,否则会报错

\"/mnt/sdcard\" | awk '{print $4}'");

三、常用组合命令

  • 如何创建一个文档
  • vi vi.c, 最简单,还可以进入vi,进行编辑,个人比较推荐。
  • touch touch.c
  • echo > echo.c
  • cat /dev/null > cat.c

管道符怎么打r语言符号_文件名_16

  • 统计一个文件的字符数,字节数,行数

wc命令 
-c 统计字节数。 
-l 统计行数。 
-m 统计字符数。这个标志不能与 -c 标志一起使用。 
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。 
-L 打印最长行的长度。 
-help 显示帮助信息 
–version 显示版本信息

管道符怎么打r语言符号_搜索_17

  • 查找含有某个字符串的所有文件、查找含有某个字符串的文件名

grep -rnRi "fs" *

* : 表示当前目录所有文件,也可以是某个文件名

-r 是递归查找

-n 是显示行号

-R 查找所有文件包含子目录

-i 忽略大小写

管道符怎么打r语言符号_管道符怎么打r语言符号_18

管道符怎么打r语言符号_文件名_19