Linux常用命令(一)
笺注:这是在 [url=http://blog.zhuohua.store/viewthread.php?tid=79&extra=page%3D1]LNMP一键安装包(lnmp_CentOS6.9)[/url] 的基础上进行的。Linux内核版本号的命名形式: x.yy.zz (x为主版本号,yy为次版本号,zz为修订版本号)
查看内核版本:(次版本号为偶数时表示为稳定版,奇数表示为开发版本)
[root@localhost ~]# uname -r
2.[color=Blue]6[/color].32-696.el6.x86_64
[root@localhost ~]# uname -r |awk -F. '{print $2}'
[color=Blue]6[/color]
[root@localhost ~]# a=$(uname -r |awk -F. '{print $2}')
[root@localhost ~]# b=`expr $a % 2`
[root@localhost ~]# [ $b -eq 0 ] && echo 'Stable'
Stable
[root@localhost ~]# uname -a
Linux localhost.localdomain [color=Blue]2.6.32-696.el6.x86_64[/color] #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
[root@localhost ~]#
[root@localhost ~]# uname -a |awk '{print $3}'
[color=Blue]2.6.32-696.el6.x86_64[/color]
编辑Linux命令行时,可以使用以下几个辅助操作,以提高输入效率:
反斜杠“\”:应用于输入的一行命令内容太长的时候
[attach]11486[/attach]
注释:输入反斜杠“\”后,按回车键即可;后面的内容无法自动补全的
快捷键Ctrl+a:快速去到当前光标所在行的最前面
[attach]11487[/attach]
快捷键Ctrl+e:快速去到当前光标所在行的最后面
[attach]11488[/attach]
快捷键Ctrl+k:快速删除从当前光标处到行尾的所有字符内容
[attach]11489[/attach]
注释:光标所在的字符会被删除。
快捷键Ctrl+u:快速删除当前光标处之前的所有字符内容
[attach]11490[/attach]
注释:光标所在的字符不会被删除。
在Linux系统中表示某个目录(或文件)的位置时,根据其参照的起始目录不同,可以使用两种不同的形式,分别称为绝对路径、相对路径:
绝对路径: 以根目录作为起点
[attach]11491[/attach]
相对路径:
1.直接使用目录名或文件名,是以当前的工作目录作为起点
[attach]11492[/attach]
2.使用“./”开头,表示以当前的工作目录作为起点
[attach]11493[/attach]
3. 使用“../”开头,表示以当前工作目录的上一级目录作为起点
[attach]11494[/attach]
注释:/root的上一级目录就是根目录了
4.使用“~/”开头,表示以当前用户的家目录作为起点
[attach]11495[/attach]
5.使用“~用户名/”开头,表示以指定用户的家目录作为起点
[attach]11496[/attach]
ls、ll命令——列表显示目录内容
显示指定目录本身的属性,不会显示目录里的内容:
[root@localhost ~]#[color=Blue] ls -ld[/color] /root/
dr-xr-x---. 6 root root 4096 6月 23 03:23 /root/
显示指定目录里的内容:(简单一些)
[attach]11497[/attach]
显示指定目录里的内容:(具体一些)
[attach]11498[/attach]
注释:ls、ll命令都不会延伸到子目录的。
显示指定目录里的内容:(连隐藏的目录和文件都会显示出来的)
[color=Blue]ls -alh[/color] /root/
[attach]11499[/attach]
显示指定目录里的内容:(目录和文件从新到旧排序)
[color=Blue]ls -lt[/color]
[attach]11500[/attach]
注释:不指定目录,则默认为当前目录。
显示指定目录里的内容:(目录和文件从旧到新排序)
[color=Blue]ls -lrt[/color] /root/
[attach]11501[/attach]
查看指定目录里,后缀名为“.gz”的文件:
ll dir1/*.gz
[attach]11502[/attach]
显示指定目录里的内容:(显示文件的属性和[color=Blue]大小[/color]等等)
[color=Blue]ls -lh[/color] /root/lnmp1.3-full/*.sh
[attach]11503[/attach]
[color=Blue]ls -lh[/color] *.sh
[attach]11504[/attach]
注释:不指定目录,则默认为当前目录。
du命令——统计指定目录或文件的空间占用情况
[attach]11505[/attach]
注释:不指定目录,则默认为当前目录。
具体统计:
du -ah
[attach]11506[/attach]
显示指定目录里的内容:(文件和目录从小到大排序;会延伸到子目录的)
du -ah |sort -h
[attach]11507[/attach]
注释:不指定目录,则默认为当前目录。
可以指定目录和条件:
[color=Blue]du -ah[/color] /root/lnmp1.3-full/ [color=Blue]|sort -h[/color] |grep "tar.gz"
[attach]11508[/attach]
more命令——分页查看文件内容:(回车键一行行向下翻;空格键一页页向下翻;q键退出; 不可以向上的!!)
[root@localhost ~]# cat lnmp-install.log[color=Blue] | more[/color]
[attach]11509[/attach]
less命令——分页查看文件内容:
向上键一行行向上翻;向下键一行行向下翻;
回车键一行行向下翻;空格键一页页向下翻;q键退出;
[root@localhost ~]# cat lnmp-install.log [color=Blue]| less[/color]
[attach]11510[/attach]
分页查看指定目录里,后缀名为“.gz”的文件:(q键退出)
ll dir1/*.gz [color=Blue]|less[/color]
[attach]11511[/attach]
echo 命令——写入内容至文件:
[attach]11512[/attach]
笺注:如果文件不存在会自动创建。
[attach]11513[/attach]
笺注:如果文件不存在会自动创建。
清空指定的文件:
[attach]11514[/attach]
笺注:如果文件不存在会自动创建。
cat 命令——显示文件的内容:(可以一次性输出两个文件里的内容的)
[attach]11515[/attach]
覆盖文件:
[attach]11516[/attach]
笺注:如果文件不存在会自动创建。
查看文件内容:
[attach]11517[/attach]
在指定文本末尾追加新内容:
[attach]11518[/attach]
效果:
[attach]11519[/attach]
显示序号:
[color=Blue]cat -n[/color] 123.txt
[attach]11520[/attach]
从底往上显示:
[color=Blue]tac[/color] 123.txt
[attach]11521[/attach]
tee 命令——功能类似于重定向[color=Blue]>[/color],但内容还会显示在屏幕上:
[attach]11522[/attach]
注释:文件不存在会自动创建,如文件存在则直接覆盖
wc 命令——统计文件内容中的行数、单词数量、字节数:
[attach]11523[/attach]
单纯统计文件内容的行数:
[root@localhost ~]# cat 123.txt [color=Blue]|wc -l[/color]
6
统计当前目录里有多少个后缀名为“.gz”的文件:(不会统计子目录)
[root@localhost ~]# ll ./*.gz | wc -l
2
统计指定目录里有多少个后缀名为“.gz”的文件:(不会统计子目录)
[root@localhost ~]# ll /root/dir1/*.gz | wc -l
3
grep 命令——过滤输出的内容:
例子一,根据关键字“Memtotal”查找对应的行内容
[root@localhost ~]# cat /proc/meminfo [color=Blue]|grep[/color] MemTotal
MemTotal: 1906256 kB
[root@localhost ~]# cat /proc/meminfo [color=Blue]|grep -i[/color] memtotal
MemTotal: 1906256 kB
注释:[color=Blue]-i [/color]查找内容时忽略大小写
[root@localhost ~]# cat /proc/meminfo |grep [color=Blue]"[/color]MemTotal: 1906256 kB[color=Blue]"[/color]
MemTotal: 1906256 kB
[root@localhost ~]# cat /proc/meminfo |grep[color=Blue] '[/color]MemTotal: 1906256 kB[color=Blue]'[/color]
MemTotal: 1906256 kB
注释:假如关键字之间有空格,就必须使用英文双引号或单引号。
例子二,先过滤掉文件中以“#”开头的行和空行,再显示剩下的内容:
[attach]11524[/attach]
[root@localhost ~]# cat /etc/rc.local |grep [color=Blue]-v[/color] "^#" |grep -v "^$"
touch /var/lock/subsys/local
注释:[color=Blue]-v [/color]反转查找,即输出与查找条件不相符的内容
例子三,查看硬盘分区使用情况:
[attach]11525[/attach]
过滤出以关键字“tmp”开头的行:
[root@localhost ~]# df -hT |grep "^tmp"
tmpfs tmpfs 931M 0 931M 0% /dev/shm
过滤出以关键字“/”结尾的行:
[root@localhost ~]# df -hT |grep "/$"
ext4 94G 4.1G 86G 5% /
忽略大小写,同时反转查找:
df -hT |grep [color=Blue]-iv[/color] "^tmp"
[attach]11526[/attach]
head命令——查看文件开头的部分内容:(不指定行数的话,默认是显示10行)
[attach]11527[/attach]
只显示/etc/passwd里第1行到第5行的内容:
方法一:
[attach]11528[/attach]
方法二:
[attach]11529[/attach]
tail命令——查看文件末尾的部分内容:(不指定行数的话,默认是显示10行)
[attach]11530[/attach]
只显示/etc/passwd里倒数3行的内容:
[attach]11531[/attach]
find 命令——查找文件或目录
1.按名称查找:(关键字为“-name”;可以使用通配符[color=Blue] *[/color] 或者 [color=Blue]?[/color] )
[attach]11532[/attach]
注释:find 命令都会延到子目录的。
备注:以下两种查找方式要使用双引号或单引号:
[attach]11533[/attach]
[attach]11534[/attach]
2.按文件大小查找:(关键字“-size”;容量单位有k、M、G)
[attach]11535[/attach]
[attach]11536[/attach]
3.按属主查找(关键字“-user”;可以查出以指定用户为属主的文件、目录)
[attach]11537[/attach]
[attach]11538[/attach]
4.按类型查找:(关键字“-type”)
查找出指定目录以及其子目录里的所有目录:
[attach]11539[/attach]
查找出指定目录以及其子目录里的所有文件:
[attach]11540[/attach]
还可以结合head、tail命令:
[attach]11541[/attach]
例子三,使用逻辑运算符:
find ./ -size +60M [color=Blue]-a[/color] -name "*.gz"
[attach]11542[/attach]
注释:[color=Blue]-a[/color] 表示而且
find ./ -size +60M [color=Blue]-o[/color] -name "*.txt"
[attach]11543[/attach]
注释:[color=Blue]-o[/color] 表示或者
ln命令——创建链接文件(类似于Windows系统中的快捷方式)
链接文件分为软链接、硬链接,其中软链接又被称为符号链接。访问软链接或硬链接,与直接访问原始文件(夹)的效果是一样的。
软链接与硬链接的区别:(默认创建的是硬链接,软链接需要加上“-s”选项)
1.删除原始文件后,软链接会失效,但硬链接仍然可以用
2.软链接适用于文件和目录,但硬链接只适用于文件
3.软链接与原始文件(夹)可以位于不同的文件系统中,但硬链接必须与原始文件在同一个文件系统(如一个分区)内
例子一,给/root/dir1/创建软链接目录
[color=Blue]ln -s[/color] /root/dir1/ ../
[attach]11544[/attach]
注释: /dir1 是 /root/dir1/ 的链接目录
两个目录的内容是一样的:
[attach]11545[/attach]
单单删除软链接目录的方法:(原始文件夹里的内容不会被删除)
[attach]11546[/attach]
注释:删除时软链接目录不能有“/”
删除软链接目录里的内容的方法:(原始文件夹里的内容也被删除)
[attach]11547[/attach]
注释:删除时软链接目录要有“/”
例子二,给/mariadb-10.0.23.tar.gz创建软链接文件:
[root@localhost ~]# ln -s /root/mariadb-10.0.23.tar.gz /
[root@localhost ~]#
[root@localhost ~]# ll /mariadb-10.0.23.tar.gz
lrwxrwxrwx 1 root root 28 6月 24 07:52 [color=Purple]/mariadb-10.0.23.tar.gz -> /root/mariadb-10.0.23.tar.gz[/color]
注释: /mariadb-10.0.23.tar.gz 是 /root/mariadb-10.0.23.tar.gz 的链接文件
删除创建软链接文件:(原始文件不会被删除的)
[attach]11548[/attach]
例子三,缩短文件的搜索路径:
ln -s /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/
[attach]11549[/attach]
笺注:软链接文件在FTP目录里是可以看见,但不能下载;硬链接文件在FTP目录里是看不见的。
cut命令——提取字符串
-d 后面跟的是分隔符
-f 后面跟的是第几个区块
-c 后面跟的是第几个字符
[attach]11550[/attach]
[attach]11551[/attach]
获取根分区的使用率的数值:
df -hl |grep "/$" |awk '{print $4}' [color=Blue]|cut -d% -f 1[/color]
[attach]11552[/attach]
awk命令——提取字符串
备注:-F后面跟的是分隔符,但如果是以空格分隔的话,就不能使用 -F
[attach]11553[/attach]
提取根分区的总大小的数值:
df -hl |grep "/$" |awk '{print $1}' |awk -FG '{print $1}'
[attach]11554[/attach]
获取根分区的使用率的数值:
df -hl |grep "/$" |awk '{print $4}' |awk -F% '{print $1}'
[attach]11555[/attach]
重启服务器:
[root@localhost ~]# which init
/sbin/init
[root@localhost ~]# init 6
或者
[root@localhost ~]# /sbin/init 6
查看服务器开启了多长时间:(即多久没有重启)
[root@localhost ~]# uptime
08:28:25 up [color=Purple]3 min[/color], 1 user, load average: 0.00, 0.01, 0.00
关闭服务器:
[root@localhost ~]# which init
/sbin/init
[root@localhost ~]# init 0
或者
[root@localhost ~]# /sbin/init 0
相关文章:
[url=http://blog.zhuohua.store/viewthread.php?tid=334&extra=page%3D1]Zabbix监控Linux下的MariaDB[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=92&extra=page%3D1]使用Shell脚本监控本机的CPU、内存、分区的使用率[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=519&page=1&extra=#pid947]Zabbix调用Python3脚本监控Linux下的Oracle(二)[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=247&page=1&extra=#pid250]Linux常用命令(二)[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=209&page=1&extra=#pid210]最小化安装CentOS6[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=244&page=1&extra=#pid247]用户管理[/url]
[url=http://blog.zhuohua.store/viewthread.php?tid=288&page=1&extra=#pid291]日志文件[/url]
页:
[1]