专栏首页数据和云Oracle DBA必须学会的11个Linux基本命令

Oracle DBA必须学会的11个Linux基本命令

Linux系统庞大而复杂,经过总结,做为一名DBA,一些基本管理、网络管理、进阶应用、性能诊断、管道复杂应用、硬件相关传感命令都需要掌握,这篇文章,专门来讲做为一名DBA,必须学会的11个基本应用命令。

1. ls命令


Ls命令是Linux中最常用的命令,是list的缩写,缺省下ls命令是列出当前目录的清单,如果ls指定其他目录,就会显示指定目录里的文件及文件夹清单。

常用用法(常用参数):

(1) ls –l

以长格式(每行只显示一个文件或目录信息)列出文件及目录的详细信息,输出结果如下:

[oracle@ol6-single single]$ ls -l
total 14091544
-rw-r-----. 1 oracle oinstall 5368717312 Apr 10 10:50 sysaux02.dbf
-rw-r-----. 1 oracle oinstall 9061015552 Apr 10 08:05 users01.dbf

(2) ls –a

列出目录下的所有文件及目录,输出结果如下:

[oracle@ol6-single single]$ ls -a
. .. sysaux02.dbf users01.dbf

(3) ls –s

列出目录占用空间总大小,以及各个文件名称及其大小(单位为KB),输出结果如下:

[oracle@ol6-single single]$ ls -s
total 14091544
5242892 sysaux02.dbf 8848652 users01.dbf

(4) ls –lh

以长格式(每行只显示一个文件或目录信息),并且以直观形式显示文件及目录总大小,输出结果如下:

[oracle@ol6-single single]$ ls -lh
total 14G
-rw-r-----. 1 oracle oinstall 5.1G Apr 10 10:50 sysaux02.dbf
-rw-r-----. 1 oracle oinstall 8.5G Apr 10 08:05 users01.dbf

(5) ls –lrt

以长格式(每行只显示一个文件或目录信息),并用对文件及目录按照最时间进行排序,输出结果如下:

[oracle@ol6-single single]$ ls -lrt
total 14091544
-rw-r-----. 1 oracle oinstall 9061015552 Apr 10 08:05 users01.dbf
-rw-r-----. 1 oracle oinstall 5368717312 Apr 10 10:50 sysaux02.dbf

(6) ls –lrth

与“ls –lrt”相比,将文件大小以更直观的方式显示出来,输出结果如下:

[oracle@ol6-single single]$ ls -lrth
total 14G
-rw-r-----. 1 oracle oinstall 8.5G Apr 10 08:05 users01.dbf
-rw-r-----. 1 oracle oinstall 5.1G Apr 10 10:50 sysaux02.dbf

2. pwd命令


pwd命令是Print Working Directory的缩写,基本功能是打印当前的工作目录。

常用用法(常用参数):

(1) pwd

显示当前所处目录绝对路径,输出结果如下:

[oracle@ol6-single oradata]$ pwd
/u01/oradata

(2) pwd -p

显示当前所处目录的物理路径。因为有些目录是link后的结果,用-P可以显示link的源头路径,输出结果如下:

oracle@ol6-single oradata]$ cd /etc/init.d
[oracle@ol6-single init.d]$ pwd
/etc/init.d
[oracle@ol6-single init.d]$ pwd -P
/etc/rc.d/init.d

3. cd命令


cd命令是linux中最常用的命令之一,用于切换目录路径

常用用法(常用参数):

(1) cd

回到自己的HOME目录,输出结果如下:

[oracle@ol6-single init.d]$ pwd
/etc/init.d
[oracle@ol6-single init.d]$ cd
[oracle@ol6-single ~]$ pwd
/home/oracle

(2) cd –

返回进入此目录之前所在的目录,输出结果如下:

[oracle@ol6-single ~]$ pwd
/home/oracle
[oracle@ol6-single ~]$ cd /u01/oradata/single
[oracle@ol6-single single]$ pwd
/u01/oradata/single
[oracle@ol6-single single]$ cd -
/home/oracle
[oracle@ol6-single ~]$ pwd
/home/oracle

(3) cd ..

返回到上一级目录,输出结果如下:

[oracle@ol6-single ~]$ pwd
/home/oracle
[oracle@ol6-single ~]$ cd ..
[oracle@ol6-single home]$ pwd
/home

(4) cd ../..

返回上两级目录,输出结果如下:

[oracle@ol6-single single]$ pwd
/u01/oradata/single
[oracle@ol6-single single]$ cd ../..
[oracle@ol6-single u01]$ pwd
/u01

(5) cd /u01

切换到指定的目录路径,输出结果如下:

[oracle@ol6-single /]$ cd /u01
[oracle@ol6-single u01]$ pwd
/u01

4. grep命令


