Linux|Linux常用指令总结

在进入Linux的学习以来,要学习,练习,使用,各种各样的指令。随着学习的不断深入,学习到的指令也是越来越多,越来越繁杂,因此想写一篇博客来记录总结自己学习的到的Linux指令,并且不断的更新,使得这篇博客不断的完善,以便于自己日后对于生疏指令的查找。

  1. ls指令
    用法:ls [选项] [目录或文件夹]
    功能:对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
    常用选项
选项功能
-a列出目录下的所有文件,包括以 . 开头的隐含文件。
-d将目录象文件一样显示,而不是显示其下的文件。 如:ls –d 指定目录
-i输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
-k以 k 字节的形式表示文件的大小。ls –alk 指定文件
-l列出文件的详细信息。
-n用数字的 UID,GID 代替名称。
-F在每个文件名后附上一个字符以说明该文件的类型,“ * ”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“
-r对目录反向排序。
-t以时间排序。
-s在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
-R列出所有子目录下的文件。(递归)
-1一行只输出一个文件。

  1. pwd指令
    语法: pwd
    功能:显示用户当前所在的目录

  1. cd指令
    语法:cd [目录名]
    功能:改变工作目录。将当前工作目录改变到指定的目录下。
    快捷用法
指令功能
cd . .返回上级目录
cd ~返回用户家目录
cd -返回最近访问目录
cd /返回跟目录

  1. touch指令
    语法:touch [选项] [文件名称]
    功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
    常用选项
选项功能
-c或–no-create 不建立任何文档。(很鸡肋)
-d使用指定的日期时间,而非现在的时间。
-m或–time=mtime或–time=modify 只更改变动时间。
-r把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

  1. mkdir指令
    语法:mkdir [选项] [目录名称]
    功能:在当前目录下创建一个名为 “dirname”的目录
    常用选项

    -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;


  1. rmdir指令 && rm 指令
    rmdir是一个与mkdir相对应的命令。mkdir是建立目录,而rmdir是删除命令。
    语法:rmdir [选项] [目录名称]
    适用对象:具有当前目录操作权限的所有使用者
    功能:删除空目录
    常用选项:-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。

    rm命令可以同时删除文件或目录
    语法:rm [-f-i-r-v][dirName/dir]
    适用对象:所有使用者
    功能:删除文件或目录
    常用选项

选项功能
-f即使文件属性为只读(即写保护),亦直接删除
-i删除前逐一询问确认
-r删除目录及其下所有文件
  1. man指令
    Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。
    语法: man [选项] 命令
    常用选项:
选项功能
-k根据关键字搜索联机帮助
num只在第num章节找
-a将所有章节的都显示出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往后面搜索,直到所有章节都搜索完毕。

man手册分为8章

  • 1 是普通的命令
  • 2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文
    件)
  • 3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件
  • 4 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义
  • 5 是给游戏留的,由各个游戏自己定义
  • 6是附件还有一些变量,比如向environ这种全局变量在这里就有说明
  • 7 是系统管理用的命令,这些命令只能由root使用,如ifconfig

  1. cp指令
    语法:cp [选项] 源文件或目录 目标文件或目录
    功能: 复制文件或目录
    说明: cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中。若同时指定多个文件或目录,而最后的目的地并非一个已存在的目录,则会出现错误信息
    常用选项
选项功能
-f或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i或 --interactive 覆盖文件之前先询问用户
-r递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
-R或 --recursive递归处理,将指定目录下的文件及子目录一并处理

  1. mv指令
    mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命令,经常用来备份文件或者目录。
    语法: mv [选项] 源文件或目录 目标文件或目录
    功能:

    1. 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
    2. 当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名。
    3. 当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中。

常用选项

选项功能
-fforce 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
-i若目标文件 (destination) 已经存在时,就会询问是否覆盖

  1. cat指令
    语法:cat [选项] [文件]
    功能: 查看目标文件的内容
    常用选项
选项功能
-b对非空输出行编号
-n对输出的所有行编号
-s不输出多行空行

  1. more指令
    语法:more [选项] [文件]
    功能:more命令,功能类似 cat
    常用选项
选项功能
-n对输出的所有行编号
q退出more

  1. less指令

    less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
    less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看但若使用了 less 时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
    除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

    语法: less [参数] 文件
    功能:less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。
    常用选项

选项功能
-i忽略搜索时的大小写
-N显示每行的行号
/向下搜索“字符串”的功能
?向上搜索“字符串”的功能
n重复前一个搜索(与 / 或 ? 有关)
N反向重复前一个搜索(与 / 或 ? 有关)
q退出

  1. head指令
    语法: head [选项] [文件]
    功能:head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
    常用选项:
选项功能
-n<行数>显示的行数

  1. tail指令

    tail 命令从指定点开始将文件写到标准输出。使用tail命令的 -f 选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。

语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
常用选项

选项功能
-f循环读取
-n<行数>显示行数

  1. find指令

    Linux下find命令在目录结构中搜索文件,并执行指定的操作。
    即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。
    在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。

    语法: find pathname -options
    功能: 用于在文件树种查找文件,并作出相应的处理(可能访问磁盘)
    常用选项

