************文件和目录*****************
pwd
查看自己所在位置
pwd -p /*显示链接到的真实路径*/
ls
列出目录及文件的属性信息
ls -a /*列出所有文件和子目录,包括隐藏文件和目录*/
ls -A /*列出所有文件和目录,但不包括隐藏文件和目录*/
ls -d /*知县是目录本深的属性信息*/
ls -l /*以长格式显示文件和目录的详细信息*/
ls -i /*先是文件的i节点编号*/
ls -h /*显示信息是更人性化容量的大小,如KB,MB,GB等*/
ls -R /*递归显示制定目录下的各级目录及文件*/
ll -h:列表显示目录下的文件,并且显示文件大小.
cat
用于显示指定文件的内容
cat -n /*显示文件内容是在每一行行首添加行号*/
cat -b /*显示文件内容是为非空白添加行号*/
tail
一直跟踪显示文件变化(查看文件末尾指定行数的内容)
tail -N /*N为用户指定的行数*/
tail -f /*跟踪文件中新增加的内容*/
head
用来显示文件开头n行
head -N /*N为用户指定的行数*/
more
分页显示文件内容 (通过空格向下翻页,通过回车一行一行滚动)
more -N /*N为每屏指定的行数*/
less
分页显示文件内容(和more一样。more只能向下翻页,less可以向上翻页。可以通过上下箭头进行上下一行行滚动,也可以通过page up/空格命令向上/向下进行一屏一屏滚动.ctrl+b,用关键字查询按‘n’键可以跳转到下一个关键字)
less 在查看之前不会加载整个文件。可以尝试使用 less 和 vi 打开一个很大的文件,你就会看到它们之间在速度上的区别。
在 less 中导航命令类似于 vi。本文中将介绍一些导航命令以及使用 less 的其它一些技巧。
1 搜索
当使用命令 less file-name 打开一个文件后,可以使用下面的方式在文件中搜索。搜索时整个文本中匹配的部分会被高亮显示。
向前搜索
/ - 使用一个模式进行搜索,并定位到下一个匹配的文本
n - 向前查找下一个匹配的文本
N - 向后查找前一个匹配的文本
向后搜索
? - 使用模式进行搜索,并定位到前一个匹配的文本
n - 向后查找下一个匹配的文本
N - 向前查找前一个匹配的文本
2 全屏导航
ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏
3 单行导航
j - 向前移动一行
k - 向后移动一行
4 其它导航
G - 移动到最后一行
g - 移动到第一行
q / ZZ - 退出 less 命令
5 其它有用的命令
v - 使用配置的编辑器编辑当前文件
h - 显示 less 的帮助文档
&pattern - 仅显示匹配模式的行,而不是整个文件
Vi有三种基本的工作模式:指令行模式、文本输入模式、行末模式。他们的相互关系如所示。
指令模式(Command Mode) 下输入 a、i、o进入文本输入模式(Input Mode)
文本输入模式(Input Mode) 下按ESC进入指令模式(Command Mode)
指令模式(Command Mode)下输入:进入末行模式(Last line Mode)
末行模式(Last line Mode)下指令错误则返回指令模式(Command Mode)
下面分别介绍这三种模式
1、指令模式(Command Mode)
指令模式主要使用方向键移动光标位置进行文字的编辑,下面列出了常用的操作命令及含义。
0 -----光标移动至行首
h -----光标左移一格
l -----光标右移一格
j -----光标下移一行
k -----光标上移一行
$+A-----将光标移动到该行最后
PageDn ----- 向下移动一页
PageUp ----- 向上移动一页
d+方向键 -----删除文字
dd -----删除整行
pp -----整行复制
r -----修改光标所在的字符
S -----删除光标所在的列,并进入输入模式
2、文本输入模式(Input Mode)
在指令模式下(Command Mode)按a/A键、i/I键、o/O键进入文本模式,文本输入模式的命令及其含义如下所示。
a -----在光标后开始插入
A -----在行尾开始插入
i -----从光标所在位置前面开始插入
I -----从光标所在列的第一个非空白字元前面开始插入
o -----在光标所在列下新增一列并进入输入模式
O -----在光标所在列上方新增一列并进入输入模式
ESC -----返回命令行模式
3、末行模式(Last line Mode)
末行模式主要进行一些文字编辑辅助功能,比如字串搜索、替代、保存文件等操作。主要命令如下
:q -----结束Vi程序,如果文件有过修改,先保存文件
:q! -----强制退出Vi程序
:wq -----保存修改并退出程序
:set nu -----设置行号
需要注意的是,以上指令都是在英文输入模式下才有效,在linux 终端下有时我们用的是中文输入模式,输入中文的“:”就不能转换模式了。
grep
在文件中查找并显示包含指定字符串的行,查找字符串可使用正则表达式匹配
grep -i /*查找内容是忽略大小写*/
grep -v /*反转查找,技术处于查找条件不相符的行*/
[root@www ~]# grep [-acinv] [--color=auto] '搜寻字符串' filename 选项与参数:-a :将 binary 文件以 text 文件的方式搜寻数据-c :计算找到 '搜寻字符串' 的次数-i :忽略大小写的不同,所以大小写视为相同-n :顺便输出行号-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!--color=auto :可以将找到的关键词部分加上颜色的显示喔! tail -fn 2000 server.out |grep -i --color=auto 1010002508 less server.out |grep -E '2014-02-20 13:5[0-4]|2014-02-20 14:[00-10]'|grep 'sql' --color=auto
find
在子目录中搜索匹配的文件
find -name /*按文件名称查找,可以只用通配符*/
find -size /*按万大小查找,可以使用K,M等容量单位*/
find -type /*按文件类型查找,类型f,d,l,b,c分别表示普通文件,目录,链接文件,块设备文件,字符设备文件*/
cd
更改工作目录,不带任何选项或参数时,默认切换到用户宿主目录
cd -p /*如果指定的目录为符号链接,则切换到对应的物理路径*/
whereis
查找文件
locate
定位文件
mkdir
创建新目录
mkdir -p /*递归创建多级目录*/
touch
更新文件的时间标记,如文件不存在则建立对应的空文件
cp
复制文件或目录,复制源是目录或多个文件,目标必须是目录
cp -f /*直接强制复制不进行提醒*/
cp -i /*复制时进行提醒确认*/
cp -l /*为源文件建立硬链接,而不是直接复制磁盘数据块*/
cp -p /*复制时保持原文件权限,宿主及时间*/
cp -r /*复制目录时,递归复制所有文件及子目录*/
mv
移动文件或目录,可以在移动时改名。移动多个文件或目录时,目标必须是目录
mv -f /*直接强制移动不进行提醒*/
mv -i /*移动时进行提醒确认*/
rm
删除文件或目录
mv -f /*直接强制删除而不进行提醒*/
mv -i /*删除是时进行提醒确认*/
mv -r /*递归删除所有文件及目录*/
*******************压缩和解压*************
tar
linux传播的文件基本是压缩文件tgz,tar.gz
-c(生成)
-f(文件)
-v(verbose)
-z(压缩)
-t(测试)
-x(展开)
#tar cz(v)f mydir.tar.gz mydir
#tar xz(v)f mydir.tar.gz mydir
--使用示例:
tar -tvzf 20140221130101.log.tgz --查看该压缩包下是否有文件
tar xfv 20140221130101.log.tgz --解压到当前文件夹下
******************vi******************
linux/unix下的配置文件都是文本文件
vi是使用最广泛的编辑器
vi分为三种工作模式
-一般模式
-编辑模式
-命令模式
vi常用命令
w q wq wq!
****************远程管理****************
telnet/ssh
ssh使用:
# ssh user1@192.168.0.1 输入密码
scp
secure copy (remote file copy program) 也是一个基于SSH安全协议的文件传输命令。与sftp不同的是,它只提供主机间的文件传输功能,没有文件管理的功能。
复制local_file 到远程目录remote_folder下
scp local_file remote_user@host:remote_folder
复制local_folder 到远程remote_folder(需要加参数 -r 递归)
scp –r local_folder remote_user@host:remote_folder
以上命令反过来写就是远程复制到本地
[weblogic@test testdomain]$ scp bbb.txtweblogic@10.10.236.59:/weblogic/wls1036/user_projects/domains/mydomain
sz/rz
sz/rz 是基于ZModem传输协议的命令。对传输的数据会进行核查,并且有很好的传输性能。使用起来更是非常方便,但前提是window端需要有能够支持ZModem的telnet或者SSH客户端,例如secureCRT。
首先需要在secureCRT中可以配置相关的本地下载和上传目录,然后用rz、sz命令即可方便的传输文件数据。
下载数据到本地下载目录:sz filename1 filename2 …
上传数据到远程:执行rz –be 命令,客户端会弹出上传窗口,用户自行选择(可多选)要上传的文件即可。
************系统相关***********************
ps
以静态快照方式输出当前运行的进程的状态统计数据
格式:ps [选项]
ps a /*显示当前终端下的所有进程信息,包括其他用户信息*/
ps u /*使用以用户为主的格式输出进程信息*/
ps x /*显示当前用户在所有终端下的进程信息*/
ps -e /*显示系统内所有进程信息*/
ps -l /*使用长格式显示进程信息*/
ps -f /*使用完整格式显示进程信息*/
top 动态显示当前运行的进程信息
对于多个或者多核的CPU,top显示的是多个CPU所占用的百分比总和,进入top视图后按1可以按核来显示消耗情况。
us表示用户进程占用百分比,sy表示内核线程(系统线程)处理所占百分比,ni表示nice命令改变优先级的任务所占的百分比,id表示CPU空闲时所占的百分比,wa表示为在执行过程中等待IO所占的百分比,hi表示为硬件中断所占的百分比,si表示为软件中断所占的百分比.
在top视图中按shift+h可以按线程查看CPU的消耗情况。默认情况top视图显示的为进程的CPU消耗情况.
格式:top [-d] 时间
top -d /*指定动态信息的刷新间隔时间,单位为秒。也可以使用ss.tt格式*/
pidstat:
pidstat是sysstat中的工具如需要使用pidstat必须先安装sysstat工具。
如:pidstat 1 2
pidstat -p[PID] -t 1 5
vmstat:
pstree
以树型结构查看系统中的进程及其相互关系(进程数)
格式:pstree [-aup]
pstree -a /*显示进程对应的命令行*/
pstree -u /*显示进程对应的用户名信息*/
pstree -p /*显示进程对应的进程号信息*/
kill
终止指定进程号的进程,PID可以通过ps命令获得
格式:kill [-9] <PID号>
KILL -9 /*无条件强行终止进程*/
killall
与kill命令相似
格式:killall [-9] <进程名>
free
查看系统内存,交互空间的使用情况
格式:free [-bkm]
free -b /*以Byte为单位显示信息*/
free -k /*以Kb为单位显示信息*/
free -m /*以Mb为单位显示信息*/
**************************环境相关*********************
echo
显示指定的字符串或变量的内容,不指定任何参数时将显示一个空行
read
从标准输入读入一个字符串并赋值给指定的变量
read -p /*在接受输入内容前显示提示字符串的内容,以增强交互性*/
export
将局部变量导出为全局变量或取消设置,允许在命令中直接为变量赋值
export -p /*查看当前命令环境中导出的全局变量
export -n /*取消全局变量的全局属性*/
exit
退出当前shell程序或命令环境,并返回一个退出状态的数字(0为正常,1为异常
********************************按名称查询文件******************************************
[root@emed4test /]# find / -name install.log
#####################查看当前线程################################
[root@jyyy ~]# ps -aux
5、查看进程情况
[root@localhost /]# ps -ef|grep rpc
********************************显示某一进程实时耗用的资源************************************************
top -p processId 显示某一进程实时耗用的资源
********************************显示包含该字符串的文件路径******************************************
[root@emed4test /]# locate install.html.
**********************************linux快捷键***************************
-----------------------------------------------------------
1、将光标移到行首 Ctrl + a
2、将光标移到行尾 Ctrl + e
3、擦除光标前的整行 Ctrl + u
4、擦除光标后的整行 Ctrl + k
5、删除光标前的一个词 Ctrl + w (以空格分隔)
6、清屏 Ctrl + l
7、杀掉当前进程 ctrl + c
8、重起 Ctrl + Alt + Del
*****************************************用vi修改文件**************************************
先启动shell: bash
vi filename
切换模式 i/esc (修改模式显示insert,命令模式无显示)
输入命令冒号加行号数字 :1 即跳到第一行
跳到文件尾ctrl g
找某个关键字用 /关键字 按n向下找
输入:wq 保存修改并退出
apache的配置文件在conf/httpd.conf 通常修改影响压力测试的最大和最小进程数
***********************用户和组管*******************
useradd
添加系统用户
格式:useradd [选项] <用户名>
useradd -d /*制定用户的宿主目录*/
useradd -e /*指定用户的账号失效时间,可使用YYYY-MM-DD的日期格式*/
useradd -g /*指定用户的基本组名,也可以使用GID*/
useradd -G /*指定用户的公共组名,也可以使用GID*/
useradd -M /*不为用户建立并初始化宿主目录*/
useradd -s /*指定用户的登陆shell环境*/
useradd -u /*指定用户的UID号*/
passwd
设置系统用户密码,及锁定解锁用户帐户,若为指定用户,默认设置当前用户密码
格式:passwd [选项] <用户名>
passwd -d /*清空指定用户密码*/
passwd -l /*锁定指定用户账户*/
passwd -S /*查看指定用户状态*/
passwd -u /*解锁指定用户账户*/
usermod
修改指定用户帐户信息,大部分选项与useradd命令中的相同,不再赘余!可参考useradd选项设置
格式:usermod [选项] <用户名>
userdel
删除指定用户帐户
格式:userdel [-r] <用户名>
userdel -r /*删除用户后,也将该用户的宿主目录一并删除*/
groupadd
添加一个系统用户组
格式:groupadd [-g] <组名>
groupadd -g /*为新建的组指定GID组标记*/
groupdel
删除一个系统用户组
格式:groupdel <组名>
su
切换为另一个用户身份,不指定参数时默认切换到root用户
格是:su [-l] [目标用户名]
su -l /*使用目标用户的登陆shell环境,该选项可简写为"-"
id
输出指定用户的身份标记信息,省略用户名参数时则输出当前用户的信息
格式:id [选项] <用户名>
id -u /*只显示有效用户信息*/
id -g /*只显示有效组信息*/
id -n /*只输出用户名称*/
/*************************查看日志常用*************************/
1、more命令2、cat命令3:tac命令,倒序显示4、head命令,可以指定显示那些内容5、tali命令,可以指定显示那些内容6、less 与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页!
1、more 是我们最常用的工具之一,最常用的就是显示输出的内容,然后根据窗口的大小进行分页显示,然后还能提示文件的百分比;
# more /etc/profile
more 的语法、参数和命令;
more [参数选项] [文件]
参数如下:
+num 从第num行开始显示;
-num 定义屏幕大小,为num行;
+/pattern 从pattern 前两行开始显示;
-c 从顶部清屏然后显示;
-d 提示Press space to continue, ' q ' to quit.(按空 键继续,按q键退出),禁用响铃功能;
-l 忽略Ctrl+l (换页)字符;
-p 通过清除窗口而不是滚屏来对文件进行换页。和-c参数有点相似;
-s 把连续的多个空行显示为一行;
-u 把文件内容中的下划线去掉
退出more的动作指令是q
more 的参数应用举例;
# more -dc /etc/profile 注:显示提示,并从终端或控制台顶部显示;
# more + 4 /etc/profile 注:从profile的第4行开始显示;
# more - 4 /etc/profile 注:每屏显示4行;
# more +/MAIL /etc/profile 注:从profile中的第一个MAIL单词的前两行开始显示;
more 的动作指令;
我们查看一个内容较大的文件时,要用到more的动作指令,比如ctrl+f(或空格键)是向下显示一屏,ctrl+b是返回上一屏; Enter键可以向下滚动显示n行,要通过定,默认为1行;
我们只说几个常用的;自己尝试一下就知道了;
Enter 向下n行,需要定义,默认为1行;
Ctrl+f 向下滚动一屏;
空 键 向下滚动一屏;
Ctrl+b 返回上一屏;
= 输出当前行的行号;
:f 输出文件名和当前行的行号;
v 调用vi编辑器;
! 命令 调用Shell,并执行命令;
q 退出more
当我们查看某一文件时,想调用vi来编辑它,不要忘记了v动作指令,这是比较方便的;
其它命令通过管道和more结合的运用例子;
比如我们列一个目录下的文件,由于内容太多,我们应该学会用more来分页显示。这得和管道 | 结合起来,比如:
# ls -l /etc |more
2、cat命令
使用方式:cat [-AbeEnstTuv] [--help] [--version] fileName
说明:把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案)
参数:
-n 或 --number 由 1 开始对所有输出的行数编号
-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 --show-nonprinting
范例:
cat -n textfile1 > textfile2 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
cat -b textfile1 textfile2 >> textfile3 把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。
范例:
把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
cat -n textfile1 > textfile2
把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。
cat -b textfile1 textfile2 >> textfile3
cat /dev/ null > /etc/test.txt 此为清空/etc/test.txt档案内容
cat 也可以用来制作 image file。例如要制作软碟的 image file,将软碟放好后打
cat /dev/fd0 > OUTFILE
3:tac命令,倒序显示
tac: 从最后一行开始显示,可以看出 tac 是 cat 的反向显示!
4、head命令,可以指定显示那些内容
语法:
[root @test /root ]# head [-n number] [檔名]
参数说明:
-n :显示 number 行
说明:
head 的英文意思就是『头』啦,那么这个东东的用法自然就是显示出一个档案的前几行啰!没错!就是这样!若不加参数就默认输出前面十行内容,不信自己操作一下,也可以自定义输出的行数 那就加入『 head -n number filename 』即可!
比如我们显示/etc/profile的前10行内容,应该是:# head -n 10 /etc/profile
5、tali命令,可以指定显示那些内容
tail 是显示一个文件的内容的后多少行;
用法比较简单;
tail -n 行数值 文件名;
比如我们显示/etc/profile的最后5行内容,应该是:
# tail -n 5 /etc/profile
6、less 与 more 类似,但是比 more 更好的是,他可以[pg dn][pg up]翻页!
more ,less
其实这两个命令有极大的相似之处都是分页显示档案内容,但是区别也是有的,如下:
1)more:以百分比的形式分页显示,提示给用户已经显示了多少内容
less:没有百分比的提示
2)less更加灵活,可用通过【page down】【page up】上翻下翻页查看已经显示出的内容,而more不具备
3)对less显示出的内容中可以使用 / ' 字符 ' 输入需要查找的字符或者字符串并高亮显示,而more 不具备
3. nl
显示档案内容时输出行号,跟cat -n类似的功能,也是全盘输出
more & less 用 cat 的確可以顯示一個檔案的的內容﹐但如果檔案很長﹐超過一個熒幕怎麼辦﹖
您可以按著 Shift 鍵﹐再配合 PageUP 和 PageDown 鍵來回翻閱熒幕。但畢竟有限和不方便﹐您最好用 more 命令看一個檔案﹐這樣﹐結果只顯示一個熒幕的內容﹐然後您按 Enter 鍵的話﹐則往下捲動一行﹔如果按空白鍵的話﹐則往下捲動一個熒幕。同時﹐會在最底下告訴您目前所顯示的百分比。當檔案顯示到最後一行的時候﹐命令就結束。
不過﹐用 more 命令卻不能往上翻頁哦﹐如果您想要在顯示檔案的時候能夠上下來回翻頁﹐那就用 less 命令吧。這樣﹐您按 Enter 或向下方向鍵﹐則往下捲動一行﹔按空白鍵或 PageDown 則往下捲動一個熒幕﹔按向上方向鍵則往上捲動一行﹔按 PageUp 則往上捲動一個熒幕。但是﹐用 less 命令就算檔案顯示最後一行了﹐也不會自動結束﹐您得按 Q 鍵才能離開。
head & tail 好了﹐您用 more 或 less 可以逐頁翻開一個長檔案﹐但有時候您只想看檔案的前面數行﹐而不管後面的內容是什麼﹐那您可以用 head 這個命令。預設上﹐head 只會顯示一個檔案的前 10 行﹐但您可以用 -number 來指定顯示的行數﹕
head -20 /var/log/boot.log |
那就可以看到這個檔案的前 20 行內容。但反過來﹐您只想看這個檔案的最後 20 行呢﹖用 tail 命令就是了﹕
tail -20 /var/log/boot.log |
和 head 一樣﹐如果您不指定顯示行數﹐那麼 tail 也只顯示檔案的最後 10 行內容。不過﹐tail 還有一個很好用的參數﹐您可以用+number 來顯示第幾行起至檔案結尾的內容﹕
tail +2 /var/log/boot.log |
那麼﹐除了第一行之外﹐第 2 行後面的內容都會顯示出來。其實﹐可用的選項很多啦﹐請您自己慢慢發掘囉。
tac 仔細點看﹐這個命令 cat 是調過來寫的﹐那麼它執行結果是否也調過來呢﹖猜對了﹗用 cat 命令可以顯示一個檔案內容﹐而且按每一行的排列順序的先後顯示。而這個 tac 呢﹐也是顯示檔案內容﹐但每一行的排列順序卻是調過來的。也就是﹐最後一行最先顯示﹐最先一行最後顯示。就醬子。
关机:
在linux下一些常用的关机/重启命令有shutdown、halt、reboot、及init,它们都可以达到重启系统的目的,但每个命令的内部工作过程是不同的。 1.shutdownshutdown命令安全地将系统关机。 有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失﹐使系统处于不稳定的状态﹐甚至在有的系统中会损坏硬件设备。
而在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结﹐即新的用户不能再登录。直接关机或者延迟一定的时间才关机都是可能的﹐还可能重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕决定的。这让像vi之类的程序有时间储存目前正在编辑的文档﹐而像处理邮件〔mail〕和新闻〔news〕的程序则可以正常地离开等等。
shutdown执行它的工作是送信号〔signal〕给init程序﹐要求它改变runlevel。Runlevel 0被用来停机〔halt〕﹐runlevel 6是用来重新激活〔reboot〕系统﹐而runlevel 1则是被用来让系统进入管理工作可以进行的状态﹔这是预设的﹐假定没有-h也没有-r参数给shutdown。要想了解在停机〔halt〕或者重新开机〔reboot〕过程中做了哪些动作﹐你可以在这个文件/etc/inittab里看到这些runlevels相关的资料。
shutdown 参数说明:
[-t] 在改变到其它runlevel之前﹐告诉init多久以后关机。
[-r] 重启计算器。
[-k] 并不真正关机﹐只是送警告信号给每位登录者〔login〕。
[-h] 关机后关闭电源〔halt〕。
[-n] 不用init﹐而是自己来关机。不鼓励使用这个选项﹐而且该选项所产生的后果往往不总是你所预期得到的。
[-c] cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数﹐但是可以输入一个用来解释的讯息﹐而这信息将会送到每位使用者。
[-f] 在重启计算器〔reboot〕时忽略fsck。
[-F] 在重启计算器〔reboot〕时强迫fsck。
[-time] 设定关机〔shutdown〕前的时间。
2.halt----最简单的关机命令
其实halt就是调用shutdown -h。halt执行时﹐杀死应用进程﹐执行sync系统调用﹐文件系统写操作完成后就会停止内核。
参数说明:
[-n] 防止sync系统调用﹐它用在用fsck修补根分区之后﹐以阻止内核用老版本的超级块〔superblock〕覆盖修补过的超级块。
[-w] 并不是真正的重启或关机﹐只是写wtmp〔/var/log/wtmp〕纪录。
[-d] 不写wtmp纪录〔已包含在选项[-n]中〕。
[-f] 没有调用shutdown而强制关机或重启。
[-i] 关机〔或重启〕前﹐关掉所有的网络接口。
[-p] 该选项为缺省选项。就是关机时调用poweroff。
3.reboot
reboot的工作过程差不多跟halt一样﹐不过它是引发主机重启﹐而halt是关机。它的参数与halt相差不多。
4.init
init是所有进程的祖先﹐它的进程号始终为1﹐所以发送TERM信号给init会终止所有的用户进程﹑守护进程等。shutdown 就是使用这种机制。init定义了8个运行级别(runlevel), init 0为关机﹐init 1为重启。关于init可以长篇大论﹐这里就不再叙述。另外还有 telinit命令可以改变init的运行级别﹐比如﹐telinit -iS可使系统进入单用户模式﹐并且得不到使用shutdown时的信息和等待时间。