Linux操作系统命令合集--第一篇-

Posted Stalk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux操作系统命令合集--第一篇-相关的知识,希望对你有一定的参考价值。

一、选项和参数的区别

       在经过上一次的系统安装后我们已经成功登陆,登陆LInux后,我们就可以在#$符后面去输入命令,有的时候命令后面还会跟着“选项”(英文名:options)或“参数”(英文名:agruments)。即Linux中的命令格式为:

command [options] [arguments]  //中括号表示可选的,即有些命令不需要选项也不需要参数,但有的命令在运行时需要多个选项或参数。

options(选项):选项是调整命令执行行为的开关,即,选项不同决定了命令的显示结果不同。

选项分为长选项和短选项。

短选项:例如-h,-l,-s等。(- 后面接单个字母)

              1、短选项都是使用 ‘-’  引导,当有多个短选项时,各选项之间使用空格隔开

              2、有些命令的短选项可以组合,例如 -l -h 可以组合为-lh

              3、有些命令的短选项可以不带 - ,这通常叫做BSD风格的选项。例如ps aux

              4、有些短选项需要带选项本身的参数,例如 -L 512M

长选项:例如 --help,--list 等。(-- 后面接单词)

              1、长选项都是完整的单词

              2、长选项通常不能组合

              3、如果需要加参数,长选项的参数通常需要 "=",例如 --size=1G

agruments(参数):

              参数是指命令的作用对象。

              例如 ls 命令,不加参数的时候显示是当前目录,也可以加参数,例如 ls /dev,则输出的结果是 /dev 目录。

小结一下:

              选项是限定结果的显示结果

              短选项( - ):只能修饰一个字符的选项,例如:ls -a,当然多个短选项可以合并,例如tar -cvf

              长选项( -- ):既可以修饰单个字符,也可以修饰一个单词,例如:chkconfig --list,chkconfig --add xxx,service --status-all

              参数是指命令的作用对象

 我这里简单说明了选项和参数的区别,但具体Linux中哪条命令有哪些选项和参数,需要我们靠经验积累或者查看Linux的帮助了(man帮助命令)。