grep 是global search regular expression(RE)的缩写,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

(1) grep命令用法:

grep [OPTIONS] PATTERN [FILE...]
grep [OPTIONS] [-e PATTERN | -f FILE] [FILE...]

(2) 常用的参数(OPTIONS)

-a :将 binary 文件以 text 文件的方式搜寻数据 -c :计算找到 '搜寻字符串' 的次数 -i :忽略大小写的不同,所以大小写视为相同 -n :顺便输出行号 -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行 -s:不显示不存在或无匹配文本的所有行 --color:将找到的关键词部分加上颜色显示(值有:never、always、auto三种)

(3) 常用的正则表达式(PATTERN)

\:忽略正则表达式中特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \<:从匹配正则表达 式的行开始。 \>:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 。:所有的单个字符。 * :有字符,长度可以为0。

(4) 简单使用实例

常用用法或常用参数:

将包含passwd字符的文件及其所在行显示出来:

[oracle@ol6-single admin]$ grep -n passwd *
catexp7.sql:170: (name, userid, passwd, defrole, datats, tempts, profile#,
catzxs.sql:364: tmp := DBMS_XDB.CreateResource('/sys/xs/roles/dbms_passwd.xml',XSAUTHXSD);
csminst.sql:25:rem ywu 02/19/04 - fix bug 3434808, delete hard code passwd.

将包含0-9数字的行取出来:

[oracle@ol6-single admin]$ grep -n '[0-9]' xsu111.sql
2:Rem $Header: rdbms/admin/xsu111.sql /main/13 2010/06/06 21:49:30 snadhika Exp $
4:Rem xsu111.sql
6:Rem Copyright (c) 2007, 2010, Oracle and/or its affiliates.

5. cat


cat是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat后面直接接文件名。

常用用法(参数):

(1)cat /文件名

最简单的cat用法,原原本本的打印出整个文件的全部内容

(3) cat –b /文件名

打印出整个文件的内容,并且对非空白行进行编号,行号从1开始,输出结果如下所示:

[oracle@ol6-single admin]$ cat -b xsu111.sql |more
1 Rem
2 Rem $Header: rdbms/admin/xsu111.sql /main/13 2010/06/06 21:49:30 snadhika Exp $
3 Rem
4 Rem xsu111.sql
5 Rem
……

6. more


类似 cat 命令,不过会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空格键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似)

[oracle@ol6-single admin]$ more test.txt

7. echo


Echo命令是在屏幕上显示字符或变量的值。

常用用法:

(1)输出字符串

将要输出的字符串,用双引号引起来,输出结果如下所示:

oracle@ol6-single admin]$ echo "please wait 2 minute"
please wait 2 minute

(2)输出变量值

输出$ORACLE_HOME环境变量的值,输出结果如下所示:

[oracle@ol6-single admin]$ echo $ORACLE_HOME
/dba/oracle/product/11.2.0/db_1

8. hostname


显示和设置当前主机系统的名称,只有具有ROOT权限的用户才能设置主机名。

常用用法:

(1) 显示主机名:

[oracle@ol6-single admin]$ hostname
ol6-single

(2) 解析主机名所对应的IP地址:

前提是/etc/hosts中有编加主机名对应IP地址的信息,或DNS可以正常解析,输出结果如下:

[root@ol6-single ~]# hostname -i
192.168.2.150

(3) 临时设置主机名:

临时设置主机名,修改后,/etc/sysconfig/network文件中的HOSTNAME值仍然未改变,要想永久修改主机名,还需要修改/etc/sysconfig/network文件中hostname的值,使用方法如下:

[root@ol6-single ~]# hostname lijunjie
[root@ol6-single ~]# hostname
lijunjie

9. touch


Touch命令用于修访问和更改文件的时间到当前时间或指定时间,或者新建一个不存在的文件

常用用法:

(1)touch 文件名

用于创建一个新文件,如果文件名已经存在,则修改文件的修改时间为当前系统时间

[oracle@ol6-single admin]$ ls -l test.txt
-rw-r--r--. 1 oracle oinstall 31 Apr 11 05:18 test.txt
[oracle@ol6-single admin]$ date
Sat Apr 11 05:20:01 CST 2015
[oracle@ol6-single admin]$ touch test.txt
[oracle@ol6-single admin]$ ls -l test.txt
-rw-r--r--. 1 oracle oinstall 31 Apr 11 05:20 test.txt

(2)touch –r 源文件名 目标文件名

将源文件的时间,更新到目标文件上,使两个文件的时间相同

[oracle@ol6-single admin]$ ls -l
-rw-r--r--. 1 oracle oinstall 363 Sep 10 2014 listener.ora
-rw-r--r--. 1 oracle oinstall 31 Apr 11 05:20 test.txt
[oracle@ol6-single admin]$ touch -r listener.ora test.txt
[oracle@ol6-single admin]$ ls -lrt
-rw-r--r--. 1 oracle oinstall 31 Sep 10 2014 test.txt
-rw-r--r--. 1 oracle oinstall 363 Sep 10 2014 listener.ora

