Linux常用命令

来源:互联网 发布:学大汉武立国 知乎 编辑:程序博客网 时间:2024/06/05 17:38

常用快捷键

  • Ctrl+C:结束当前命令。如果你输入了一大串字符,但不想运行了,可以按Ctrl+C组合键,此时光标将跳入下一行,而在刚刚的光标处会留下一个^C的标记。
  • Tab:自动补全。
  • Ctrl+D:退出当前终端。同样,也可以输入exit实现该功能。
  • Ctrl+L:清屏。也可以输入clear
  • Ctrl+A:让光标移动到命令的最前边
  • Ctrl+E:让光标移动到命令的最后边
  • 关机:poweroff,init 0
  • 重启:reboot,init 6
  • 切换到图形界面:init 5
  • 切换到命令行界面:init 3

查看帮助文档

比如我想查看ls这个命令的具体说明和相关参数。我就可以输入man ls,然后回车,就可以看到相关说明了。

文件和目录管理

Linux文件类型

在Linux文件系统中,主要有以下几种类型的文件

  • 普通文件(regular file):即一般类型的文件,当用命令ls -l查看某个目录时,第一个属性为“-”的文件就是普通文件。它又可分为纯文本文件和二进制文件。纯文本文件可以用cat,more等工具直接查看内容,而二进制文件不能。例如,我们用的命令/usr/bin/ls就是一个二进制文件。
  • 目录(dictionary):它与Windows下的文件夹类似,只不过在Linux中我们不将其称为“文件夹”,而称为“目录”。用命令ls -l查看的第一个属性为d的文件就是目录。
  • 链接文件(link file):用命令ls -l查看的第一个属性为l的文件就是链接文件,它类似于Windows下的快捷方式。
  • 设备(device):即与系统周边相关的一些文件,通常都集中在/dev目录下。这种文件一般分为两种,一种是块(block)设备,就是一些存储数据,以提供系统存取的接口设备,简称硬盘。例如,第一块硬盘是/dev/sda1,用命令ls -l查看的第一个属性值为b的文件就是块设备。另一种是字符(character)设备,是一些串行端口的接口设备,例如键盘、鼠标等,用命令ls -l查看的第一个属性为c的文件就是字符设备。

Linux文件后缀名

在Linux系统中,文件的后缀名没有具体意义,加或者不加都无所谓。但是为了便于区分,我们习惯在定义文件名时加一个后缀名。

绝对路径和相对路径

绝对路径:路径的写法一定是从根目录/写起的,例如/usr/local/mysql

相对路径:路径的写法不是由根目录/写起的。例如,首先用户进入到/home,然后再进入到eaglezsx,执行的命令为

cd /homecd eaglezsx

这个eaglezsx是相对于/home目录来讲的,所以称为相对路径。

cd命令

cd(change directory的简写),用来更改用户所在目录,如果后边什么都不跟,就会直接进入当前用户的根目录。如果是root用户就会进入到root目录下。如果我自定义了一个用户eaglezsx,那么就会在home下面有一个名为eaglezsx的目录。如果为eaglezsx用户就会进入到eaglezsx目录下。如果后边跟目录名,就会直接切换到指定目录下。cd后边只能跟目录名,如果跟了文件名,就会报错。

有两个特殊的符号也可以表示目录。“.”表示当前目录,“..”表示当前目录的上一级目录

cd usr:切换到当前目录下的usr目录cd ..:切换到上一层目录cd /:切换到系统根目录cd ../usr:切换到上一个目录下的usr目录

pwd命令

显示当前所在目录

ls命令

  • 后面不加任何选项也不跟目录名或者文件名:会列出当前目录下的文件和目录,不包含隐藏文件。
  • 后面加-a选项,不跟目录名或者文件名:会列出当前目录下的文件和目录,包含隐藏文件。
  • 后面加-l选项,不跟目录名或者文件名:会列出当前文件下除隐藏文件外的所有文件和目录的详细信息,包括权限,所属主,所属组以及文件创建日期和时间。注意:ls -l可以缩写成ll
  • 后面不加选项,只跟文件名:会列出该文件,使用时通常都是加上-l选项,用来查看该文件的详细信息
  • 后面不加选项,只跟目录名:会列出指定目录下的文件和目录。
  • -d选项:这个选项是针对目录的,通常都是和-l并用,写成-ld。它可以查看指定目录的属性,它可以查看/tmp/test/123这个目录的创建时间,如果不加-d,则会显示该目录里边的文件和子目录的属性。

mkdir命令(创建目录)

mkdir(make dictionaries的简写)用于创建目录。该命令的格式为mkdir [-mp] [参数] [目录名称]。其中,-m,-p为其选项。-m选项用于指定要创建目录的权限。-p用于创建一大串级联目录。

[root@localhost test]# mkdir 1/2/3mkdir: 无法创建目录"1/2/3": 没有那个文件或目录[root@localhost test]# ls 1/23

当创建1/2/3时,提示无法创建。在Linux中,如果发现要创建的目录的上一级目录不存在,就会报错。为了解决这个问题,设置了-p选项,这个选项可以创建一大串级联目录,并且当创建一个已经存在的目录时,不会报错,且不会做任何事。

在当前目录中建立bin和bin下的os_1目录,权限设置为文件主可读、写、执行,同组用户可读和执行,其他用户无权访问

mkdir -p-m 750 bin/os_1

