‘壹’ 说说常用的UNIX命令
下文列出了常用的unix命令。
more less:
less的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less允许使用者往回卷动以浏览已经看过的部份,同时因
为less并未在一开始就读入整个档案,因此在遇上大型档案的开启时,会比一般的文书编辑器(如 vi)来的快速。
unix种类[图]
>> linux ‖ BSD ‖ Solaris ‖ SCO ‖ HP-UX ‖ AIX ‖ AS400 ‖ Tru64 ‖ IRIX ‖ MacOsX
UNIX命令
一、UNIX命令格式
1、UNIX命令提示符
在命令行下,操作系统会显示一提示符,提示用户在此提示符后可以输入一行命令。不同的Shell有不同的缺省提示符:
B Shell和K Shell的缺省提示符为"$";
C Shell的缺省提示符为"%";
但当以root用户登录时,系统提示符统一缺省为"#"。
用户可以更改自己的缺省Shell和提示符。
2、基本命令格式
在Shell提示符下,就可以输入UNIX命令。UNIX命令的基本格式如下:
command 参数1 参数2 ... 参数n
UNIX命令由一个命令(command)和零到多个参数构成,命令和参数之间,以及参数与参数之间用空格隔开。UNIX的命令格式和DOS的命令格式相似,但UNIX的命令区分大小写,且命令和参数之间必须隔开。如:对DOS来说是以下四条命令是相同的:
cd\tmp
cd \tmp
CD \tmp
cd \Tmp
对UNIX操作系统来说,改变目录的命令也是cd命令,以下是正确的UNIX cd命令:
cd /tmp
cd /Tmp
但tmp和Tmp是两个不同的目录。以下两条命令:
cd/tmp
CD /tmp
已经不是cd命令了。
3、在一行中运行多个命令
可以在一行中输入多个命令,命令间用“;”分开,如:
mkdir tmp ; cp file1 tmp/file2 ; ls -l tmp
UNIX会顺序执行以上三条命令。
4、在后台运行程序
要让程序在后台执行,只需在命令行的最后加上“&”符号。
[例1] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件。
执行命令和立即显示的内容如下:
$ find . -name abc -print&
10722
$
...
10722表示进程号(PID)。当find命令在后台执行完后,会显示结果。
当在后台运行命令时,最好将其输出重定向输出到一个文件中去,以便以后检查。
[例2] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件并将结果存到myfind文件中。
执行命令如下:
$ find . -name abc -print>;myfind&
在运行后台程序的同时可以继续输入命令。
5、nohup命令
当终端退出后,由该终端启动的后台程序自动退出。要想终端退出后程序不停止运行,则要用nohup命令启动后台程序。如对于例2的命令加入nohup后变为:
$ nohup find . -name abc -print>;myfind&
二、特殊按键
在UNIX命令操作中有一些特殊键,列表如下:
Ctrl + d 结束键盘输入或退出当前shell
Del 中断键,停止当前动作回到shell
Ctrl+s 暂停屏幕输出
Ctrl+q 继续屏幕输出
Ctrl+u kill键,删除光标所在行的所有字符
Esc 结束当前的操作状态(如vi)
三、UNIX常用简单命令
下表列出了几个简单的UNIX命令:
解释 UNIX命令 命令举例
查看帮助信息 man mandate
查看日期 date date
显示日历 cal cal1998
显示大写大字 bannerbanner “ABCD”
计算器 bc bc
修改口令 passwdpasswd
查看谁在使用系统 whowho
查看我是谁 who am iwho am i
显示用户信息 fingerfinger 用户名
清除屏幕 clearclear
1、man命令 - 查看帮助信息
举例:
查看man的使用方法: man
查看finger命令的帮助信息: man finger
2、date命令 - 显示、修改日期和时间
显示时间的命令如下:
date
显示如下:
Mon Aug 17 13:43:14 NST 1998
表示NST标准时间,1998年8月17日13:43:14,星期一。
3、cal命令 - 显示日历
举例:
显示1998年全年日历: cal 1998
显示1998年8月日历: cal 8 1998
4、banner命令 - 显示大写大字
举例:在屏幕上用大字显示“HUAWEI”,命令如下
banner "HUAWEI"
5、bc命令 - 简单计算器
bc命令可以进行加、减、乘、除、求模、乘方运算,运算符分别为“+”“-”“*”“/”“%”“^”。bc使用举例如下
bc
以后输入算式即可,如:
1234 * 3 + 2^4
按回车显示结果,以后等待输入其它算式。按<Ctrl>;+d键退出bc。
6、passwd命令 - 修改口令
要修改自己的口令,只需运行:
passwd
以后系统会提示输入原来口令,并输入新口令。
7、who命令 - 查看正在使用UNIX的用户
用法如下:
who
系统会显示正在使用UNIX的用户名、终端号和登录时间。要查看使用者自己的信息,运行:
who am i
8、finger命令 - 显示用户信息
finger命令比who命令显示的信息量大,功能强。基本使用方法如下:
显示登录信息: finger
显示smith用户详细信息: finger smith
9、clear命令 - 清除屏幕
clear
四、UNIX用户间简单通讯命令
UNIX提供许多方式让用户相互通信,它允许你以文本的方式发送及接收信息。你可以传递信息给其他用户、所有用户、或自己。信息来源可以是文本文件或直接由键盘输入的内容。
(一)write 命令
可使用write 实用程序向已登录的另一个用户发送一条报文,当对方也使用write 命令时,双方之间就建立了通信。
当用户使用write 命令时,就在对方用户终端上显示提示信息。write 命令的格式如下:
write destination-user [terminal]
其中,destination-user是你想与之通信的用户注册名,通常使用who 命令查看其注册名。如果对方在多台终端上登录,可通过用terminal 来控制write 的报文送向指定的终端。为了建立与其他用户的双向通话,用户和对方每次必须执行write 命令,且必须指定注册名。一般在使用UNIX 进行通话时,通信双方有一些约定:用“o” 表示结束一条报文,“oo” 表示结束这次通信,用ctrl-d 退出write 命令。
[例1] UNIX上两用户alex 和jenny 通过write命令通信。
在alex的所在终端上(<CR>;表示回车):
$ write alex <CR>;
Hi Alex, are you there? o<CR>;
Message from Alex (tty11)[Sat Jan 5 15]….
Yes Jenny, I’m here. o<CR>;
……
Thank you ,Alex, bye! oo<CR>;
Ctrl-d
$
该例说明了使用write 命令实现Alex 和Jenny 的通信过程。首先Jenny 使用前两行向Alex发送了一条报文,接下来的两行是Alex 发送的报文Jenny 收到了,省略号表示他们的通信继续。最后,Jenny 用thank you,Alex,bye!oo 告诉Alex没有话要说了,并在下一行开始键入ctrl-d 来退出write 并回到shell。
(二)使用talk双方对话
talk 命令是一个虚拟通信命令,它允许登录双方通过键盘实时对话,其格式如下:
talk user-name [terminal]〈CR〉
注意,使用talk 进行双方对话时,双方使用的机器体系结构必须相同。当对方给出响应的talk命令后,双方终端上都显示
[connect established]
时,双方可双工通信了。双方可以以任意的速度从键盘输入,talk 把你的输入一行一行的显示在你和对方的屏幕上。用<Delete>;退出talk 。
(三)使用mesg 拒绝和允许接收报文
mesg 命令允许或拒绝接收由其它终端发来的write 和talk通讯信息。mesg命令在本地终端运行,其使用格式如下:
mesg [y] [n]〈CR〉
其中,y 表示允许接收,n 表示拒绝接收。如既不给出y 也不给出n ,则报告现在的许可状态。例:
[例1] 显示状态:
$mesg <CR>;
则命令的执行结果为:
is y
或 is n
[例2] 拒绝接收由其它终端发来的write和talk通讯信息:
$mesg n
$mesg
is n
(四)wall 广播式消息传递
所有登录用户都可收到该消息。仅超级用户使用该命令。wall命令有以下几种格式:
# wall
# wall filename
# wall “send a messageto all the people。”
2.4 注销(退出UNIX系统)
在每次使用完后,一定要进行注销,以防他人通过你的帐号进入系统,并保证系统的完整性。注销过程如下:在UNIX提示符下,运行:
$ exit
或
$ logout
或直接按键:
Ctrl+d。
由于UNIX操作系统的不同,注销的命令也可能不同。
--------------------------------------------------------------------------------
3.5 UNIX文件存取权限
一、文件的存取权限
UNIX文件的存取有三种权限:
权限 普通文件的存取权限目录的存取权限
R 具有读取文件的权利能读取文件名称
W 具有写入文件的权利能建立和删除文件,可以改变文件名
X 具有执行文件的权利能使用该目录下的文件(如cd命令)搜索文件等
二、能够存取文件的用户类型
有三种类型的用户可以存取文件:
用户类型 说明
owner 文件的属主(拥有者)
group 用户组内成员
other 其他用户(非owner和非group)
每种类型的用户都有三种文件存取权限:r、w、x。
三、文件存取权限的显示
可以通过”ls -l”命令显示,如:
$ ls -l file1
显示如下:
-rwxr-xr-- 2 wjm newservice 321 Oct 1709:33 file1
上行中:
第2-4字符”rwx”表示此文件属主wjm对文件file1的权利为”可读、可写、可执行”;
第5-7字符”r-x” 表示此用户组newservice内的用户对文件file1的权利为:
”可读、不可写、可执行”;
第8-10字符”r--” 表示其他用户对文件file1的权利为”可读、不可写、不可执行”
四、文件存取权限的修改
用chmod命令修改文件的存取权限,chmod命令的格式如下:
格式1:chmod symbolic_mode file…
格式2:chmod absolute_mode file…
(一)格式1:符号模式(symbolic_mode), 符号模式的命令格式如下:
chmod [who] op permision file…
who项表示用户类型,它的内容为以下一项或多项:
U 文件属主(user --- owner)
G 用户组(group)
O 其他人(other)
A 所有人(all)
op项表示动作:
+ 表示要加上permission指定的权利
- 表示要取消permission指定的权利
permission项为存取权限,它的内容为以下一项或多项:
r 表示可读
w 表示可写
x 表示可执行
举例:
chmod u+w test report 属主对test和report文件“可写”
chmod u-x abc.c 属主对abc.c文件不可执行
chmod u+rwx myfile1 属主对myfile1“可读、可写、可执行”
chmod ugo+rwx myfile2 任何人都对myfile1“可读、可写、可执行”
(二)格式2:绝对模式(absolute_mode), 符号模式的命令格式如下:
chmod xyz file…
x、y、z分别是0-7的数字,分别表示属主、用户组、其他人对该文件的存取权限。x、y、z的取值公式均为:
a*4 + b*2 +c
其中,
a=1分别表示可读,a=0表示不可读;
b=1分别表示可写,b=0表示不可写;
c=1分别表示可执行,c=0表示不可执行;
举例:
chmod 751 ncp 属主对ncp拥有“可读、可写、可执行”的全部权利;组内成员对ncp只有“可读、可执行”的权利;其他用户对ncp只有“可执行”的权利。
五、改变文件属主及文件所在组
改变文件属主的格式如下:
chown 属主名 文件名
必须对文件具有write权利才可改变文件的属主。
改变文件所在组的格式如下:
chgrp 组名 文件名
必须是文件的属主或supervisor才能改变文件组别的归属。
举例:
chown wjm test1 将文件test1的属主改为wjm
chgrp newservice test1 将文件test1的用户组改为newservice
3.6 UNIX重定向与管道
UNIX重定向 将文件的标准输出重新定向输出到文件,或将数据文件作为另一程序的标准输入内容。重定向符号如下:
< 重定向输入
>; 重定向输出
>;>; 重定向输出并追加到尾部
例如:
ls -l >; file1 将ls -l命令显示的内容存到file1中,
ls >;>; file1 将ls 命令显示的内容附加存到file1的尾部
grep abc < file1 将file1的内容作为grep abc命令的输入
其中,">;"和">;>;"为输出重定向符,">;"将输出内容存到重定向文件中,若文件存在,则先删除原有内容;">;>;"将输出内容存到重定向文件的尾部。
UNIX管道 将一文件的输出作为另一文件的输入。管道符号如下:
| 将左边命令的输出,作为右边命令的输入
例如:
ls|more 将ls的输出作为more命令的输入
ps -ef|grep smith ps -ef的输出作为grep smith命令的输入
3.7 UNIX文件系统常用命令
UNIX命令 UNIX命令举例 类似DOS命令
显示当前目录 pwd pwdcd
改变目录 cd cd/usr cd c:\usr
进入家目录 cd cd
创建目录 mkdirmkdir abc md abc
删除空目录 rmdirrmdir abc rd abc
删除目录及其内容 rm -rrm -r abc deltree abc
显示目录内容 ls lsabcls -l abc(文件长列表)ls -aabc(所有类型文件)ls -d *(不进子目录) dir abc
显示文本文件内容 catcat file1.c type file1.c
一次一屏显示文本文件内容more more file1.c
拷贝文件 cp cpfile1 file2 file1 file2
移动(重命名)文件 mv mv call.test call.listmove call.tst call.lstren call.test bbb
删除文件 rm rmcall.list delcall.lst
一、pwd命令
pwd命令用来显示当前目录路径,命令如下:
pwd
二、cd命令
cd命令用于改变当前的目录,如:
命令举例 说明
cd /usr/smith 改变到/usr/smith目录
cd ../wjm 改变到父目录下的wjm子目录
cd exam1 改变到当前目录下的exam1子目录
cd 改变到家目录
不带参数的cd命令表示进入家目录,这点与DOS有本质区别。
三、rm命令
rm命令可以删除文件及目录,举例如下:
命令举例 说明
rm file2 删除当前目录下的文件file2
rm file* 删除当前目录下以file开头的文件
rm -r /usr/wjm/exam2 删除目录/usr/wjm/exam2及其内容
四、ls命令
ls命令可以显示目录内容,命令格式如下:
ls -选项 文件名
其中的常用选项说明如下:
-l 长列表显示目录内容
-a 显示所有类型文件,包括隐含文件
-d 如果显示内容包含目录名,则只显示目录名字不显示目录内容
命令举例如下:
命令举例 说明
ls 显示当前目录内容
ls file* 显示除当前目录下以file开头的文件
ls -l /usr/wjm/exam2 长列表显示目录/usr/wjm/exam2内容
ls -adl 显示当前目录内容(同时带-l、-d、-a参数)
[注] ”ls -l”命令显示格式如下:
drwxrwxr-x 2 smith group 48 Jan 05 1998 john
-rwxr-xr-- 1 wjm newservice 321 Oct 17 09:33 file2
上面每行中:
第一列:
第1个字符表示文件的类型(d表示目录,-表示普通文件);
第2-4字符表示文件属主对此文件的访问权限(如:“rwx”和“rwx”);
第5-7字符表示用户组对此文件的访问权限(如:“rwx”和“r-x”);
第8-10字符表示其他用户对此文件的访问权限(如:“r-x”和“r--”);
其中,访问权限用三个字符表示,顺序是“rwx”,“r”表示可读、“w”表示
可写、“x”表示可执行。若某项禁止访问则为“-”,如:“r-x”表示可读、
不可写、可执行;
第二列:此文件的链接数(如:2和1);
第三列:此文件的属主名(如:smith和wjm);
第四列:用户组名(如:group和newservice);
第五列:文件所占字节数(如:48和321);
第六至八列:最后修改的日期和时间(如:“Jan 05 1998”和“Oct 17 09:33”);
第九列:文件名(如:john和file2)。
五、mkdir、rmdir、cat、more、cp、mv命令
这些命令和DOS的相应命令功能和用法基本一致,它们和DOS命令的对应关系如下:
UNIX命令 DOS命令
mkdir mkdir或md
rmdir rmdir或rd
cat type
more more
cp
mv move或ren
本文来自CSDN博客:http://blog.csdn.net/chinayuan/archive/2008/10/14/3072562.aspx
‘贰’ linux,unix常用基本命令
1.常用指令
ls 显示文件或目录
-l 列出文件详细信息l(list)
-a 列出当前目录下所有文件及目录,包括隐藏的a(all)
mkdir 创建目录
-p 创建目录,若无父目录,则创建p(parent)
cd 切换目录
touch 创建空文件
echo 创建带有内容的文件。
cat 查看文件内容
cp 拷贝
mv 移动或重命名
rm 删除文件
-r 递归删除,可删除子目录及文件
-f 强制删除
find 在文件系统中搜索某文件
wc 统计文本中行数、字数、字符数
grep 在文本文件中查找某个字符串
rmdir 删除空目录
tree 树形结构显示目录,需要安装tree包
pwd 显示当前目录
ln 创建链接文件
more、less 分页显示文本文件内容
head、tail 显示文件头、尾内容
ctrl+alt+F1 命令行全屏模式
2.系统管理命令
stat 显示指定文件的详细信息,比ls更详细
who 显示在线登陆用户
whoami 显示当前操作用户
hostname 显示主机名
uname 显示系统信息
top 动态显示当前耗费资源最多进程信息
ps 显示瞬间进程状态 ps -aux
查看目录大小 -h /home带有单位显示目录信息
df 查看磁盘大小 df -h 带有单位显示磁盘信息
ifconfig 查看网络情况
ping 测试网络连通
netstat 显示网络状态信息
man 命令不会用了,找男人 如:man ls
clear 清屏
alias 对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit
kill 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。
3.打包压缩相关命令
tar: 打包压缩
-c 归档文件
-x 压缩文件
-z gzip压缩文件
-j bzip2压缩文件
-v 显示压缩或解压缩过程 v(view)
-f 使用档名
例:
tar -cvf /home/abc.tar /home/abc 只打包,不压缩
tar -zcvf /home/abc.tar.gz /home/abc 打包,并用gzip压缩
tar -jcvf /home/abc.tar.bz2 /home/abc 打包,并用bzip2压缩
当然,如果想解压缩,就直接替换上面的命令 tar -cvf / tar -zcvf / tar -jcvf 中的“c” 换成“x” 就可以了。
3.关机/重启机器
shutdown
-r 关机重启
-h 关机不重启
now 立刻关机
halt 关机
reboot 重启
4.Linux管道
将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。
例:grep -r "close" /home/* | more 在home目录下所有文件中查找,包括close的文件,并分页输出。
5.Linux软件包管理
dpkg(Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。
比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。
sudo dpkg -i tree_1.5.3-1_i386.deb 安装软件
sudo dpkg -r tree 卸载软件
注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;
APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。
依然以tree为例
sudo apt-get install tree 安装tree
sudo apt-get remove tree 卸载tree
sudo apt-get update 更新软件
sudo apt-get upgrade
6.将.rpm文件转为.deb文件
.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。
sudo alien abc.rpm
7.vim使用
vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。
命令模式下:
:q 退出
:q! 强制退出
:wq 保存并退出
:set number 显示行号
:set nonumber 隐藏行号
/apache 在文档中查找apache 按n跳到下一个,shift+n上一个
yyp 复制光标所在行,并粘贴
h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)
8.用户及用户组管理
/etc/passwd 存储用户账号
/etc/group 存储组账号
/etc/shadow 存储用户账号的密码
/etc/gshadow 存储用户组账号的密码
useradd 用户名
userdel 用户名
adser 用户名
groupadd 组名
groupdel 组名
passwd root 给root设置密码
/etc/profile 系统环境变量
bash_profile 用户环境变量
.bashrc 用户环境变量
su user 切换用户,加载配置文件.bashrc
su - user 切换用户,加载配置文件/etc/profile ,加载bash_profile
更改文件的用户及用户组
sudo chown [-R] owner[:group] {File|Directory}
例如:还以jdk-7u21-linux-i586.tar.gz为例。属于用户hadoop,组hadoop
要想切换此文件所属的用户及组。可以使用命令。
sudo chown root:rootjdk-7u21-linux-i586.tar.gz
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
UNIX操作系统(尤尼斯),是一个强大的多用户、多任务操作系统,支持多种处理器架构,按照操作系统的分类,属于分时操作系统,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的贝尔实验室开发。目前它的商标权由国际开放标准组织所拥有,只有符合单一UNIX规范的UNIX系统才能使用UNIX这个名称,否则只能称为类UNIX(UNIX-like)。
‘叁’ 怎么使用linux命令重启服务器
1、查看环境变量是否正常
2、换角度考虑、查证通过查询结果初步判断环境变量是正常的,然后通过另外一个角度去考虑,是不是Oracle程序本身安装有问题,因为昨天系统才安装过ASM和Oracle数据库,测试都是正常的,应该讲没有啥问题才对,但是突然间想起在服务器重启的时候,启动界面提示要加载文件系统,而且时间很长。
3、查看文件系统是否有问题通过在启动时提示的信息,就是查看文件系统是否有问题,想起之前硬盘挂载在不同的路下。
4、通过上面命令查询结果,发现问题所在。因为sdb1我调整挂载在/oracle路径下的,原来的sdc1是挂载/oradata路径,由于sdc1mount在/oradata路径下没有设置在开机时启动,而且sdb1是默认的启动,从而导致在启动的sdc1挂载失败,影响Oracle相关程序启动,所以命令失败无法找到,去查看fstab内容。
5、查询UUID块设备,通过命令查看后,并没有发现oracle路径下的设备,再通过查询UUID块设备下有哪些设备。
6、查询块设备下详细的信息再通过lsblk -f 命令查询块设备下,通过上述几个命令可以判断出是由于sdc1分区没有自动挂载导致Oracle程序没有办法启动
7、修改/etc/fstab配置文件,让sdc1设备在开机自动启动,最好通过UUID来挂载。