(4) touch –t yyyymmddhhmi.ss

将文件的时间修改成指定的年、月、日、小时、分.秒

[oracle@ol6-single admin]$ ls -l test.txt
-rw-r--r--. 1 oracle oinstall 31 Sep 10 2014 test.txt
[oracle@ol6-single admin]$ touch -t 201101012050.50 test.txt
[oracle@ol6-single admin]$ ls -l test.txt
-rw-r--r--. 1 oracle oinstall 31 Jan 1 2011 test.txt

10. df


Df命令用于显示文件系统与目录的详细信息。

常用用法:

(1) df –a

列出所有的文件系统与挂载点,输出结果如下:

[oracle@ol6-single admin]$ df -a
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 10321208 3403240 6393680 35% /
proc 0 0 0 - /proc
sysfs 0 0 0 - /sys
devpts 0 0 0 - /dev/pts
tmpfs 507124 0 507124 0% /dev/shm
/dev/sda1 198337 50193 137904 27% /boot
/dev/sda2 39015880 27626000 9407928 75% /dba
none 0 0 0 - /proc/sys/fs/binfmt_misc
sunrpc 0 0 0 - /var/lib/nfs/rpc_pipefs
/dev/sdb1 51605436 15703408 33280624 33% /u01

(2)df -h

列出已有使用的文件系统与挂载点与便于识别的大小信息,便于识别的大小信息为K、M、G格式,输出结果如下所示;

[oracle@ol6-single admin]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 9.9G 3.3G 6.1G 35% /
tmpfs 496M 0 496M 0% /dev/shm
/dev/sda1 194M 50M 135M 27% /boot
/dev/sda2 38G 27G 9.0G 75% /dba
/dev/sdb1 50G 15G 32G 33% /u01

11. vim|vi 例似Windows上的记事本,用于编辑文件中的内容或新建一个新文件。

本文分享自微信公众号 - 数据和云(OraNews),作者:lijunjie

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-05-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 循序渐进Oracle:数据库的字符集和字符集文件

    导读:本文来自『墨天轮』专栏“循序渐进Oralcle”(https://www.modb.pro/topic/6289,复制到浏览器中打开或者点击“阅读原文”)...

    数据和云
  • 返璞归真:获取Oracle初始化参数设定的N种方法

    ? 杨廷琨(yangtingkun) 云和恩墨 CTO 高级咨询顾问,Oracle ACE 总监,ITPUB Oracle 数据库管理版版主 参数文件是Or...

    数据和云
  • 岁末警示:当你手抖删了线上数据库..

    作者简介: ? 一乐,aka 梁宇鹏 现任环信首席架构师兼IM技术总监,负责即时通讯云平台的整体研发和管理。曾任新浪微博通讯技术专家,负责微博通讯系统的设计与研...

    数据和云
  • 神经网络架构搜索——可微分搜索(Fair-DARTS)​

    在超网络训练架构参数过程中,两个节点之间是八个操作同时作用的, skip connections 作为操作的其中一员,相较于其他的操作来讲是起到了跳跃连接的作用...

    AI异构
  • 机器学习知识点

    线性回归的样本的输出,都是连续值,$ y\in (-\infty ,+\infty ),而逻辑回归中,而逻辑回归中,而逻辑回归中y\in (0,1)$,只能取0...

    大黄大黄大黄
  • 【强化学习篇】--强化学习从初识到应用

    强化学习是学习一个最优策略(policy),可以让本体(agent)在特定环境(environment)中,根据当前的状态(state),做出行动(action...

    LhWorld哥陪你聊算法
  • python 转换彩图为黑白图 ,去噪

    py3study
  • SVM中拉格朗日乘子法和KKT条件(醍醐灌顶)

    前言:在svm模型中,要用到拉格朗日乘子法,对偶条件和KKT条件,偶然看到相关的专业解释,忍不住想总结收藏起来,很透彻,醍醐灌顶。

    用户5745385
  • MySQL字符集中文乱码剖析

    MySQL创建数据表时,分别采用gbk、utf8、latin1的编码方式,当不同编码方式存储相同字符时,是否会显示乱码呢?本文通过案例描述,探讨数据库中的字符串...

    serena
  • 玩转CVM之测试外网带宽

    在云上的环境中,一般CVM都是通过多线BGP接入网络,用户在实际使用的过程中,会遇到外网带宽不符合预期的情况。正常情况来说只要终端运营商是国内过着国外主流的运营...

    苏欣

扫码关注云+社区

领取腾讯云代金券