常用的Linux命令
前言
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。想要在Linux系统之中随心所欲的行走那就离不开掌握常用的Linux命令,下面就以ubuntu下的命令为例整理的Linux常用的命令。
目录
正文
一、文件目录操作命令
(1) ls(list,列表)
作用:列出目标目录中所有的子目录和文件。
用法:
1 ls [选项] [目录名]
2
3 ls -a 显示所有文件,包括隐藏文件
4 ls -l 以详细信息显示
5 ls -a -l
6 ls -l -a
7 ls -la
8 ls -al 四种方式都是可以的
ls -l显示的详细信息中:
1 -rw-r--r--
2
3 drwxr-xr-x
一共10个字符,第一个字符表示文件类型,后面9个字符表示文件权限。
文件类型:
-:表示普通文件。普通文件指文本文件和二进制文件,如a.c 1.txt a.out都是普通文件
d:表示文件夹,d是directory的缩写
l:表示符号连接文件,后面会用->打印出它指向的文件
s:表示socket文件
p:表示管道文件 pipe
(2) cd(change directory,更改目录)
作用:用来切换目录
用法:
1 cd [目录名]
涉及到相对路径和绝对路径
1 / 代表系统根目录
2 ~ 代表用户所在目录
3 - 代表前一次目录
4 .. 代表上一层目录
5 . 代表当前目录
(3) pwd(print work directory,打印工作目录)
作用:查看”当前工作目录“的完整路径
用法:
pwd [选项]
格式:pwd -P 显示出实际路径,而非使用连接(link)路径。
(4) mkdir(make directory,创建文件夹)
作用:创建空文件夹
用法:
1 mkdir [选项] 目录...
命令参数:
1 -m, --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask
2 -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录;
3 -v, --verbose 每次创建新目录都显示信息
4 --help 显示此帮助信息并退出
5 --version 输出版本信息并退出
(5) mv(move,移动)
作用:在目录间移动文件,重命名文件
用法:
1 mv [选项] 源文件或目录 目标文件或目录
命令参数:
1 -b :若需覆盖文件,则覆盖前先行备份。
2 -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
3 -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
4 -u :若目标文件已经存在,且 source 比较新,才会更新(update)
5 -t : --target-directory=DIRECTORY move all SOURCE arguments into DIRECTORY,即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。
(6) touch
作用:创建空文件
用法:
touch [选项]... 文件...
命令参数:
1 -a 或--time=atime或--time=access或--time=use 只更改存取时间。
2 -c 或--no-create 不建立任何文档。
3 -d 使用指定的日期时间,而非现在的时间。
4 -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
5 -m 或--time=mtime或--time=modify 只更改变动时间。
6 -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
7 -t 使用指定的日期时间,而非现在的时间。
(7) cp(copy,复制)
作用:复制文件或文件夹
用法:
1 cp [选项]... [-T] 源 目的
2 或:cp [选项]... 源... 目录
3 或:cp [选项]... -t 目录 源...
4
5 cp -r 用来复制文件夹
6 cp -f 强制复制
实际操作时:一般都是cp -f复制文件,cp -rf复制文件夹
(8) rm(remove,去除,删除)
作用:用来删除文件,文件夹
用法:
rm [选项] 文件…
命令参数:
1 -r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
2 -f, --force 忽略不存在的文件,从不给出提示。
3 -i, --interactive 进行交互式删除
4 -r, -R, --recursive 指示rm将参数中列出的全部目录和子目录均递归地删除。
常用:
rm -r 文件
rm -rf 文件夹
(9) cat
作用:直接在命令行下显示文件内容
用法:
1 cat [选项] [文件]...
cat主要有三大功能:
1 1.一次显示整个文件:cat filename
2 2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.
3 3.将几个文件合并为一个文件:cat file1 file2 > file
(10)rmdir(remove directory,删除文件夹)
作用:删除空文件夹
用法:
rmdir [选项]... 目录...
命令参数:
1 -p 递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。
2 -v, --verbose 显示指令执行过程
rmdir和rm -r的区别:rmdir只能删除空文件夹,而rm -r可以删除空文件夹和非空文件夹
(11)nl
作用:显示行号查看文件内容
用法:
1 nl [选项]... [文件]...
(12)more
作用:more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
用法:
1 more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ]
(13)less
作用:less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
用法:
1 less [参数] 文件
(14)head
作用:显示行号查看文件内容
用法:
1 head [参数]... [文件]...
命令参数:
1 -q 隐藏文件名
2 -v 显示文件名
3 -c<字节> 显示字节数
4 -n<行数> 显示的行数
(15)tail
作用:用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
用法:
tail[必要参数][选择参数][文件]
命令参数:
1 -f 循环读取
2 -q 不显示处理信息
3 -v 显示详细的处理信息
4 -c<数目> 显示的字节数
5 -n<行数> 显示行数
6 --pid=PID 与-f合用,表示在进程ID,PID死掉之后结束.
7 -q, --quiet, --silent 从不输出给出文件名的首部
8 -s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
(16) ln(link,连接文件)
基础:windows中快捷方式,实际上快捷方式和它指向的文件是独立的两个文件,两个都占硬盘空间,只不过用户访问快捷方式时,其效果等同于访问指向的文件。
作用:创建软连接文件
用法:
1 ln -s 源文件名 符号连接文件名
举例:ln -s src.c,linker.c, linker.c就是
src.c的一个符号连接文件
linux中有两种连接文件:
一种叫软连接(符号连接),等同于windows中快捷方式,一种叫硬连接
硬连接:ln 源文件名 连接文件名
硬连接实际上和源文件在硬盘中是同一个东西,效果类似于硬盘上的一个文件,在文件系统上,在我们看来有好多个文件一样。每次删除一个文件时,只要他还有其他的硬连接存在,这个文件就不会被真正删除。只有等所有的连接文件都删除掉了,这个文件才会被真正从硬盘上删除。
(17) man
作用:查询man手册,获得帮助信息
用法:
1 man 1 ls 1表示查询的是linux命令
2 man 2 xxx 2表示查询的是linux api
3 man 3 xxx 3表示查询的是C库函数
注意:在man手册中查询时,退出按Q键(Q就是quit的缩写)
(18) apt-get
作用:在ubuntu中用来在线安装、卸载软件的程序
用法:
1 apt-get update 更新源
2 apt-get install xxx 安装软件
3 apt-get remove xxx 卸载软件
说明:apt-get 安装软件的原理和必要性。
linux操作系统的发行版,内核版本,定制性,造成了linux中软件的不兼容性。在linux中安装软件是一件困难的事情,装了软件能不能用不一定。ubuntu解决了这个问题,ubuntu就适合某个发行版(ubuntu10.04)的所有软件做了一个列表,然后用户通过apt-get install的方式安装软件,就会实时连接到ubuntu服务器,服务器会根据你的ubuntu版本,给你下载合适的软件来安装。这样确保了软件的兼容性。
文件查找命令
(1) which
作用:which指令会在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
用法:
1 which 可执行文件名称
命令参数:
1 -n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
2 -p 与-n参数相同,但此处的包括了文件的路径。
3 -w 指定输出时栏位的宽度。
4 -V 显示版本信息
(2) whereis
作用:定位可执行文件、源代码文件、帮助文件在文件系统中的位置。
用法:
whereis [-bmsu] [BMS 目录名 -f ] 文件名
命令参数:
1 -b 定位可执行文件。
2 -m 定位帮助文件。
3 -s 定位源代码文件。
4 -u 搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。
5 -B 指定搜索可执行文件的路径。
6 -M 指定搜索帮助文件的路径。
7 -S 指定搜索源代码文件的路径。
(3) locate
作用:很快速的搜寻档案系统内是否有指定的档案
用法:
1 locate [选择参数] [样式]
(4) find
作用:用于在文件树种查找文件,并作出相应的处理
用法:
1 find pathname -options [-print -exec -ok ...]
三、vim编辑器常用命令
vim是vi的升级版
*使用vi来打开/创建一个文件,vi pathname
*vi的两种模式:
命令模式:当vi打开时默认为命令模式,要转入输入模式,需要按a或者i键。在命令模式下,此时键盘上输入的所有东西都被vi当作命令来对待。
在命令模式下,最好不要乱输入。此时应该输入相应的命令,来让vi做相应的事。
输入模式:输入模式用来向文件输入内容。可以从命令模式中按a或者i进入输入模式。进入输入模式后,就可以随意按键盘进行输入了。输入完成后如果要保存,要先退回到命令模式(因为保存也是一种命令)。在输入模式下按ESC键退回到命令模式。
注:注意看屏幕左下角,当命令模式时无提示信息或者提示文件名等信息,等处于输入模式时,提示 – INSERT –
(1) 保存,退出
1 :wq 保存并且退出
2 :w 只保存不推出
3 :q 不保存退出 进来看了一下没改退出
4 :q! 不保存强制退出
5 :wq! 保存并强制退出
(2) 查找
在命令模式下,输入/xxx,就可以查找到xxx
(3) 快速切换行
在命令模式下,输入:num,就可以快速切换到num行
(4) 设置显示行号
在命令模式下,输入:set nu,就可以显示行号
注:设置不显示行号,命令模式输入:set nonu
设置永久显示行号,需要修改vi的配置文件。打开vi的配置文件~/.vimrc,在其中输入set nu即可。
(5) 行删除
命令模式下,先将光标移动到要删除的行,然后输入dd
如果要删除连续多行,譬如要删除连续的3行,使用3dd
(6) 行复制、粘贴
复制:命令模式下,nyy
粘贴:命令模式下,p
细节,复制时要把光标放在多行的第一行,粘贴时实际
粘贴到当前光标所在行的下一行。