首页 » 后端 » 正文

Linux 常用命令

一. 文件目录操作命令:

名称 功能
ls 列出目标目录中所有的子目录和文件。
cd 切换当前目录至dirName
pwd 查看”当前工作目录“的完整路径
mkdir 通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录。
rm 删除一个目录中的一个或多个文件或目录,如果没有使用- r选项,则rm不会删除目录。如果使用 rm 来删除文件,通常仍可以将该文件恢复原状。
rmdir 该命令从一个目录中删除一个或多个子目录项,删除某目录时也必须具有对父目录的写权限。
mv 视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中。
cp 将源文件复制至目标文件,或将多个源文件复制至目标目录。
touch touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间。
vat 1.一次显示整个文件:cat filename2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.3.将几个文件合并为一个文件:cat file1 file2 > file
nl nl 命令读取 File 参数(缺省情况下标准输入),计算输入中的行号,将计算过的行号写入标准输出
more more命令和cat的功能一样都是查看文件里的内容,但有所不同的是more可以按页来查看文件的内容,还支持直接跳转行等功能。
less less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件。
head head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。
tail 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

二. 文件查找命令

名称 功能
which 查看可执行文件的位置。在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果。
whereis 查看文件的位置。定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件。whereis 程序还具有搜索源代码、指定备用搜索路径和搜索不寻常项的能力。
locate 配合数据库查看文件位置。locate命令可以在搜寻数据库时快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性建立的,locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,但较差劲的是locate所找到的档案若是最近才建立或 刚更名的,可能会找不到,在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。
find 实际搜寻硬盘查询文件名称。用于在文件树种查找文件,并作出相应的处理
type type命令其实不能算查找命令,它是用来区分某个命令到底是由shell自带的,还是由shell外部的独立二进制文件提供的。如果一个命令是外部命令,那么使用-p参数,会显示该命令的路径,相当于which命令。

三. 文件打包上传和下载

名称 功能
SecureCRT 用SSH管理linux服务器时经常需要远程与本地之间交互文件.而直接用SecureCRT自带的上传下载功能无疑是最方便的。常见协议有:ASCII:这是最快的传输协议,但只能传送文本文件。 Xmodem:这种古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。 Ymodem:这是Xmodem的改良版,使用了1024位区段传送,速度比Xmodem要快 Zmodem:Zmodem采用了串流式(streaming)传输方式,传输速度较快,而且还具有自动改变区段大小和断点续传、快速错误侦测等功能。这是目前最流行的文件传输协议。
tar 用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的
gzip gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多出”.gz”的扩展名。

四. linux文件权限设置

名称 功能
chmod chmod命令用于改变linux系统文件或目录的访问权限。用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
chgrp 命令可采用群组名称或群组识别码的方式改变文件或目录的所属群组。使用权限是超级用户。
chown 通过chown改变文件的拥有者和群组。在更改文件的所有者或所属群组时,可以使用用户名称和用户识别码设置。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。

五. 磁盘存储相关

名称 功能
df 显示指定磁盘文件的可用空间。如果没有文件名被指定,则所有当前被挂载的文件系统的可用空间将被显示。默认情况下,磁盘空间将以 1KB 为单位进行显示,除非环境变量 POSIXLY_CORRECT 被指定,那样将以512字节为单位进行显示
du 显示每个文件和目录的磁盘使用空间。
iostat 通过iostat方便查看CPU、网卡、tty设备、磁盘、CD-ROM 等等设备的活动情况, 负载信息。

六. 性能监控和优化命令

名称 功能
top 示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等
free 显示系统使用和空闲的内存情况,包括物理内存、交互区内存(swap)和内核缓冲区内存。共享内存将被忽略
vmstat 是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。
lsof 用于查看你进程开打的文件,打开文件的进程,进程打开的端口(TCP、UDP)。找回/恢复删除的文件。是十分方便的系统监视工具,因为 lsof 需要访问核心内存和各种文件,所以需要root用户执行。

七. 网络命令

名称 功能
ifconfig 查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。
route 用于操作基于内核ip路由表,它的主要作用是创建一个静态路由让指定一个主机或者一个网络通过一个网络接口,如eth0。当使用”add”或者”del”参数时,路由表被修改,如果没有参数,则显示路由表当前的内容。
ping 确定网络和各外部主机的状态;跟踪和隔离硬件和软件问题;测试、评估和管理网络。
traceroute 追踪网络数据包的路由途径,预设数据包大小是40Bytes,用户可另行设置。
netstat 用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
ss ss(Socket Statistics的缩写)命令可以用来获取 socket统计信息,此命令输出的结果类似于 netstat输出的内容,但它能显示更多更详细的 TCP连接状态的信息,且比 netstat 更快速高效。
telnet 执行telnet指令开启终端机阶段作业,并登入远端主机。
rcp 在远端复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该目录中。
scp 是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。linux的scp命令可以在linux服务器之间复制文件和目录。

八. 其他

名称 功能
ln 功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
diff 比较单个文件或者目录内容。
date 用来显示或设定系统的日期与时间。
cal 用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份
grep 用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活。
wc 统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
ps ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。
watch 可以将命令的输出结果输出到标准输出设备,多用于周期性执行命令/定时执行命令
at 在一个指定的时间执行一个指定任务,只能执行一次,且需要开启atd进程
crontab 周期性的执行某种任务或等待处理某些事件的一个守护进程

来源

http://www.ruanyifeng.com/blog/2009/10/5_ways_to_search_for_files_using_the_terminal.html

http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html

发表评论