posts - 167,  comments - 30,  trackbacks - 0

下载
附录常用shell命令
本附录中列举了一些有用的s h e l l命令。这里并没有完全列出每个命令的各种选项,不过
对于理解该命令是足够了。
这些命令的其他一些例子散布于本书的各个部分。
basename
格式:
basename path
b a s e n a m e命令能够从路径中分离出文件名。通常用于s h e l l脚本中,请看下面的例子:
如果上面的语句是脚本m y s c r i p t中的一部分,那么它的输出应为:
myscript: give me a file
其中,$ 0是一个包含当前脚本全路径的特殊变量。
cat
格式:
cat options files
选项:
- v:显示控制字符。
c a t是最常用的文本文件显示命令。
$ cat myfile
上面的命令用于显示m y f i l e文件。
$ cat myfile myfile2 >>hold_file
上面的命令把两个文件( m y f i l e和m y f i l e 2 )合并到h o l d f i l e中。
在脚本中c a t命令还可以用于读入文件。
compress
格式:
compress options files
选项:
- v:显示压缩结果。
c o m p r e s s命令可以用来压缩文件。压缩后的文件名具有‘ . Z’后缀。还可以使用该命令解
压文件。
cp
格式:
cp options file1 file2
选项:
- i:在覆盖文件之前提示用户,由用户确认。
- p:保留权限模式和更改时间。
- r:拷贝相应的目录及其子目录。
要将文件m y f i l e拷贝到m y f i l e 1 . b a k,使用:
$ cp myfile1 myfile1.bak
要将文件g e t . p r d从/ u s r / l o c a l / s y b i n目录拷贝到/ u s r / l o c a l / b i n目录,使用:
要将/ l o g s目录下的所有文件及子目录拷贝到/ h o l d / l o g s目录中,使用:
$ cp -r /logs /hold/logs
diff
格式:
diff options file1 file2
选项:
- c:按照标准格式输出(见下面的例子)。
- I:忽略大小写。
我们使用c o m m命令中的例子,d i ff命令将显示两个文件中不一致的行。
d i ff命令显示出两个文件中的第2行和第3行,它们的第3列不一致。
dircmp
格式:
附录常用s h e l l命令351
下载
dircmp options directory1 directory2
选项:
- s:不显示相同的文件。
d i r c m p命令与d i ff命令十分相似—它比较并显示两个目录中的不同。
dirname
格式:
dirname pathname
该目录正好和b a s e n a m e相反,它返回路径部分:
du
格式:
du options directory
选项:
- a:显示每个文件的大小,不仅是整个目录所占用的空间。
- s:只显示总计。
d u显示的磁盘空间占用是以5 1 2字节的块来表示的。它主要用于显示目录所占用的空间。
在本例中, / v a r目录所占用的空间为1 4 9 2 9块(每块5 1 2字节)。
file
格式:
file filename
该命令用来确定文件的类型。
fuser
格式:
fuser options file
选项:
- k:杀死所有访问该文件或文件系统的进程。
352 附录常用s h e l l命令
下载
- u:显示访问该文件或文件系统的所有进程。
f u s e r命令可以显示访问某个文件或文件系统的所有进程。在有些系统上- u和- m选项可以
互换。还可以在i f语句中使用f u s e r命令。
要列出设备/ d e v / h d a 5上的所有活动进程,使用:
要杀死设备/ d e v / h d a 5上的所有进程,使用:
$ fuser -k /dev/hda5
要查看d o c p a r t文件是否被打开,有哪些进程在使用,可用:
有些系统上的f u s e r命令能够在列表中显示用户登录I D。如果你的系统不具有这样的功能,
可以按照f u s e r命令输出中末尾含有‘ e’的数字在ps -ef或ps xa命令的输出中用g r e p命令查找
相应的用户登录I D。
head
格式:
head -number files
h e a d命令可以显示相应文件的前1 0行。如果希望指定显示的行数,可以使用- n u m b e r选项。
例如:
$ head -1 myfile
只显示文件的第一行,而
$ head -30 logfile |more
则显示l o g f i l e文件的前3 0行。
logname
格式:
l o g n a m e
该命令可以显示当前所使用的登录用户名:
mkdir
格式:
mkdir options directory
选项:
附录常用s h e l l命令353
下载
- m:在创建目录时按照该选项的值设置访问权限。
上述命令创建了一个名为H O L D A R E A的目录。
more
格式:
more options files
该命令和p a g e及p g命令的功能相似,都能够分屏显示文件内容。
选项:
- c:不滚屏,而是通过覆盖来换页。
- d:在分页处显示提示。
- n:每屏显示n行。
$ more /etc/passwd
上面的命令显示p a s s w d文件
$ cat logfile |more
上面的命令显示l o g f i l e文件。
nl
格式:
nl options file
选项:
- I:行号每次增加n;缺省为1。
- p:在新的一页不重新计数。
n l命令可用于在文件中列行号,在打印源代码或列日志文件时很有用。
$ nl myscript
上面的命令将列出m y s c r i p t文件的行号。
$ nl myscript >hold_file
则将上面命令的输出重定向到h o l d f i l e文件中。
$ nl myscript | lpr
将上面命令的结果重定向到打印机。
printf
格式:
printf format arguments
该命令有点类似于a w k命令的p r i n t f函数,它将格式化文本送至标准输出。
其中,格式符f o r m a t包含三种类型的项,这里我们只讨论格式符:
%[- +]m.nx
354 附录常用s h e l l命令
下载
其中横杠-为从行首算起的起始位置。一般说来m表示域的宽度而n表示域的最大宽度。
‘%’后面可跟下列格式字符:
s:字符串。
c:字符。
d:数字。
x:1 6进制数。
o:1 0进制数。
p r i n t f命令本身并不会产生换行符,必须使用转义字符来实现这样的功能。下面是最常用
的转义字符:
\ a:响铃。
\ b:退格。
\ r:回车。
\ f:换页。
\ n:换行。
\ t:跳格。
$ printf "Howzat!\n"
H o w z a t !
上面的命令输出了一个字符串,使用\ n来换行。
上面的命令把1 6进制值转换为A S C I I字符+。
上面的命令从左起第1 0个字符的位置开始显示字符串。
pwd
格式:
p w d
显示当前的工作目录,可以用:
在上面的脚本中,使用了命令置换来获得当前目录。
rm
格式:
rm options files
选项:
附录常用s h e l l命令355
下载
- i:在删除文件之前给出提示(安全模式)。
- r:删除目录。
r m命令能够删除文件或目录。
上面的第二条命令能够删除/ v a r / s p o o l / t m p目录下的所有文件及子目录。
rmdir
格式:
rmdir options directory
选项:
- p:如果相应的目录为空目录,则删除该目录。
$ rmdir /var/spool/tmp/lp_HP
上面的命令将删除/ v a r / s p o o l / t m p目录下的l p H P目录。
script
格式:
script option file
- a:将输出附加在文件末尾。
可以使用s c r i p t命令记录当前会话。只要在命令行键入该命令即可。该命令在你退出当前
会话时结束。它可以将你的输入记录下来并附加到一个文件末尾。
$ script mylogin
将会启动s c r i p t命令并将所有会话内容记录在m y l o g i n文件中。
shutdown
格式:
s h u t d o w n
该命令将关闭系统。很多系统供应商都有自己特定的命令变体。
$ shutdown now
上面的命令将会立即关机。
$ shutdown -g60 -I6 -y
上面的命令将会在6 0秒之后关机,然后重新启动系统。
sleep
格式:
sleep number
该命令使系统等待相应的秒数。例如:
356 附录常用s h e l l命令
下载
$ sleep 10
意味着系统在1 0秒钟之内不进行任何操作。
strings
格式:
strings filename
该命令可以看二进制文件中所包含的文本。
touch
格式:
touch options filename
选项:
-t MMDDhhmm 创建一个具有相应月、日、时分时间戳的文件。
下面的命令能够以当前时间创建文件或更新已有文件的时间戳。
上面的命令以当前时间创建了一个名为m y f i l e的文件。
上面的命令以时间戳6月1 0日上午9 : 3 0创建了一个名为m y f i l e 2的空文件。
tty
格式:
t t y
可以使用t t y来报告所连接的设备或终端。
可以使用tty -s命令来确定脚本的标准输入。返回码为:
0:终端。
1:非终端。
uname
格式:
uname options
选项:
- a:显示所有信息。
- s:系统名。
- v:只显示操作系统版本或其发布日期。
附录常用s h e l l命令357
下载
要显示当前操作系统名及其他相关信息,可以用:
uncompress
格式:
uncompress files
可以使用该命令来恢复压缩文件。
$ uncompress myfile
上面的命令解压缩先前压缩的m y f i l e文件。注意,在解压缩时不必给出. Z后缀。
wait
格式:
wait process ID
该命令可以用来等待进程号为process ID的进程或所有的后台进程结束后,再执行当前脚
本。
下面的命令等待进程号为1 2 9 9的进程结束后再执行当前脚本:
$ wait 1299
下面的命令等待所有的后台进程结束后再执行当前脚本:
$ wait
wc
格式:
wc options file。s
选项:
- c:显示字符数。
- l:显示行数。
- w:显示单词数。
该命令能够统计文件中的字符数、单词数和行数。
在上面第一个例子中, w h o命令的输出通过管道传递给w c命令,该命令显示出如下的几
列:
行数、单词数、字符数
在上面的第二个例子中, w c命令只显示文件中所包含的行数。
358 附录常用s h e l l命令
下载
上面的脚本显示出变量VA R中所包含的字符串的长度。
whereis
格式:
whereis command_name
w h e r e i s命令能够给出系统命令的二进制文件及其在线手册的路径。
注意,在下面的例子中, w h e r e i s命令没有显示出相应命令的二进制文件路径,因为它们
是内建的s h e l l脚本,但是该命令给出了其在线手册的路径。
who
格式:
who options
选项:
- a:显示所有的结果。
- r:显示当前的运行级别(在L I N U X系统中应当使用r u n l e v e l命令)。
- s:列出用户名及时间域。
whoami 显示执行该命令的用户名。这不是w h o命令的一个选项,可以单独应用。
w h o命令可以显示当前有哪些用户登录到系统上。要显示当前登录的用户,可以用:
要显示自己的用户名,可以用:
附录常用s h e l l命令359
下载
posted on 2011-05-17 10:11 David1228 阅读(303) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航:
 

<2011年5月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

常用链接

留言簿(4)

随笔分类

随笔档案

文章档案

新闻分类

新闻档案

相册

收藏夹

Java

Linux知识相关

Spring相关

云计算/Linux/虚拟化技术/

友情博客

多线程并发编程

开源技术

持久层技术相关

搜索

  •  

积分与排名

  • 积分 - 354600
  • 排名 - 155

最新评论

阅读排行榜

评论排行榜