rm命令(删除文件和目录)

rm -rf

默认只能删除文件,不能删除目录。并且删除的时候会询问是否删除,输入“y”会删除,“n”则不删除。

  • -r:加了这个选项之后就既可以删除文件也可以删除目录了。

  • -f:表示强制删除,不会询问是否删除,而是直接删除。如果后面跟一个不存在的文件,也不会报错。

实际使用的时候一般都是合起来用rm -rf,可以直接删除文件或目录,没有询问。

cp命令(复制文件和目录)

cp即copy复制。该命令的格式为cp [选项] [来源文件] [目的文件]

  • -r:如果要复制一个目录,必须加-r选项,否则不能复制。r代表递归。

比如将1目录下的q.txt复制到3目录下

cp 1/q.txt 1/2/3/也可以在复制的过程中给新文件再起个名字cp 1/q.txt 1/2/3/a.txt
cp * /usr/local/tomcat1-8080/webapps/solr/WEB-INF/lib/

*代表复制当前目录所有东西到另一个目录下

可以选择多个文件复制,把1.txt和2.txt复制到/usr/local/目录下

cp 1.txt 2.txt /usr/local/

mv命令(文件和目录的剪切和重命名)

mv是move的缩写,剪切,该命令的格式为mv [选项] [源文件或目录] [目标文件或目录]

//将a.txt重命名为bmv a.txt b//将a.txt剪切到b目录下(b目录存在)mv a.txt b///将a.txt剪切到b目录下(b目录不存在)mv a.txt b/mv:无法将"a.txt"移动至"b/":不是目录//将a.txt剪切到b目录下并重命名为b.txt(在b目录下b.txt不存在)mv a.txt b/b.txt//将a.txt剪切到b目录下并重命名为b.txt(在b目录下b.txt存在)mv a.txt b/b.txtmv:是否覆盖"b/b.txt"?

touch命令(创建文件)

touch a.txt 如果没有这个文件,就会创建这个文件;如果有这个文件,则会改变文件的访问时间。

文档的编辑和查看

less(查看文档)

less q.txt 按空格可以翻页。按j和k进行上下一行一行的翻(或者用上下箭头)。按q键退出。
查看某个文件时,可以按一下/键,并输入一个字符串,然后回车,这样就可以查找这个字符串了。如果是查找多个该字符串,可以按n键显示下一个。另外,也可以用?键替代/键来搜索字符串,唯一不同的是,/是在当前行向下搜索,而?是在当前行向上搜索。

tail命令(可动态查看文档)

tail q.txt 显示文件的最后10行。啥参数都不加默认是显示最后10行。

tail -3 q.txt 显示最后3行。

tail -f /var/log/messages 可以动态、实时地查看文件messages中的内容。
可以用来动态查看tomcat的日志

文本编辑工具vim

也可以用vi,vim是vi的升级版。
vim有三种模式:一般模式,编辑模式和命令模式

当执行vim q.txt时,默认进入该文件的一般模式。

在一般模式下不可以修改某一个字符,如果要修改字符,只能进入编辑模式。按i键可以进入编辑模式,在屏幕的尾行会显示INSERT字样。从编辑模式回到一般模式只需要按Esc即可。

在一般模式下输入:或/即可进入命令模式。输入相关命令后回车。

命令 作用 :wq 保存并退出 :q! 强制退出,所有改动不生效 /eaglezsx 在光标之后查找一个字符串,比如eaglezsx,按n向后继续搜索 ?eaglezsx 在光标之前查找一个字符串,比如eaglezsx,按n向前继续搜索

文档压缩,打包和解压

Linux中的打包文件一般是.tar结尾的,压缩命令一般是以.gz结尾的。而一般情况下打包和压缩是一起进行的,打包并压缩后的文件的后缀名一般.tar.gz。

在window中必须要有后缀名,但在Linux中文件的后缀名写不写都不影响实际使用,写上了主要是方便人们查看的。

压缩与打包

tar -zcvf test.tar.gz aa.txt sudo.conf

把a.txt和sudo.conf文件打包压缩成text.tar.gz
z:调用gzip压缩命令进行压缩。c:打包文件

tar -zcvf xxx.tar.gz /test/*

打包压缩/test下的所有文件

解压

tar -xvf eaglezsx.tar.gz

把eaglezsx.tar.gz解压到当前目录。x代表解压(extract,有提取的意思),v表示显示运行过程,f指定要解压的文件名。

tar -xvf eaglezsx.tar.gz -C /usr/

把eaglezsx.tar.gz解压到usr目录。C代表指定解压的位置。

管道符|

管道符|,用于将前一个指令的输出作为后一个指令的输入

grep(文本搜索)

grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)

ps(显示当前系统的进程)

ps是process(进程)的缩写

ps aux

a:显示现行终端机下的所有程序,包括其他用户的程序。

u:以用户为主的格式来显示程序状况。

x:显示所有程序,不以终端机来区分。

ps aux|grep nginx

显示结果

root       9568  0.0  0.0  20500   608 ?        Ss   10:06   0:00 nginx: master process ./nginxnobody     9569  0.0  0.1  23028  1380 ?        S    10:06   0:00 nginx: worker processroot       9857  0.0  0.0 112680   972 pts/0    S+   10:35   0:00 grep --color=auto nginx

可以看到包含nginx的有三个进程,其中grep也是一个进程。第二列就是pid

原创粉丝点击