选项功能
-name按照文件名查找文件
-perm按照文件权限来查找文件(使用三位八进制数表示权限)
-prunefind命令不在当前指定的目录中查找
-user按照文件属者来查找文件
-group按照文件所属的组来查找文件
-nogroup查找无有效所属组的文件
-nouser查找无有效属主的文件
-newer file1 ! file2查找更改时间比文件file1新但比文件file2晚的文件
-amin n查找系统中最后N分钟访问的文件
-atime n查找系统中最后n*24小时访问的文件
-cmin n查找系统中最后N分钟被改变文件状态的文件
-ctime n查找系统中最后n*24小时被改变文件状态的文件
-mmin n查找系统中最后N分钟被改变文件数据的文件
-mtime n查找系统中最后n*24小时被改变文件数据的文件

  1. grep指令
    语法: grep [选项] 搜寻字符串 文件
    功能: 在文件中搜索字符串,将找到的行打印出来
    常用选项
选项功能
-i忽略大小写的不同,所以大小写视为相同
-n顺便输出行号
-v反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

  1. tar指令
    语法: tar [-cxtzjvfpPN] 文件与目录
    参数:
选项功能
-c建立一个压缩文件的参数指令(create 的意思);
-x解开一个压缩文件的参数指令!
-t查看 tarfile 里面的文件!
特别注意在参数的下达中, c/x/t 仅能存在一个!不可同时存在!因为不可能同时压缩与解压缩。
-z是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用 tar -zcvfP tfile sfile就是错误的写法要写成 tar -zcvPf tfile sfile才对!
-p使用原文件的原来属性(属性不会依据使用者而变)
-P可以使用绝对路径来压缩!
-N比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

案例:
范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc<==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
如果加 j 参数,则以 .tar.bz2 来作为附档名
上述指令在执行的时候,会显示一个警告讯息:
tar: Removing leading/" from member names`那是关于绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz
由于我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,就得要加上 z 这个参数了!这很重要的!

范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,
则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc
则会发现,该目录下的文件属性与 /etc/ 可能会有所不同!

范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已
[root@linux ~]# cd/tmp
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,
就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!

范例五:将 /etc/ 内的所有文件备份下来,并且保存其权限!
[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc
这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

范例六:在 /home 当中,比 2008/08/08 新的文件才备份
[root@linux ~]# tar -N “2008/08/08” -zcvf home.tar.gz /home

范例七:我要备份 /home, /etc ,但不要 /home/dmtsai
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生文件!
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -cvf - /etc | tar -xvf -
这个动作有点像是 cp -r /etc /tmp 但依旧是有其有用途的!


  1. uname 指令
    语法:uname [选项]
    功能: uname用来获取电脑和操作系统的相关信息。
    补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。
    常用选项:-a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

  1. ps指令
    语法:ps [选项]
    功能:显示当前进程的状态
    常用选项:
选项功能
a显示现行终端机下的所有进程,包括其他用户的进程;
u显示进程拥有者、状态、资源占用等的详细信息(注意有“-”和无“-”的区别);
x显示没有控制终端的进程。通常与 a 这个参数一起使用,可列出较完整信息;
-e显示所有进程;
-f完整输出显示进程之间的父子关系;
-l较长、较详细的将该 PID 的的信息列出;
-o自定义显示的字段;

  1. 查看指定进程的PID
    命令: ps aux | grep 进程名

  1. kill指令
    语法:kill [参数] [进程号]
    功能: 发送指定的信号到相应进程
    常用参数
选项功能
-l信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称
-a当处理当前进程时,不限制命令名和进程号的对应关系
-p指定kill 命令只打印相关进程的进程号,而不发送任何信号
-s指定发送信号
-u指定用户

显示所有信号

# kill -l
1) SIGHUP     2) SIGINT     3) SIGQUIT     4) SIGILL     5) SIGTRAP
6) SIGABRT     7) SIGBUS     8) SIGFPE     9) SIGKILL    10) SIGUSR1
11) SIGSEGV    12) SIGUSR2    13) SIGPIPE    14) SIGALRM    15) SIGTERM
16) SIGSTKFLT    17) SIGCHLD    18) SIGCONT    19) SIGSTOP    20) SIGTSTP
21) SIGTTIN    22) SIGTTOU    23) SIGURG    24) SIGXCPU    25) SIGXFSZ
26) SIGVTALRM    27) SIGPROF    28) SIGWINCH    29) SIGIO    30) SIGPWR
31) SIGSYS    34) SIGRTMIN    35) SIGRTMIN+1    36) SIGRTMIN+2    37) SIGRTMIN+3
38) SIGRTMIN+4    39) SIGRTMIN+5    40) SIGRTMIN+6    41) SIGRTMIN+7    42) SIGRTMIN+8
43) SIGRTMIN+9    44) SIGRTMIN+10    45) SIGRTMIN+11    46) SIGRTMIN+12    47) SIGRTMIN+13
48) SIGRTMIN+14    49) SIGRTMIN+15    50) SIGRTMAX-14    51) SIGRTMAX-13    52) SIGRTMAX-12
53) SIGRTMAX-11    54) SIGRTMAX-10    55) SIGRTMAX-9    56) SIGRTMAX-8    57) SIGRTMAX-7
58) SIGRTMAX-6    59) SIGRTMAX-5    60) SIGRTMAX-4    61) SIGRTMAX-3    62) SIGRTMAX-2
63) SIGRTMAX-1    64) SIGRTMAX

未完待续~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值