linux常用命令

Linux命令

1. Ls -a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件
-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息
2. cd cd /  系统根目录
3. Pwd pwd –p 显示实际路径 查看当前工作目录
4. mkdir mkdir [选项] 目录... 目录
mkdir -p test2/test22 递归创建多个目录 
mkdir -m 777 test3 创建权限为777的目录
5. Rm rm 文件名
rm -f log1.log 强行删除file
rm -i *.log 删除任何.log文件;删除前逐一询问确认 
rm -r test1 将 test1子目录及子目录中所有档案删除
rm -rf  test2 将 test2 子目录及子目录中所有档案删除,并且不 用一一确认
rm -- -f 删除以 -f 开头的文件
6. rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的
rmdir 不能删除非空目录
rmdir -p logs rmdir -p 当子目录被删除后使它也成为空目录的话,则顺便一并删除
7. mv [选项] 源文件或目录 目标文件或目录
文件改名 命令: mv test.log test1.txt
移动文件 命令: mv test1.txt test3
mv log1.txt log2.txt log3.txt test3
目录的移动 命令: mv dir1 dir2
一个子目录里的文件移动到另一个子目录里 命令: mv test3/*.txt test5
8. linux系统中文件目录的基本权限控制
stat+文件名,其中我们看到的644就是该文件的权限
ls -l +文件名,这个显示的信息就包括文件的权限
chmod 777
使用ls -ld 目录名,来查看目录的权限
9. cp命令用来复制文件或者目录
cp [选项]... 源... 目录
cp [选项]... -t 目录 源...
cp log.log test5 复制单个文件到目标目录
cp -a test3 test5 复制整个目录
10. touch 用来修改文件时间戳,或者新建一个不存在的文件
touch [选项]... 文件...
touch log2012.log log2013.log 创建不存在的文件
touch -t 201211142234.50 log.log 设定文件的时间戳
11. cat命令的用途是连接文件或标准输入并打印
cat [选项] [文件]...
一次显示整个文件:cat filename
从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.
将几个文件合并为一个文件:cat file1 file2 > file
cat -n log2012.log log2013.log 把 log2012.log 的文件内容加上行号后输入 log2013.log
把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里
cat -b log2012.log log2013.log log.log
cat 是由第一行到最后一行连续显示在萤幕上,而 tac 则是由最后一行到第一行反向在萤幕上显示出来
12. nl命令在linux系统中用来计算文件中行号 nl 可以将输出的文件内容自动的加上行号
nl [选项]... [文件]...
nl log2012.log 用 nl 列出 log2012.log 的内容 空行没有行号
nl -b a log2012.log 用 nl 列出 log2012.log 的内容,空本行也加上行号
13. more会以一页一页的读,而最基本的指令就是按空白键下一页,按 b键就会往上一页显示
+n 从笫n行开始显示
-n 定义屏幕大小为n行
-s 把连续的多个空行显示为一行
-u 把文件内容中的下画线去掉
more +3 log2012.log 显示文件中从第3行起的内容
more +/day3 log2012.log 查找第一个出现"day3"字符串的行,并从该处前两行开始显示
more -5 log2012.log 设定每屏显示行数
ls -l | more -5 列一个目录下的文件,由于内容太多,我们用more来分页
14. less 工具也是对文件或其它输出进行分页显示的工具 less [参数] 文件
less log2013.log 查看文件
ps -ef | less ps查看进程信息并通过less分页显示
history | less 查看命令历史使用记录并通过less分页显示
15. head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块
head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行
head -n 5 log2014.log 显示文件的前5行
head -c 20 log2014.log 显示文件前20个字节
head -n -6 log2014.log 输出文件除了最后n行的全部内容
16. tail 命令从指定点开始将文件写到标准输出
tail[必要参数][选择参数][文件]
tail -n 5 log2014.log 显示文件末尾5行内容
tail -f test.log 循环查看文件内容
tail -n +5 log2014.log 从第5行开始显示文件
17. which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置
find 实际搜寻硬盘查询文件名称
使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令
which pwd /bin/pwd
18. whereis命令只能用于程序名的搜索
whereis tomcat whereis -b svn
19. locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案
Locate [选择参数] [样式]
locate pwd 查找和pwd相关的所有文件
locate /etc/sh 搜索etc目录下所有以sh开头的文件
20. Linux下find命令提供了相当多的查找条件
find pathname -options [-print -exec -ok ...]
find -atime -2 查找指定时间内修改过的文件
find . -name "*.log" 在当前目录查找 以.log结尾的文件。 ". "代表当前目录
find /opt/soft/test/ -perm 777 查找/opt/soft/test/目录下 权限为 777的文件
find . -type f -name "*.log" 查找当目录,以.log结尾的普通文件 find . -type d | sort 查找当目录,以.log结尾的普通文件
find . -size +1000c -print 查找当前目录大于1K的文件
ind . -name "[a-z]*[4-9].log" -print 当前目录查找文件名以一个个小写字母开头,最后是4到9加上.log结束的文件
find . -perm 755 -print
按照文件权限模式用-perm选项,按文件权限模式来查找文件
find / -mtime -5 -print 查找更改时间在5日以内的文件
find /etc -type d -print 在/etc目录下查找所有的目录
find . -size +1000000c -print 在当前目录下查找文件长度大于1 M字节的文件
21. /etc:配置文件
/bin:重要执行档
/dev:所需要的装置文件
/lib:执行档所需的函式库与核心所需的模块
/sbin:重要的系统执行文件
/usr里面放置的数据属于可分享的与不可变动的
/var就是在系统运作后才会渐渐占用硬盘容量的目录
22. chmod命令用于改变linux系统文件或目录的访问权限
u :目录或者文件的当前的用户
g :目录或者文件的当前的群组
o :除了目录或者文件的当前用户或群组之外的用户或者群组
a :所有的用户及群组
r :读权限,用数字4表示
w :写权限,用数字2表示
x :执行权限,用数字1表示
- :删除权限,用数字0表示
s :特殊权限
chmod a+x log2012.log 增加文件所有用户组可执行权限
chmod ug+w,o-x log2012.log 同时修改不同用户权限
chmod a-x log2012.log 删除文件权限
chmod u=x log2012.log 使用“=”设置权限 chmod u=rwx,g=rx,o=x file
chmod -R u+x test4 对一个目录及其子目录所有文件添加权限
23. tar 压缩,解压缩,打包,解包
tar[必要参数][选择参数][文件]
解包: tar xvf FileName.tar
打包: tar cvf FileName.tar DirName
gzip[参数][文件或者目录]
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
gzip -dr test6 递归地解压目录
压缩: gzip FileName
解压: tar zxvf FileName.tar.gz
压缩: tar zcvf FileName.tar.gz DirName
gzip * 把test6目录下的每个文件压缩成.gz文件
gzip -dv * 把上一步中每个压缩的文件解压
gzip -l * 显示上一步中每个压缩的文件的信息,并不解压
gzip -r log.tar 压缩一个tar备份文件,此时压缩文件的扩展名为.tar.gz
gzip -rv test6 递归的压缩目录
所有test下面的文件都变成了*.gz,目录依然存在只是目录里面的文件相应变成了*.gz

解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
解压: tar jxvf FileName.tar.bz2
压缩: tar jcvf FileName.tar.bz2 DirName

解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
解压: tar jxvf FileName.tar.bz

解压:unzip FileName.zip
压缩:zip FileName.zip DirName

解压:rar x FileName.rar
压缩:rar a FileName.rar DirName
24. 文件或目录的权限的掌控以拥有者及所诉群组来管理 chgrp [选项] [组] [文件]
chgrp -v othergroup log2012.log 改变文件的群组属性
chgrp --reference=log2012.log log2013.log
使得文件log2013.log的群组属性和参考文件log2012.log的群组属性
chgrp -R othergroup test 改变指定目录以及其子目录下的所有文件的群组属性
25. chown将文件的拥有者改为指定的用户或组,可以是用户名或用户ID,组名或者组ID
chown [选项]... [所有者][:[组]] 文件...
chown tom:toms log2012.log 改变拥有者和群组
chown :mail log2012.log 改变文件群组 默认都是root
chown -R -v root:toms test6 改变指定目录以及其子目录下的所有文件的拥有者
26. Linux /etc/group文件与/etc/passwd和/etc/shadow
文件都是有关于系统管理员对用户和用户组管理时相关的文件
cat /etc/group
27. linux中df命令的功能是用来检查linux服务器的文件系统的磁盘空间占用情况
df 显示磁盘使用情况
df -i 以inode模式来显示磁盘使用情况
df -t ext3 显示指定类型磁盘
df -ia 列出各文件系统的i节点使用情况
df -T 列出文件系统的类型
df -h 以更易读的方式显示目前磁盘空间和使用情况

du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间
du 显示目录或者文件所占空间
du log2012.log 显示指定文件所占空间
du scf 查看指定目录的所占空间
du log30.tar.gz log31.tar.gz 显示多个文件所占空间
du -s 只显示总和的大小
du -h test 方便阅读的格式显示
du -ah test 文件和目录都显示
du -c log30.tar.gz log31.tar.gz 显示几个文件或目录各自占用磁盘空间的大小
du|sort -nr|more 按照空间大小排序
30. ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接
ln [参数][源文件或目录][目标文件或目录]
ln -s log2013.log link2013 给文件创建软链接 如果log2013.log丢失,link2013将失效
ln log2013.log ln2013 给文件创建硬链接
31. diff 命令是 linux上非常重要的工具,用于比较文件的内容
diff[参数][文件1或目录1][文件2或目录2]
diff log2014.log log2013.log 比较两个文件
diff log2014.log log2013.log -u 统一格式输出
diff test3 test6 比较文件夹不同
32. date 可以用来显示或设定系统的日期与时间
date
date '+%c'
date '+%D'
date '+%x'
date '+%T'
date '+%X'

cal命令可以用来显示公历(阳历)日历
cal 显示当前月份日历
cal 9 2012 显示指定月份的日历
cal -y 2013 显示2013年日历
cal -j 显示自1月1日的天数
33. Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本
grep [option] pattern file
^ #锚定行的开始 如:'^grep'匹配所有以grep开头的行。
$ #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。
. #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。
* #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.* #一起用代表任意字符。
[] #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。
[^] #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。
(..) #标记匹配字符,如'(love)',love被标记为1。
< #锚定单词的开始,如:'<grep'匹配包含以grep开头的单词的行。
> #锚定单词的结束,如'grep>'匹配包含以grep结尾的单词的行。
x{m} #重复字符x,m次,如:'0{5}'匹配包含5个o的行。
x{m,} #重复字符x,至少m次,如:'o{5,}'匹配至少有5个o的行。
x{m,n} #重复字符x,至少m次,不多于n次,如:'o{5,10}'匹配5--10个o的行。
w #匹配文字和数字字符,也就是[A-Za-z0-9],如:'Gw*p'匹配以G后跟零个或多个文字或数字字符,然后是p。
W #w的反置形式,匹配一个或多个非单词字符,如点号句号等。
 #单词锁定符,如: 'grep'只匹配grep。
ps -ef|grep svn 查找指定进程
cat test.txt | grep -f test2.txt
输出test.txt文件中含有从test2.txt文件中读取出的关键词的内容行
cat test.txt | grep -nf test2.txt
输出test.txt文件中含有从test2.txt文件中读取出的关键词的内容行,并显示每一行的行号
grep 'linux' test.txt 从文件中查找关键词
grep 'linux' test.txt test2.txt 从多个文件中查找关键词
cat test.txt |grep ^u 找出已u开头的行内容
cat test.txt |grep ^[^u] 输出非u开头的行内容
cat test.txt |grep hat$ 输出以hat结尾的行内容
cat test.txt |grep -E "ed|at" 显示包含ed或者at字符的内容行
grep '[a-z]{7}' *.txt 当前目录下面以.txt 结尾的
34. Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数
wc [选项] 文件...
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度。
wc test.txt 查看文件的字节数、字数、行数
35. Linux中的ps命令是Process Status的缩写
1. 运行(正在运行或在运行队列中等待) R
2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) S
3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) D 不可中断
4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放) Z
5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行) T
ps -A 显示所有进程信息
ps -u root 显示指定用户信息
ps -ef 显示所有进程信息,连同命令行
ps -ef|grep ssh ps 与grep 常用组合用法,查找特定进程
ps -l 将目前属于您自己这次登入的 PID 与相关信息列示出来
ps aux 列出目前所有的正在内存当中的程序
36. top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况
Linux系统中的killall命令用于杀死指定名字的进程
killall vi 杀死所有同名进程
杀死 vi进程:killall -TERM vi 或者 killall -KILL vi
37. free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer
free -g 以GB为单位显示内存使用情况。
free -m 以MB为单位显示内存使用情况。
38. Linux系统中的 iostat是I/O statistics iostat工具将对系统的磁盘操作活动进行监视
-C 显示CPU使用情况
-d 显示磁盘使用情况
-N 显示磁盘阵列(LVM) 信息
-n 显示NFS 使用情况
-p[磁盘] 显示磁盘和分区的情况
-t 显示终端和CPU的信息
39. watch可以帮你监测一个命令的运行结果
40. 在linux系统中你可能已经发现了为什么系统常常会自动的进行一些任务 at 命令
41. ifconfig 命令用来查看和配置网络设备
ifconfig eth0 up ifconfig eth0 down 启动关闭指定网卡
ifconfig eth0 192.168.120.56 给eth0网卡配置IP地:192.168.120.56
ifconfig eth0 arp ifconfig eth0 -arp 启用和关闭ARP协议
42. Linux系统的route命令用于显示和操作IP路由表 route
43. Linux系统的ping命令是常用的网络命令
ping [参数] [主机名或IP地址]
ping -c 10 192.168.120.206 ping指定次数
ping -c 5 www.58.com
44. telnet命令通常用来远程登录
telnet[参数][主机]
service xinetd restart 启动telnet服务
45. rcp命令用在远端复制文件或目录

原文地址:https://www.cnblogs.com/liuzyw/p/5744691.html