(1)

poweroff命令

<用来关闭计算机操作系统并且切断系统电源>;

(2)

shutdown命令

<用来系统关机命令。shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作。>

-r<重新启动时不执行fsck;>

-h<将系统关机;>

(3)

reboot命令

<用来重新启动正在运行的Linux操作系统。>

(4)

halt命令

<用来关闭正在运行的Linux操作系统。halt命令会先检测系统的runlevel,若runlevel为0或6,则关闭系统,否则即调用shutdown来关闭系统。>

(5)

who命令

<是显示目前登录系统的用户信息。执行who命令可得知目前有那些用户登入系统,单独执行who命令会列出登入帐号,使用的终端机,登入时间以及从何处登入或正在使用哪个X显示器。>

(6)whoami命令

<用于打印当前有效的用户名称,相当于执行id -un命令。>

(7)

pwd命令

<以绝对路径的方式显示用户当前工作目录。命令将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用/分隔。第一个/表示根目录,最后一个目录是当前目录。执行pwd命令可立刻得知您目前所在的工作目录的绝对路径名称>

 (8)

ls命令

<用来显示目标列表,在Linux中是使用率较高的命令。ls命令的输出信息可以进行彩色加亮显示,以分区不同类型的文件。>

-a
<显示所有档案及目录(ls内定将档案名或目录名称为“.”的视为影藏,不会列出)>
-A
<显示除影藏文件“.”和“..”以外的所有文件列表>
-C 
<多列显示输出结果。这是默认选项> -l
<与“-C”选项功能相反,所有输出信息用单列格式输出,不输出为多列>
(9)
clear命令
<
用于清除当前屏幕终端上的任何信息。>
(10)
cd命令
<用来切换工作目录至目录名。 其中目录名表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的根目录(也就是刚进入系统时所在的目录)。另外,~也表示为根目录的意思,.则是表示目前所在的目录,..则表示目前目录位置的上一层目录。>
cd    进入用户主目录;
cd ~  进入用户主目录;
cd -  返回进入此目录之前所在的目录;
cd ..  返回上级目录(若当前目录为“/“,则执行完后还在“/";".."为上级目录的意思);
cd ../..  返回上两级目录;
cd !$  把上个命令的参数作为cd参数使用。
(11)
su命令
<
用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。>
(12)
man命令
<
是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息。>
(13)
help命令
<
用于显示shell内部命令的帮助信息。help命令只能显示shell内部的命令帮助信息。而对于外部命令的帮助信息只能使用man或者info命令查看。>
(14)
date命令
<是显示或设置系统时间与日期>
!!!
<很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。>
-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
(15)

cal命令
<
用于显示当前日历,或者指定日期的日历。>

-l

<显示单月输出>

-3
<显示临近三个月的日历> -s
<将星期日作为月的第一天> -m
<将星期一作为月的第一天>
(16)

whatis命令

<是用于查询一个命令执行什么功能,并将查询结果打印到终端上; whatis命令在用catman -w命令创建的数据库中查找command参数指定的命令、系统调用、库函数或特殊文件名。whatis命令显示手册部分的页眉行。然后可以发出man命令以获取附加的信息。whatis命令等同于使用man -f命令。>

(17)
whereis命令
<
用来定位指令的二进制程序、源代码文件和man手册页等相关文件的路径。>
!!!
<whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。>
(18)
alias命令
<
用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时,用户必须使用单引号''将原来的命令引起来,防止特殊字符导致错误。>
!!!
<alias命令的作用只局限于该次登入的操作。若要每次登入都能够使用这些命令别名,则可将相应的alias命令存放到bash的初始化文件/etc/bashrc中。>
(19)
unalias命令
<用来取消命令别名,是为shell内建命令。如果需要取消任意一个命令别名,则使用该命令别名作为指令的参数选项即可。如果使用-a选项,则表示取消所有已经存在的命令别名。>
(20)
mkdir命令
<
用来创建目录。该命令创建由dirname命名的目录。如果在目录名的前面没有加任何路径名,则在当前目录下创建由dirname指定的目录;如果给出了一个已经存在的路径,将会在该目录下创建一个指定的目录。在创建目录时,应保证新建的目录与它所在目录下的文件没有重名。 >
!!!
<在创建文件时,不要把所有的文件都存放在主目录中,可以创建子目录,通过它们来更有效地组织文件。最好采用前后一致的命名方式来区分文件和目录。例如,目录名可以以大写字母开头,这样,在目录列表中目录名就出现在前面。>
(21)rmdir命令

<
用来删除空目录。当目录不再被使用时,或者磁盘空间已到达使用限定值,就需要删除失去使用价值的目录。利用rmdir命令可以从一个目录中删除一个或多个空的子目录。该命令从一个目录中删除一个或多个子目录,其中dirname佬表示目录名。如果dirname中没有指定路径,则删除当前目录下由dirname指定的目录;如dirname中包含路径,则删除指定位置的目录。删除目录时,必须具有对其父目录的写权限。>
!!!
<子目录被删除之前应该是空目录。就是说,该目录中的所有文件必须用rm命令全部,另外,当前工作目录必须在被删除目录之上,不能是被删除目录本身,也不能是被删除目录的子目录。>
(22)
cp命令
<
用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。>
-d
<当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录> -f
<强行复制文件或目录,不论目标文件或目录是否已存在> -i
<覆盖既有文件之前先询问用户>
(23)
mv命令
<
用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中。source表示源文件或目录,target表示目标文件或目录。如果将一个文件移到一个已经存在的目标文件中,则目标文件的内容将被覆盖。>
-b
<当文件存在时,覆盖前,为其创建一个备份> -f
<若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录> -i
<交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖>
(24)

du命令

<也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。>
-a或-all 显示目录中个别文件的大小。
-b或-bytes 显示目录或文件大小时,以byte为单位。
-c或--total 除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。
-k或--kilobytes 以KB(1024bytes)为单位输出。
-m或--megabytes 以MB为单位输出。
(25)
touch命令
<有两个功能:一是用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;二是用来创建新的空文件。>
(26)
cat命令
<连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。>
n或-number:有1开始对所有输出的行数编号;
-b或--number-nonblank:和-n相似,只不过对于空白行不编号;


!!!

<当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。>

(27)

tac命令

<用于将文件已行为单位的反序输出,即第一行最后显示,最后一行先显示。>

-a或——append:将内容追加到文件的末尾;
-i或——ignore-interrupts:忽略中断信号。
(28)

more命令

<是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。>

  • 按Space键:显示文本的下一屏内容。
  • 按Enier键:只显示文本的下一行内容。
  • 按斜线符|:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。
  • 按H键:显示帮助屏,该屏上有相关的帮助信息。
  • 按B键:显示上一屏内容。
  • 按Q键:退出rnore命令。
 (29)
ess命令
<的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。>
(30)
head命令
<用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容。>
-n<数字>:指定显示头部内容的行数;
-c<字符数>:指定显示头部内容的字符数;
(31)

tail命令
<用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。>
-n<N>或——line=<N>:输出文件的尾部N(N位数字)行内容。
!!!!
<如果表示字节或行数的N值之前有一个”+”号,则从文件开头的第N项开始显示,而不是显示文件的最后N项。N值后面可以有后缀:b表示512,k表示1024,m表示1 048576(1M)。>
(32)
cut命令
<用来显示行中的指定部分,删除文件中指定字段。cut经常用来显示文件的内容,类似于下的type命令。>
(33)
sort命令
<是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。sort命令既可以从特定的文件,也可以从stdin中获取输入。>
-c:检查文件是否已经按照顺序排序;
-d:排序时,处理英文字母、数字及空格字符外,忽略其他的字符;
-f:排序时,将小写字母视为大写字母;
-i:排序时,除了040至176之间的ASCII字符外,忽略其他的字符;
(34)
uniq命令
<用于报告或忽略文件中的重复行,一般与sort命令结合使用。>
-c或——count:在每列旁边显示该行重复出现的次数;
-d或--repeated:仅显示重复出现的行列;
(35)
wc命令
<用来计算数字。利用wc指令我们可以计算文件的Byte数、字数或是列数,若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据。>
-c或--bytes或——chars:只显示Bytes数;
-l或——lines:只显示列数;
-w或——words:只显示字数。
(36)

ocate命令slocate命令都用来查找文件或目录。

<locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。>

-d<目录>或--database=<目录>:指定数据库所在的目录;
(37)
find命令
<用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。>
(38)
grep命令
<全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。>
(39)
dd命令
<用于复制文件并对原文件的内容进行转换和格式化处理。dd命令功能很强大的,对于一些比较底层的问题,使用dd命令往往可以得到出人意料的效果。用的比较多的还是用dd来备份裸设备。但是不推荐,如果需要备份oracle裸设备,可以使用rman备份,或使用第三方软件备份,使用dd的话,管理起来不太方便。>
(40)
file命令
<用来探测给定文件的类型。file命令对文件的检查分为文件系统、魔法幻数检查和语言检查3个过程。>
(41)
ln命令
<
用来为文件创件连接,连接类型分为硬连接和符号连接两种,默认的连接类型是硬连接。如果要创建符号连接必须使用"-s"选项。>
-b或--backup:删除,覆盖目标文件之前的备份;
-d或-F或——directory:建立目录的硬连接;
-f或——force:强行建立文件或目录的连接,不论文件或目录是否存在;
-i或——interactive:覆盖既有文件之前先询问用户;
(42)

vi 的两种模式

1、命令模式 vi 的默认进入状态(不可以输入字符,但可以对字符进行操作,复制,移动、删除等操作)

2、输入模式 输入字符状态(只可以输入和使用 del 和退格 backspace 键删除文字)

 

vi 的启动和退出

vi file 编辑 file 文件

vi /tmp/file1 编辑指定目录/tem 下的 file1 文件

:w 保存修改

:q 退出 vi

:wq 保存并退出

:q! 强行退出 vi,不保存修改

 

 

vi 命令模式下的操作

:set nu 设置行号

:set nonu 取消设置行号

删除字符

x 键或 del 键

7x 删掉光标后面的 7 个字符

dw 删除一个词(剪切)

dd 删除行(剪切)

4dd 删除 4 行(剪切)

复制操作

yw 复制一个词

yy 复制光标所在的行

4yy 复制光标所在行的下面 4 行

 

粘贴操作

p 粘贴在光标所在的下一行(如果粘贴词的话,粘贴在光标字符的后面)

撤销操作

u 撤销,可以撤销到最近的一次保存的状态

:e! 恢复到文档的初始状态

光标快速定位

G 光标到达行末

7G 快速找到第 7 行

/adm 简单搜索,快速定位光标到光标后的第一个 adm 单词的位置,当到行末没有的话,返回从头开始

查找(类似于 word 的查找)

技巧

让行号永久生效

进入该用户的家目录,在目录下创建 1 个文件,“.vimrc”

内容 :set nu

替换内容

:7,12 s/:/? 把第 7-12 行中每一行的第一个:改成?

:7,12 s/:/?/g 把第 7-12 行中的:全部改成?

2.2.4 进入和退出输入模式

i 在光标之前输入文字

ESC 退出

a 在光标之后输入文字

A 在行尾插入文字

o 光标下面插入 1 行空行

O 在光标上面插入 1 行空行

(43)

2. 启动Vim

  • vim -c cmd file: 在打开文件前,先执行指定的命令;
  • vim -r file: 恢复上次异常退出的文件;
  • vim -R file: 以只读的方式打开文件,但可以强制保存;
  • vim -M file: 以只读的方式打开文件,不可以强制保存;
  • vim -y num file: 将编辑窗口的大小设为num行;
  • vim + file: 从文件的末尾开始;
  • vim +num file: 从第num行开始;
  • vim +/string file: 打开file,并将光标停留在第一个找到的string上。
  • vim --remote file: 用已有的vim进程打开指定的文件。 如果你不想启用多个vim会话,这个很有用。但要注意, 如果你用vim,会寻找名叫VIM的服务器;如果你已经有一个gvim在运行了, 你可以用gvim --remote file在已有的gvim中打开文件。

 

3. 文档操作

  • :e file --关闭当前编辑的文件,并开启新的文件。 如果对当前文件的修改未保存,vi会警告。
  • :e! file --放弃对当前文件的修改,编辑新的文件。
  • :e+file -- 开始新的文件,并从文件尾开始编辑。
  • :e+n file -- 开始新的文件,并从第n行开始编辑。
  • :enew --编译一个未命名的新文档。(CTRL-W n)
  • :e -- 重新加载当前文档。
  • :e! -- 重新加载当前文档,并丢弃已做的改动。
  • :e#或ctrl+^ -- 回到刚才编辑的文件,很实用。
  • :f或ctrl+g -- 显示文档名,是否修改,和光标位置。
  • :f filename -- 改变编辑的文件名,这时再保存相当于另存为。
  • gf -- 打开以光标所在字符串为文件名的文件。
  • :w -- 保存修改。
  • :n1,n2w filename -- 选择性保存从某n1行到另n2行的内容。
  • :wq -- 保存并退出。
  • ZZ -- 保存并退出。
  • :x -- 保存并退出。
  • :q[uit] ——退出当前窗口。(CTRL-W q或CTRL-W CTRL-Q)
  • :saveas newfilename -- 另存为
  • :browse e -- 会打开一个文件浏览器让你选择要编辑的文件。 如果是终端中,则会打开netrw的文件浏览窗口; 如果是gvim,则会打开一个图形界面的浏览窗口。 实际上:browse后可以跟任何编辑文档的命令,如sp等。 用browse打开的起始目录可以由browsedir来设置:
    • :set browsedir=last -- 用上次访问过的目录(默认);
    • :set browsedir=buffer -- 用当前文件所在目录;
    • :set browsedir=current -- 用当前工作目录;
(44)
stat命令可以接受一个或多个输入文件名,并包含许多控制命令行为和输出的选项。