二、权限管理:UNIX权限:U(rwx)g(rwx)0(rwx

r   --可读权限

w  --可写权限

x  --可执行权限

 

也可以用数字来表示 :

r=4 w=2 x=1 

例:rwx = 7(4+2+1)  ;  rw = 6   (4+2)   ;   r-w = 5   (4+0+1)   ;   r-- = 4   (4+0+0)   ;   --x = 1   (0+0+1);

示例:

(1)# chmod 777 test1  --赋予test1可读可写可执行权限(所有权限)

(2)# chmod 755 test1 --赋予test1用户所有权限,组可读可执行权限,其他用户可读可执行权限

 

三、Linux入门基础命令--文件和目录常用操作命令

       在学习之前我们得先了解一下绝对路径和相对路径这两个概念

绝对路径:

              Linux中,绝对路径是从/(即根目录)开始的,例如 /usr、/etc/X11。如果一个路径是从 / 开始的,它一定是绝对路径。举几个示例

[root@srv1 ~]# pwd   --判断当前用户所在的位置,也就是说他现在到底位于哪里
/root                           --用户当前位于/root

[root@srv1 doc]# cd /usr/share/doc/    --以绝对路径方式进入/usr/share/doc目录下
[root@srv1 doc]# pwd                          --判断用户当前所在的位置

/usr/share/doc                                      --用户位于/usr/share/doc,看来已经达到目的了

相对路径:

              是以 . 或 .. 开始的,  .用户当前操作所在的位置,而 .. 表示上级目录,在路径中, .  表示用户当前所在的目录,而 .. 上级目录,要把 . 和 .. 当做目录来看,这里也举几个例子

 

[root@srv1 ~]# pwd  --通过pwd来判断当前用户所在的位置
/root                          --得出目录处于/root目录中;
[root@srv1 ~]# cd .    --我们进入 .
[root@srv1 ~]# pwd   --判断当前用户所在的位置

/root                          --得出在root目录中
[root@srv1 ~]# cd ..   --我们切入/root的上级目录
[root@srv1 /]# pwd    --判断当前用户所在的位置
/                                  --用户当前处于 /(根目录)中              

       下面来讲讲Linux中文件和目录中常用命令的【命令作用】,【命令语法】,【常用选项】,【参数说明】和【命令示例】

1.ls

【命令作用】

 列出文件和目录的内容

 

【命令语法】

ls    [选项]    [参数]

【常用选项】

-l    --以长格式显示,列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等

-L    --列出文件的链接名,Link(链接)

-A   --列出除了 "." ".."以外的文件

-a   --列出文件下所有的文件,包括以 "." 和 ".."开头的隐藏文件 (Linux下文件隐藏文件是以 . 开头的,如果存在 .. 代表存在着父目录)

-d   --列出目录本身而非目录内的文件,通常要与-l一起使用

-i    --显示每个文件的inode号

-R   --同时列出所有子目录层,与-l相似,只是不显示出文件的所有者,相当于编程中的“递归”实现

-t    --按照时间进行文件的排序,Time(时间)

-F   --在每一个文件的末尾加上一个字符说明该文件的类型。"@" 表示符号链接、"l" 表示FIFOS、"/" 表示目录、"=" 表示套接字。

-s    --在每个文件的后面打印出文件的大小,size(大小)

-S    --以文件的大小进行排序

【参数说明】

目录或文件  (需要注意绝对路径和相对路径,详解请看第二部分开头)

【命令示例】

# ls  -l    --以长格式列出当前目录中的文件及目录

 

2.pwd

【命令作用】

  查看”当前工作目录“的完整路径 

【命令语法】

pwd    [选项]

【常用选项】

【参数说明】

一般情况下不带任何参数

【命令示例】

# pwd   --查看默认工作目录的完整路径 

 

3.cd

【命令作用】

显示当前目录的名称,或更改当前的目录(打开特定目录)

【命令语法】

cd    [选项]    [参数]

【常用选项】

【参数说明】

切换用户当前目录,例如 . 表示当前目录 .. 表示上一级目录 ,~ 表示家目录 / 表示根目录

【命令示例】

[root@srv1 ~]# cd     --切换到前期用户家目录
[root@srv1 ~]# cd .   --切换到当前目录
[root@srv1 ~]# cd ..  --切换到当前目录上一级目录
[root@srv1 /]# cd ~   --切换到用户家目录
[root@srv1 ~]# cd /   --切换到根目录下

 

 4.touch

【命令作用】

创建空文件或文件时间戳修改

【命令语法】

touch    [选项]    [参数]

【常用选项】

-a  --修改文件的存取时间

-m  --修改文件的变动时间

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

-c   --如果要修改的文件不存在,此选项使touch不去创建它 

-d   --使用时间值 time代替指定文件的戳记值.可以包含月份名,时区名以及`am\'`pm\'等等

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

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

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

【参数说明】

创建文件的文件名

【命令示例】

# touch /home123   --在home目录下创建文件123 (这是一个绝对路径)

 

5.echo

【命令作用】

 在显示器上显示一段文字,一般起到一个提示的作用

 补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。

【命令语法】

 echo    [选项]    [参数]

【常用选项】

 -e  --允许下面列出的加反斜线转义的字符进行解释

         \\n   --换行符

         \\f    --换页符

         \\t    --水平制表符

         \\v   --纵向制表符

【参数说明】

 需要打印的内容或变量

【命令示例】

(1)文本的直接输入:

# echo \'Welcome To WCZY\'    

(2) 输出变量的值:假设定义一个变量:

# bl="Welcome To WCZY"

# echo $bl

解释:bl是定义的变量名,=号后面是赋值,字符串需要用“”括起来。$后面直接跟上变量名即可

(3)echo 后跟单双引号的区别:

 

解释:echo后的单引号表示强引用,单引号里面是什么就输出什么,而双引号是弱引用,变量的值会代替变量名输出。

(4)选项中加入 -e ,转义字符可用:

          \\t:插入制表符,即跳格显示

          echo -e “Hello Linux\\tHello World” 

          不加 -e 的对比,如下:

          echo "Hello Linux\\tHello World"

 

6.mkdir

【命令作用】

创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录。

【命令语法】

mkdir    [选项]    [参数]

【常用选项】

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

-v  --每次创建新目录都显示信息

-m  --设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask

【参数说明】

需要创建的目录

【命令示例】

(1)创建一个空目录

# mkdir test1

(2)递归创建多个目录

# mkdir -p test2/test22

(3)创建权限为777的目录

 # mkdir -m 777 test3

test3 的权限为rwxrwxrwx

(4)创建新目录都显示信息

# mkdir -v test4

 

7.cp

【命令作用】

复制文件或者目录

【命令语法】

cp [选项]    源    目标

【常用选项】

-f   --如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)

-n  --不要覆盖已存在的文件(使前面的 -i 选项失效)

-i   --覆盖前询问(使前面的 -n 选项失效)

-p  --保持指定的属性(默认:模式,所有权,时间戳),如果可能保持附加属性:环境、链接、xattr 等

-P  --不跟随源文件中的符号链接

-R,-r  --复制目录及目录内的所有项目

-v  --显示过程 (通常与-r一起使用)

-s  --对源文件建立符号连接,而非复制文件

【参数说明】

源文件

目标文件

【命令示例】

(1)将home目录中的abc文件复制到根目录下

# cp /home/abc /

(2)目标文件存在时,会询问是否覆盖

# cp /home/abc /

解释:目标文件存在时,会询问是否覆盖。这是因为cp是cp -i的别名。目标文件存在时,即使加了-f标志,也还会询问是否覆盖。

(3)复制整个目录

 

当目标目录不存在时

 

解释:注意目标目录存在与否结果是不一样的。目标目录存在时,整个源目录被复制到目标目录里面

(4)复制的abc文件建立一个连结档abc.log

# cp -s abc abc.log

 

 

 

8.mv

【命令作用】

移动文件或者将文件改名(move (rename) files),经常用来备份文件或者目录。

【命令语法】

mv     [选项]     源文件或目录     目标文件或目录

【常用选项】

-b  --若需覆盖文件,则覆盖前先行备份

【参数说明】

源文件

目标文件

【命令示例】

(1)文件改名

# mv abc qwe 

解释:将文件abc重命名为qwe

(2)移动文件

# mv test3 test4

 

9.rmdir

【命令作用】

删除空目录

【命令语法】

rmdir    [选项]    目录

【常用选项】

-p  --递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。

-v  --显示指令执行过程

【参数说明】

需要删除的目录

【命令示例】

(1)不能删除非空目录

# rmdir bus

(2)递归删除当前目录下的1/2/3/4/5/6目录

rmdir -pv 1/2/3/4/5/6

 

10.rm

【命令作用】

删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。

rm是一个危险的命令,使用的时候要特别当心,尤其对于新手,否则整个系统就会毁在这个命令(比如在 /(根目录)下执行rm * -rf)。所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑

【命令语法】

rm    [选项]    文件

【常用选项】

-f  --忽略不存在的文件,从不给出提示

-r --指示rm将参数中列出的全部目录和子目录均递归地删除。

【参数说明】

需要删除的文件或目录

【命令示例】

(1)删除某个文件时,系统会先询问是否删除

# rm 文件名

解释:输入rm qwe命令后,系统会询问是否删除,输入y后就会删除文件,不想删除文件则输入n

(2)强制删除某个文件

# rm-rf abc.log

解释:强制删除文件abc.log

11.nano

【命令作用】

文本编辑器

【命令语法】

 nano    [选项]    [+行,列]    [参数]

【常用选项】

【参数说明】

文件名

【命令示例】

# nano abc  编辑名为abc的文本


12.vi/vim

【命令作用】

文本编辑器,若文件存在则是编辑,若不存在则是创建并编辑

【命令语法】

vim    [选项]    [参数]

【常用选项】

 

【参数说明】

文件名

【命令示例】

# vim abc 编辑名为abc的文本


13.shred

【命令作用】

用随机值重写覆盖文件,让文件无法恢复

【命令语法】

shred    [选项]    文件    [参数]

【常用选项】

-n  --自行指定重写覆盖的次数,默认为三次

-s  --覆盖指定的字节数(可接受K、M、G等等的单位)

-u  --在重写覆盖后截断和删除文件

-v  --显示过程

-z  --添加一个带有0的最终覆盖,以隐藏分解

【参数说明】

指定要覆盖的文件名

【命令示例】

# shred -n 3 -u app  覆盖app文件三次,并删除

 

14.cat

【命令作用】

连接文件并在标准输出上输出。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。

【命令语法】

cat    [选项]    [参数]

【常用选项】

-E  --在每行结束显示 $

-n  --给所有输出行编号

-v  --使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

【参数说明】

文件名

【命令示例】

(1)将123和456的内容输入到789里

# cat 123 456 > 789

(2)显示123文件内容和换行符

# cat -E 123

(3)显示123文件内容

# cat 123

(4)显示123文件内容和行号

# cat -n 123

 

15.nl

【命令作用】

计算文件中行号。nl 可以将输出的文件内容自动的加上行号!其默认的结果与 cat -n 有点不太一样, nl 可以将行号做比较多的显示设计,包括位数与是否自动补齐 。 等等的功能。  

【命令语法】

nl    [选项]   [参数]

【常用选项】

-b a  --表示不论是否为空行,也同样列出行号(类似 cat -n)

-b t   --如果有空行,空的那一行不要列出行号(默认值)

【参数说明】

文件名

【命令示例】

(1)用nl列出/(根目录)123文件里的内容

# nl /123

(2)用 nl 列出/123文件的内容,空本行也加上行号

# nl -b a /123

 


16.tac

【命令作用】

倒序查看指定文件内容

【命令语法】

tac    [选项]    [参数]

【常用选项】

【参数说明】

文件名

【命令示例】

# tac /123  --倒叙查看/123文件内容

 

17.more

【命令作用】

类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上。 more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 。more命令从前向后读取文件,因此在启动时就加载整个文件。

【命令语法】

more    [选项]    [参数]

【常用选项】

【参数说明】

文件名

【命令示例】

(1)# more [文件名]  --分屏查看指定文件内容

(2)显示文件中从第3行起的内容

 

# more +3 /123

(3)从文件中查找第

以上是关于Linux操作系统命令合集--第一篇-的主要内容,如果未能解决你的问题,请参考以下文章

Linux常用命令合集

第一篇 深入嵌入式之Linux裸机

第一篇:linux系统应用管理之用户的切换

自学运维第一篇:Linux虚拟机基础优化

cad的一些自认为很重要的操作第一篇

Linux基础知识----第一篇:Linux系统常识性了解(欢迎评论指正,随时保持更新)